找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1299|回复: 0
收起左侧

单片机+12864测试程序

[复制链接]
ID:241550 发表于 2020-2-28 23:30 | 显示全部楼层 |阅读模式
这几天在学液晶模块的用法,写了一个12864显示程序。
单片机P1口走数据,其他接口见程序注释(晶振11.0592MHz)

单片机源程序如下:
  1. #include <reg52.h>
  2. #define ui unsigned int
  3. #define uc unsigned char
  4. //数据口是P1
  5. sbit rs=P2^3;
  6. sbit rw=P2^4;
  7. sbit e =P2^5;
  8. sbit sp=P3^6;

  9. uc code table[]="Construction";          

  10. void delay(ui x)                                   //延时程序
  11. {
  12.         ui i,j;
  13.                 for(i=x;i>0;i--)
  14.                         for(j=110;j>0;j--);
  15.                         }

  16. void w_com(uc com)                                        //写命令子函数
  17. {       
  18.         rs=0;
  19.         rw=0;
  20.         e=0;
  21.         P0=com;
  22.         delay(1);
  23.         e=1;
  24.         delay(1);
  25.         e=0;
  26.         }

  27. void w_data(uc dat)                                        //写数据子函数
  28. {       
  29.         rs=1;
  30.         rw=0;
  31.         e=0;
  32.         P0=dat;
  33.         delay(1);
  34.         e=1;
  35.         delay(1);
  36.         e=0;
  37.         }

  38. void w_pos(uc x,uc y)                         //调地址子函数
  39. {
  40.         uc pos;
  41.                 if(y==0)
  42.                         y=0x80;
  43.                 else if(y==1)
  44.                         y=0x90;
  45.                 else if(y==2)
  46.                         y=0x88;
  47.                 else if(y==3)
  48.                         y=0x98;
  49.         pos=x+y;
  50.         w_com(pos);
  51.         }

  52. void init()
  53. {
  54.         w_com(0x01);
  55.         delay(1);
  56.         w_com(0x30);
  57.         delay(1);
  58.         w_com(0x0c);
  59.         delay(1);
  60.         }

  61. void main()
  62. {
  63.         uc num;
  64.         init();
  65.         w_pos(1,0);

  66.                 num=0;
  67.         while(table[num] != '\0')
  68.         {
  69.                 w_data(table[num]);
  70.                 num++;
  71.                 }




  72.        
  73.         while(1);
  74.         }
复制代码

所有资料51hei提供下载:
12864显示.rar (15.29 KB, 下载次数: 13)
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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