3 * I2C/Parallel LCD ACM1602 Handler, variant of ST7066U.
4 * Copyright (C) 2013-06-10 K.Ohta <whatisthis.sowhat ai gmail.com>
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License as published by
9 * the Free Software Foundation; either version 2,
10 * or (at your option) any later version.
11 * This library / program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14 * See the GNU General Public License for more details.
16 * You should have received a copy of the GNU General Public License
17 * along with this library; see the file COPYING. If not, write to the
18 * Free Software Foundation, 51 Franklin Street, Fifth Floor, Boston,
21 * As a special exception, if you link this(includeed from sdcc) library
22 * with other files, some of which are compiled with SDCC,
23 * to produce an executable, this library does not by itself cause
24 * the resulting executable to be covered by the GNU General Public License.
25 * This exception does not however invalidate any other reasons why
26 * the executable file might be covered by the GNU General Public License.
44 // Notes: Master clock = 8MHz(0.125uS)
46 #define _ACM1602_TC_WAIT() delay10tcy(40)
48 #define _ACM1602_SHORT_WAIT() delay100tcy(40)
50 #define _ACM1602_LONG_WAIT() delay10ktcy(40)
52 #define _ACM1602_LONG_LONG_WAIT() delay10ktcy(40)
54 #define _ACM1602_I2C_WAIT() delay1ktcy(44)
58 extern void acm1602_cls(unsigned char addr);
59 extern void acm1602_putchar(unsigned char addr, unsigned char c);
60 extern void acm1602_locate_16x2(unsigned char addr, char x, char y);
61 extern void acm1602_locate_8x2(unsigned char addr, char x, char y);
62 extern void acm1602_home(unsigned char addr);
63 extern void acm1602_printf(unsigned char addr, const char *fmt, ...);
64 extern void acm1602_cursordir(unsigned char addr, unsigned char right);
65 extern void acm1602_init(unsigned char addr, unsigned char cls);
66 extern unsigned char acm1602_getchar(unsigned char addr);
69 * ST7032 extension functions
71 extern void st7032_extcmd(unsigned char addr, unsigned char mode,
72 unsigned char cmd, unsigned char busyf);
73 extern void st7032_setcontrast(unsigned char addr, unsigned char value,
80 #endif /* LCD_ACM1602_H */