OSDN Git Service

[UART][v2.0] Enable to shell.Work temporally.
[openi2cradio/OpenI2CRadio.git] / lcd_acm1602.c
index 1484272..d33af14 100644 (file)
@@ -109,7 +109,11 @@ unsigned char acm1602_getchar(unsigned char addr)
 #else // Parallel
 static void _ACM1602_TC_WAIT(void)
 {
-    __delay_us(5);
+#ifdef __SDCC
+   delay10tcy(4);
+#else
+   __delay_us(5);
+#endif
 }
 
 static unsigned char lcd_busychk(unsigned char addr)
@@ -424,11 +428,11 @@ void acm1602_setdataramaddress(unsigned char addr, unsigned char pos)
 }
 
 
-void acm1602_locate_16x2(unsigned char addr, char x, char y)
+void acm1602_locate_16x2(unsigned char addr, unsigned char x, unsigned char y)
 {
     unsigned char ramaddr;
-    if((x < 0) || (x >= 16)) return;
-    if((y < 0) || (y > 1)) return;
+    if(x > 16) return;
+    if(y > 1) return;
     ramaddr = (y == 0)? x  : (x  | 0x40);
     acm1602_setdataramaddress(addr, ramaddr);
 }
@@ -436,11 +440,11 @@ void acm1602_locate_16x2(unsigned char addr, char x, char y)
 /*
  * For using
  */
-void acm1602_locate_8x2(unsigned char addr, char x, char y)
+void acm1602_locate_8x2(unsigned char addr, unsigned char x, unsigned char y)
 {
     unsigned char ramaddr;
-    if((x < 0) || (x >= 8)) return;
-    if((y < 0) || (y > 1)) return;
+    if(x > 8) return;
+    if(y > 1) return;
     ramaddr = (y == 0)? x : x | 0x40;
     acm1602_setdataramaddress(addr, ramaddr);
 }