TODOPIC
Microcontroladores PIC => Lenguaje C para microcontroladores PIC => Mensaje iniciado por: jaimearmandofc en 19 de Marzo de 2011, 05:05:03
-
ayuda, estoi manejando un reloj con:
int segundo
int minuto
int hora
por cada interupcion aumento el segundo
pero al imprimir en diplay no se como hacerlo
estoi programando en mikroc PRO con la libreria LCD
Lcd_Out(1,1,texto);
ojala me puedan ayudar
-
hola! Siguiendo el título de tu pregunta, para convertir un int a char has de hacer lo siguiente:
int a=3; // creas y declaras ( si quieres) una variable entera
char c; // creas una variable char
c=(char)a; // entre parentesis, pones el tipo a converit, y luego la variable del que procede. Yo lo guardo en una nueva variable,pero lo puedes hacer directo
//a=(char)a;// si, acabo de probar si puedo o no, y no me da error de compilacion.
Ahora bien, yo acabod e hacer esto, pero estoy uasndo C18 y una librería que no me deja ver lo que yo quiero. No se si te servirá a ti. Si ves que te da una conversión a char que no te satisface, quizás tendrás el mismo problema que yo. He formulado una pregunta acerca de ello.
Espero te haya servido de ayuda..!
-
Hola jaimearmandofc y PICYO.
Les aclaro que nunca he usado el Mikroc pero encontré estos ejemplos que quizá les sean de utilidad. Usan la función ByteToStr(year,tnum);
http://www.mikroe.com/forum/viewtopic.php?p=84795
http://www.mikroe.com/forum/viewtopic.php?t=10057&highlight=rtc
Saludos.
Jukinch
-
Porque "int" si ninguno de los valores de hora, seg y minuto no pasan de 255.
-
TIPOS DE DATOS EN MIKROC (http://www.mikroe.com/eng/chapters/view/80/capitulo-2-programacion-de-los-microcontroladores/#c2v3)
-
Muchas gracias por todas sus respuestas, es verdad, para que usar "int" mejor byte, y usare los ejemplos que me dan y espero funcione, les comento de que trata mi proyecto, sera un acuario automatizado por un PIC
-control de luces (encendido apagado segun la hora)
-control de ph (a traves de una sonda de ph)
-control de temperatura (con un lm35 o un ds 1820) aun estoi definiendo eso
-control de alimento (activacion de un motor que rocea comida por un motor activado por el pic)
-control de nivel de agua (con un flotador que pulsa un boton)
-informacion a traves de un LCD.
alarma sonora en caso de valores malos (ph, temp, nivel de agua)
terminando y como vaya avanzando les mostrare mi progreso
-
Para convertir un valor entero a una cadena de caracteres se utiliza la función IntToStr por ejemplo:
int j= -4220;
char txt[7];
...
IntTostr(j, txt); // txt es" -4220" (hay un espacio en blaco)
Pero como dicen las respuestas anteriores es mejor que utilices valores tipo Byte y la función ByteToStr por ejemplo:
unsigned short t = 24;
char txt[4];
...
ByteToStr(t, txt); // txt es " 24" (hay un espacio en blanco)
-
Hola jaimearmandofc ! Pues puedes postear lo que vayas haciendo, suena muy interesante ese acuario!
-
si, de hecho ya abri un hilo sobre este proyecto
PROYECTO ACUARIO AUTONOMO (http://www.todopic.com.ar/foros/index.php?topic=34156)
por cierto ya me surgio un problema con el LM35