买了个Lcd1602,一直没时间弄,今天抽空学习了一波。
所用的芯片是15的芯片,和51不同的地方就是速度是51单片机的8-12倍;
蓝桥杯开发板上电需要初始化,否则蜂鸣器会一直响。
如果你是51单片机,则忽略allinit();上电初始化函数即可;
这里只是简单的将数据显示出来,如需改进请参考数据手册;
本人菜一枚,希望大佬不喜勿喷!
附送程序,和数据手册。
单片机源程序如下:
- #include<LCD1602.h>
- uchar tab1[]="Do you love me ?";
- uchar tab2[]="sorry,i love LCD";
-
- void main()
- {
- uchar i;
- allinit(); //板子初始化
- LCD_init(); //LCD初始化
- write_com(0x80); //选择显示位置,第一行第一个
- for(i=0;i<16;i++)
- {
- write_data(tab1[i]);
- Delay1ms(2);
- }
-
- write_com(0x80+0x40); //选择显示位置,第二行第一个
- for(i=0;i<16;i++)
- {
- write_data(tab2[i]);
- Delay1ms(2);
- }
- allinit(); //板子初始化
- }
- void allinit() //上电将板子进行初始化
- {
- P2=(P2&0x1f)|0xa0;P0=0x00;P2=P2&0x1f; //关闭继电器,蜂鸣器
- P2=(P2&0x1f)|0x80;P0=0xff;P2=P2&0x1f; //关闭led
- P2=(P2&0x1f)|0xc0;P0=0xff;P2=P2&0x1f; //位选全选
- P2=(P2&0x1f)|0xe0;P0=0xff;P2=P2&0x1f; //段选全部关闭
- }
复制代码
所有资料51hei提供下载:
LCD1602蓝桥杯test.rar
(277.07 KB, 下载次数: 63)
|