unsigned char cold;
+// LCD Routines
+void _PUTCHAR(unsigned char c)
+{
+ acm1602_putchar(LCD_I2CADDR , c);
+}
+
+void _LOCATE(unsigned char x, unsigned char y)
+{
+ acm1602_locate_16x2(LCD_I2CADDR , x, y);
+}
+
+void _LOCATE_0_0(void)
+{
+ acm1602_locate_16x2(LCD_I2CADDR , 0, 0);
+}
+
+void _LOCATE_0_1(void)
+{
+ acm1602_locate_16x2(LCD_I2CADDR , 0, 1);
+}
+
+void _CLS(void)
+{
+ acm1602_cls(LCD_I2CADDR);
+}
+void _HOME(void)
+{
+ acm1602_home(LCD_I2CADDR);
+}
+
+void _CURSOR_ON(void)
+{
+ acm1602_dispcursor(LCD_I2CADDR, 0xff);
+}
+
+
+void _CURSOR_OFF(void)
+{
+ acm1602_dispcursor(LCD_I2CADDR, 0x00);
+}
+
+void _CURSOR_LEFT(void)
+{
+ acm1602_cursordir(LCD_I2CADDR , 0x00);
+}
+
+void _CURSOR_RIGHT(void)
+{
+ acm1602_cursordir(LCD_I2CADDR , 0xff);
+}
+
+
void keyin_init(void)
{
char i;
keyin_fifo[keyin_nowp] = b;
keyin_nowp++;
keyin_counter++;
- if((keyin_nowp > 31) || (keyin_nowp < 0)) keyin_nowp = 0;
+ if(keyin_nowp > 31) keyin_nowp = 0;
}
/*
c = keyin_fifo[keyin_readp];
keyin_readp++;
keyin_counter--;
- if((keyin_readp > 31) || (keyin_readp < 0)) keyin_readp = 0;
+ if(keyin_readp > 31) keyin_readp = 0;
return c;
}
-void printstr(char *s)
+void printstr(const char *s)
{
int p = 0;
- _CURSOR_RIGHT();
+// _CURSOR_RIGHT();
if(s == NULL) return;
do {
if(s[p] == '\0') break;
_PUTCHAR(s[p]);
p++;
- } while(p < 255);
+ } while(p < 32);
}
unsigned char i;
unsigned char bcd[11];
-
if(digit == 0) return;
if(digit > 10) digit = 10;
uint2bcd(data, bcd);
unsigned char pollkey_numeric(unsigned char init)
{
unsigned char c;
+ _PUTCHAR('0' + init);
c = pollkey_single();
if(c == charcode_0) {
return 0;
}
}
-unsigned char pollkey_single_timeout(unsigned int limit, unsigned char repeat)
+unsigned char pollkey_single_timeout(unsigned char limit, unsigned char repeat)
{
unsigned char c;
- unsigned int ticks = 0;
+ unsigned char ticks = 0;
unsigned char penalty = 0;
unsigned char count = 0;
/*
* Set Deadzone.
*/
- if(limit == 0) {
+ if(limit != 0) {
while(ticks <= limit) {
idle_time_ms(5 + 18);
ticks++;
* In application handler:
* c = pop_keyinfifo();
* if(c != 0) do(c);
- */
\ No newline at end of file
+ */