Autor Tema: calculadora con pic 18f4550  (Leído 5507 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado andres9415

  • PIC10
  • *
  • Mensajes: 5
calculadora con pic 18f4550
« en: 06 de Abril de 2013, 23:19:09 »
pues como dice mi titulo es hacer una calculadora con el pic 18f4550 yo se hacer las operaciones matemáticas y todo eso, el problemas es que necesito poder que al accionar un botón este de el resultado de la suma luego vuelva a presionar y aparesca la multiplicación y vuelva accionar y muetre la resta cabe decir que todo esto se hace con un mismo boton
les voy a dejar mi programacion


#include "C:\Users\User\Desktop\calculadora\main.h"



#include <LCD.c>

void main()
{
int a=0;
int b=0;
int c=0;
int opcion;

set_tris_b(0x00);
set_tris_a(0x01);
set_tris_c(0x00);
set_tris_d(0x00);


lcd_init();
while(TRUE)
{
if (input(PIN_A0)==0&&input(PIN_A1)==0)
{


a=a+1;
lcd_gotoxy(2,3);
printf (lcd_putc,"%d",a);
delay_ms(300);
lcd_putc('\f');



}

if (input(PIN_A0)==0&&input(PIN_A1)==1)
{


b=b+1;
lcd_gotoxy(5,3);
printf (lcd_putc,"%d",b);
delay_ms(300);
lcd_putc('\f');

}
opcion=1+opcion;
switch (input(PIN_A2)==0)
{

case 1 :

if (input(PIN_A2)>=20)
{
output_high(PIN_C1);
delay_ms(100);
output_low(PIN_C1);
delay_ms(100);
}
c=a+b;
lcd_gotoxy(1,1);
printf (lcd_putc,"%d",c);
delay_ms(100);
lcd_putc('\f');
opcion=0;



case 2:



c=a*b;
lcd_gotoxy(1,1);
printf (lcd_putc,"%d",c);
delay_ms(90);
lcd_putc('\f');
opcion=1;


case 3:
opcion=3;



c=a-b;
lcd_gotoxy(1,1);
printf (lcd_putc,"%d",c);
delay_ms(200);
lcd_putc('\f');
opcion=2;



}
}
}



basicamente la calculadora hace ya todo esto pero cuando presiono el boton me aparecen los tres resultado a la vez obviamente se que a los case les falta el break pero si lo coloco solo me muestra el resultado de la operacion
utilizo pic c por si acaso
les agradesco infinitamente y si el tema no va aquí perdon es que soy nuevo

Desconectado andres9415

  • PIC10
  • *
  • Mensajes: 5
Re: calculadora con pic 18f4550
« Respuesta #1 en: 07 de Abril de 2013, 00:37:42 »
bueno jajajjaa me autorespondo y ya pude hacer  eso ahora si alguien puede algua idea de como si por ejemplo salo 5 este prenda un led rojo GRACIAS

Desconectado hector915

  • PIC12
  • **
  • Mensajes: 78
    • Blog Personal.
Re: calculadora con pic 18f4550
« Respuesta #2 en: 29 de Abril de 2013, 00:16:14 »
no entiendo muy bien tu ultima pregunta pero segun te entiendo es si sale el numero 5 o alguna operacion da 5 enceder un led no lo podrias hacer con un if y mandar un 1 logico al pin correspondiente donde esta el led .  :lol:
« Última modificación: 12 de Mayo de 2013, 21:52:38 por hector915 »
if you can imagine it, you can embed it


 

anything