PCF8574模塊使實現IIC驅動LCD1602成為現實。
下圖是PCF8574模塊與1602的連接電路圖:
實物接法如下:
想要使用PCF8574模塊來實現IIC驅動LCD1602,首先非常必要弄清楚IIC的時序、PCF8574設備地址、四線控制LCD1602方法。
下面是兩個重要的h文件。通過修改這兩個h文件中的部分代碼(接線有所不同)即可移植到你的程序中去。
單片機源程序如下:
void delay1(uchar x)
{
uchar a,b;
for(a=x;a>0;a--)
for(b=200;b>0;b--);
}
void write_com(uchar com) //寫命令函數
{ uchar com1,com2;
com1=com|0x0f;
write_add(com1&0xfc);
delay1(2);
write_add(com1&0xf8);
com2=com<<4;
com2=com2|0x0f;
write_add(com2&0xfc);
delay1(2);
write_add(com2&0xf8);
}
void write_date(uchar date) //寫數據函數
{
uchar date1,date2;
date1=date|0x0f;
write_add(date1&0xfd);
delay1(2);
write_add(date1&0xf9);
date2=date<<4;
date2=date2|0x0f;
write_add(date2&0xfd);
delay1(2);
write_add(date2&0xf9);
}
void init_lcd() //初始化函數
{
write_com(0x33); //顯示模式設置
delayms(6);
write_com(0x32); //顯示模式設置
delayms(6);
write_com(0x28); //4位總線,雙行顯示,顯示5×7的點陣字符
delayms(6);
write_com(0x01); //清屏
delayms(6);
write_com(0x06); //字符進入模式:屏幕不動,字符后移
delayms(6);
write_com(0x0c); //顯示開,關光標
//write_LCD_Command(0x0f); //顯示開,開光標,光標閃爍
delayms(6);
}
//顯示字符串:第x行第y列顯示什么內容
void ShowString(unsigned char x,unsigned char y,unsigned char *str)
{
if(x == 1)
{
write_com(0x80 | y-1);
}
if(x == 2)
{
write_com(0xc0 | y-1);
}
//輸出字符串
while(*str!=' 主站蜘蛛池模板: 屏东市| 阿拉善右旗| 宿州市| 千阳县| 会理县| 界首市| 招远市| 博乐市| 舟山市| 西充县| 洪洞县| 荥阳市| 彰武县| 商城县| 长顺县| 米泉市| 镇原县| 东丽区| 新昌县| 红安县| 自贡市| 宁强县| 扎兰屯市| 洪湖市| 蒙山县| 都兰县| 高雄县| 天祝| 灵石县| 万荣县| 长武县| 四会市| 延津县| 泰和县| 定远县| 峨山| 阜新| 云南省| 安西县| 河池市| 厦门市|