标题: LCD+PIC单片机12864串行显示程序 [打印本页]

作者: qwe5747965    时间: 2015-11-30 08:34
标题: LCD+PIC单片机12864串行显示程序
程序代码:
  1. #include<pic.h>
  2. #define uchar unsigned char
  3. #define uint  unsigned int
  4. __CONFIG(HS&WDTDIS);
  5. #include "Drive_Serial.h"
  6. uchar   line1_data[] = {"顶顶电子欢迎您!"};
  7. uchar   line2_data[] = {"  www*ddmcu*com   "};
  8. uchar   line3_data[] = {"DD-900实验开发板"};
  9. uchar   line4_data[] = {"TEL: 15853209853  "};
  10. /********端口设置函数********/
  11. void port_init(void)
  12. {
  13.     TRISC = 0x00;
  14.     TRISD = 0x00;      
  15. }
  16. /********以下是闪烁三次函数********/
  17. void lcd_flash()
  18. {
  19.     Delay_ms(1000);         //控制停留时间
  20.   lcd_wcmd(0x08);           //关闭显示  
  21.   Delay_ms(500);            //延时0.5s  
  22.   lcd_wcmd(0x0c);           //开显示   
  23.   Delay_ms(500);            //延时0.5s
  24.   lcd_wcmd(0x08);           //关闭显示  
  25.   Delay_ms(500);            //延时0.5s
  26.   lcd_wcmd(0x0c);           //开显示   
  27.   Delay_ms(500);            //延时0.5s
  28.     lcd_wcmd(0x08);         //关闭显示  
  29.   Delay_ms(500);            //延时0.5s
  30.   lcd_wcmd(0x0c);           //开显示   
  31.   Delay_ms(500);            //延时0.5s
  32. }  
  33. /********以下是主函数********/
  34. void  main()
  35. {
  36.     uchar i;
  37.   port_init();
  38.   Delay_ms(100);                //上电,等待稳定  
  39.   lcd_init();                   //初始化LCD
  40.     while(1)
  41.   {
  42.         LocateXY(0,0);              //设置显示位置为第0行,0列
  43.     for(i=0;i<16;i++)
  44.     {
  45.         lcd_wdat(line1_data[i]);
  46.             Delay_ms(100);      //每个字符停留的时间为100ms
  47.         }
  48.         LocateXY(0,1);              //设置显示位置为第1行第0列
  49.         for(i=0;i<16;i++)
  50.         {
  51.             lcd_wdat(line2_data[i]);
  52.             Delay_ms(100);
  53.         }
  54.         LocateXY(0,2);              //设置显示位置为第2行第0列
  55.         for(i=0;i<16;i++)
  56.         {
  57.             lcd_wdat(line3_data[i]);
  58.             Delay_ms(100);
  59.         }
  60.     LocateXY(0,3);              //设置显示位置为第3行第0列
  61.     for(i=0;i<16;i++)
  62.     {
  63.         lcd_wdat(line4_data[i]);
  64.             Delay_ms(100);
  65.         }
  66.         Delay_ms(1000);         //停留1s
  67.         lcd_flash();                //闪烁三次
  68.         lcd_clr();                  //清屏
  69.         Delay_ms(2000);
  70.     }
  71. }

复制代码



作者: cck314    时间: 2017-6-4 21:29
来晚了 支持
作者: neilperry    时间: 2017-8-23 17:37
硬件引脚怎么连接

作者: qq3417    时间: 2018-3-13 14:27
Drive_Serial.h  
文件能分享下么?
作者: huchunhb    时间: 2018-6-29 18:15
楼主好,你发的这个程序好像是并行驱动12864的,串行驱动12864的程序比这麻烦得多。
作者: 13893203697    时间: 2018-7-10 10:42
支持大兄弟,在此领域多多磨砺。必将成材。




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