标题: LCD1602模块数据手册和程序(基于蓝桥杯开发板,原理和51单片机相同) [打印本页]

作者: 三天热度    时间: 2018-4-19 16:21
标题: LCD1602模块数据手册和程序(基于蓝桥杯开发板,原理和51单片机相同)
买了个Lcd1602,一直没时间弄,今天抽空学习了一波。
所用的芯片是15的芯片,和51不同的地方就是速度是51单片机的8-12倍;
蓝桥杯开发板上电需要初始化,否则蜂鸣器会一直响。
如果你是51单片机,则忽略allinit();上电初始化函数即可;
这里只是简单的将数据显示出来,如需改进请参考数据手册;

本人菜一枚,希望大佬不喜勿喷!
附送程序,和数据手册。



单片机源程序如下:
  1. #include<LCD1602.h>
  2.         uchar tab1[]="Do you love me ?";
  3.         uchar tab2[]="sorry,i love LCD";
  4.         

  5. void main()
  6. {
  7.         uchar i;
  8.         allinit();                        //板子初始化
  9.         LCD_init();                        //LCD初始化
  10.         write_com(0x80);        //选择显示位置,第一行第一个
  11.         for(i=0;i<16;i++)
  12.         {
  13.         write_data(tab1[i]);
  14.         Delay1ms(2);
  15.         }
  16.         
  17.         write_com(0x80+0x40);        //选择显示位置,第二行第一个
  18.         for(i=0;i<16;i++)
  19.         {
  20.         write_data(tab2[i]);
  21.         Delay1ms(2);

  22.         }
  23.         allinit();                        //板子初始化
  24. }





  25. void allinit()                        //上电将板子进行初始化
  26. {
  27.         P2=(P2&0x1f)|0xa0;P0=0x00;P2=P2&0x1f;                //关闭继电器,蜂鸣器
  28.         P2=(P2&0x1f)|0x80;P0=0xff;P2=P2&0x1f;                //关闭led
  29.         P2=(P2&0x1f)|0xc0;P0=0xff;P2=P2&0x1f;                //位选全选
  30.         P2=(P2&0x1f)|0xe0;P0=0xff;P2=P2&0x1f;                //段选全部关闭

  31. }
复制代码

所有资料51hei提供下载:
LCD1602蓝桥杯test.rar (277.07 KB, 下载次数: 63)


作者: jack丶    时间: 2019-10-26 10:04
好好学习,天天向上
作者: wudidacaiji    时间: 2021-3-29 15:31
程序是仿真成功了吗,为什么我用了hex文件没有现象
作者: wudidacaiji    时间: 2021-3-29 15:32
为什么我用你的程序下到单片机上,没有现象




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1