找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 4901|回复: 5
收起左侧

LCD+PIC单片机12864串行显示程序

[复制链接]
ID:97656 发表于 2015-11-30 08:34 | 显示全部楼层 |阅读模式
程序代码:
  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. }

复制代码


评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的积分奖励!

查看全部评分

回复

使用道具 举报

ID:207802 发表于 2017-6-4 21:29 | 显示全部楼层
来晚了 支持
回复

使用道具 举报

ID:160506 发表于 2017-8-23 17:37 | 显示全部楼层
硬件引脚怎么连接
回复

使用道具 举报

ID:291265 发表于 2018-3-13 14:27 | 显示全部楼层
Drive_Serial.h  
文件能分享下么?
回复

使用道具 举报

ID:215984 发表于 2018-6-29 18:15 | 显示全部楼层
楼主好,你发的这个程序好像是并行驱动12864的,串行驱动12864的程序比这麻烦得多。
回复

使用道具 举报

ID:368480 发表于 2018-7-10 10:42 来自手机 | 显示全部楼层
支持大兄弟,在此领域多多磨砺。必将成材。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表