TODOPIC
Microcontroladores PIC => Lenguaje C para microcontroladores PIC => Mensaje iniciado por: elpeibel en 08 de Enero de 2012, 13:59:41
-
Hola estoy modificando la libreria flex_lcd para trabajar con lcds hd66712 de 4x20, en concreto el putc:
void lcd_putc(int8 c){
switch(c){
case '\1' : lcd_gotoxy(1,1); break;
case '\2' : lcd_gotoxy(1,2); break;
case '\3' : lcd_gotoxy(1,3); break;
case '\4' : lcd_gotoxy(1,4); break;
case '\f' : lcd_send_byte(0,1); _delay_5ms(); break; //Limpia la pantalla
case '\n' : lcd_gotoxy(1,2); break; //Coloca puntero en 1ª posicion de la 2ª línea
case '\b' : lcd_send_byte(0,0x10); break; //Retrocede una posición el cursor
case '\t' : lcd_send_byte(0,0x14); break; //Avanza una posición el cursor
case '\r' : lcd_send_byte(0,0x18); break; //Retrocede una posición la pantalla visible
case '\v' : lcd_send_byte(0,0x1C); break; //Avanza una posición la pantalla visible
default : lcd_send_byte(1,c); break;
}
}
pero parece que el c18 el "caracter" '\4' no lo soporta asi como el 'v' y algunos otros más...
sabéis a que es debido??
estoy buscando en google pero el \4 lo ignora....
-
Hola, no entiendo porque usar secuencias de escape para todo. Si necesitas recibir un dato númerico solamente escribi el número
switch ( c )
{
case 0:
...
break;
case 1:
...
break
Si deseas recibir el caracter 1, entonces escribilo así:
switch ( c )
{
case '0':
...
break;
case '1':
...
break
Las secuencias de escape solo usalas para el \n, \r, etc.
Saludos !
-
Hola:
Si mal no recuerdo en las secuencias de escape si ponés un número luego de la barra significa el caracter en Ascii en notación octal y el '\4' te estaría dando otro caracter y no precisamente el 4.
y \x000 el caracter en notación hexa.
Saludos.
Jukinch
-
Hola,
Hola:
Si mal no recuerdo en las secuencias de escape si ponés un número luego de la barra significa el caracter en Ascii en notación octal y el '\4' te estaría dando otro caracter y no precisamente el 4.
Es correcto lo de la notación octal, también es posible escribir en hexa \x... y el número en hexa, el único comentario es que 4 en octal es 4 en decimal.
Saludos !
-
Tenés razón Richi777 con lo de decimal y octal pero el ´\4´ en Ascii es otro caracter. EOT end of transmission según la tabla.
saludos.
Jukinch