设为首页 收藏本站
开启辅助访问 切换到宽版

  找回密码
  立即注册

QQ登录

只需一步,快速开始

快捷导航
  • 论坛
  • 问答区
  • 单片机教程
  • 单片机DIY
  • 电子DIY
  • 帮助

热门: 51单片机 | 24小时必答区 | 单片机教程 | 单片机DIY制作 | STM32 | Cortex M3 | 模数电子 | 电子DIY制作 | 音响/功放 | 拆机乐园 | Arduino | 嵌入式OS | 程序设计

搜索
» 论坛 嵌入式/单片机论坛 51单片机 LCD12864无字库液晶测试程序和仿真都有(纵向取模。字节 ...
返回列表 发新帖
查看: 4001|回复: 2
打印 上一主题 下一主题
收起左侧

LCD12864无字库液晶测试程序和仿真都有(纵向取模。字节倒序)

[复制链接]
跳转到指定楼层
楼主
ID:137190 发表于 2016-9-8 23:38 | 只看该作者 | 只看大图 回帖奖励 | 倒序浏览 | 阅读模式
  1. /***********************************************************************
  2.       
  3.            内容:无字库12864测试程序(纵向取模。字节倒序)

  4. ***********************************************************************/
  5. #include <reg52.h>

  6. #define uint unsigned int
  7. #define uchar unsigned char

  8. #define Disp_On 0x3f         //显示命令
  9. #define Disp_Off 0x3e        //关闭命令
  10. #define Col_Add 0x40        //起始列地址
  11. #define Page_Add 0xb8        //起始页地址
  12. #define Start_Line 0xc0        //起始行地址

  13. #define Lcd_Bus P0                 //MCU P0<---> LCM

  14. sbit RS  = P2^0;                 //RS=1时为数据操作,RS=0时为命令操作
  15. sbit RW  = P2^1;                 //RW=1时为读选通,RW=0时为写选通
  16. sbit E          = P2^2;                 //E下降沿时,数据写入驱动器,E为高电平时,数据被读出
  17. sbit Mcs = P2^3;                 //Master chip E,右半屏-CS2
  18. sbit Scs = P2^4;                 //Slave chip E,左半屏-CS1
  19. sbit RST = P2^5;                 //液晶模块复位控制管脚


  20. char code ce[] =  {
  21.                                                 /*-- 文字: 测 --*/
  22.                                                 /*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/
  23.                                                 0x08, 0x31, 0x86, 0x60, 0x00, 0xFE, 0x02, 0xF2, 0x02, 0xFE, 0x00, 0xF8, 0x00, 0x00, 0xFF, 0x00,
  24.                                                 0x04, 0xFC, 0x03, 0x00, 0x80, 0x47, 0x30, 0x0F, 0x10, 0x67, 0x00, 0x07, 0x40, 0x80, 0x7F, 0x00
  25.                               };
  26. char code shi[] = {
  27.                                                 /*-- 文字: 试 --*/
  28.                                                 /*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/
  29.                                                 0x40, 0x42, 0xDC, 0x08, 0x00, 0x90, 0x90, 0x90, 0x90, 0x90, 0xFF, 0x10, 0x12, 0x1C, 0x10, 0x00,
  30.                                                 0x00, 0x00, 0x7F, 0x20, 0x10, 0x20, 0x20, 0x1F, 0x10, 0x10, 0x01, 0x06, 0x18, 0x20, 0x78, 0x00
  31.                                   };
  32. char code kai[] = {
  33.                                                 /*-- 文字: 开 --*/
  34.                                                 /*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/
  35.                                                 0x40, 0x42, 0x42, 0x42, 0x42, 0xFE, 0x42, 0x42, 0x42, 0x42, 0xFE, 0x42, 0x42, 0x42, 0x42, 0x00,
  36.                                                 0x00, 0x40, 0x20, 0x10, 0x0C, 0x03, 0x00, 0x00, 0x00, 0x00, 0x7F, 0x00, 0x00, 0x00, 0x00, 0x00
  37.                                   };
  38. char code shi3[]= {
  39.                                                 /*-- 文字: 始 --*/
  40.                                                 /*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/
  41.                                                 0x10, 0x90, 0x70, 0x1F, 0x12, 0xF0, 0x00, 0x20, 0x70, 0x28, 0x27, 0x22, 0x28, 0x70, 0x20, 0x00,
  42.                                                 0x40, 0x21, 0x12, 0x0C, 0x06, 0x09, 0x30, 0x00, 0x7F, 0x21, 0x21, 0x21, 0x21, 0x7F, 0x00, 0x00
  43.                                   };

  44. char code wan[] = {
  45.                                                 /*-- 文字: 完 --*/
  46.                                                 /*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/
  47.                                                 0x00, 0x90, 0x8C, 0xA4, 0xA4, 0xA4, 0xA5, 0xA6, 0xA4, 0xA4, 0xA4, 0xA4, 0x94, 0x8C, 0x04, 0x00,
  48.                                                 0x00, 0x80, 0x40, 0x20, 0x18, 0x07, 0x00, 0x00, 0x00, 0x3F, 0x40, 0x40, 0x40, 0x70, 0x00, 0x00
  49.                                   };
  50. char code bi[] =  {
  51.                                                 /*-- 文字: 毕 --*/
  52.                                                 /*-- 宋体12; 此字体下对应的点阵为:宽x高=16x16 --*/
  53.                                                 0x00, 0x00, 0xFF, 0x88, 0x48, 0x28, 0x08, 0x80, 0x7F, 0x88, 0x88, 0x88, 0x84, 0x84, 0xE0, 0x00,
  54.                                                 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0xFF, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x00
  55.                                   };

  56. uchar code FirstPage[] =
  57.                                         {
  58.                                         /*--  调入了一幅图像:C:\Documents and Settings\Administrator\桌面\阜康电子.bmp  --*/
  59.                                         /*--  宽度x高度=128x64  --*/
  60.                                         0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  61.                                         0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  62.                                         0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  63.                                         0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  64.                                         0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  65.                                         0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  66.                                         0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  67.                                         0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  68.                                         0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  69.                                         0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  70.                                         0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  71.                                         0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  72.                                         0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  73.                                         0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  74.                                         0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  75.                                         0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  76.                                         0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x60,0xE0,0xE0,0x70,0x38,0x3D,0x3F,
  77.                                         0x37,0x33,0x30,0xF8,0xF8,0x70,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  78.                                         0x00,0x00,0x00,0x00,0x00,0x00,0xF0,0xF0,0xE0,0x60,0x20,0x30,0x30,0x31,0xF3,0xF7,
  79.                                         0xFF,0x3E,0x38,0x18,0x98,0x18,0x18,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  80.                                         0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x06,0xFE,0xFE,0xFC,0x00,
  81.                                         0x00,0x00,0x00,0x80,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  82.                                         0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x30,0x30,0x30,0x30,0x38,0x18,0x18,
  83.                                         0x18,0xD8,0xFC,0xFC,0x7C,0x3C,0x18,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  84.                                         0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0xFF,0xB3,0xB3,0x93,0x93,
  85.                                         0x9B,0x9B,0xD9,0xD9,0xFD,0xF8,0x38,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  86.                                         0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0xFF,0x3F,0x20,0x22,0x36,0x36,0x36,0xB6,0xFF,
  87.                                         0xFF,0x9B,0x9B,0xFB,0xFF,0xBF,0x1F,0x18,0x18,0x18,0x18,0x18,0x00,0x00,0x00,0x00,
  88.                                         0x00,0x00,0x00,0x00,0x06,0x7E,0xFE,0xFE,0x06,0x46,0xC6,0xC6,0xFF,0xFF,0x6F,0x63,
  89.                                         0x63,0x23,0x03,0xC3,0xFF,0xFF,0x3F,0x06,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  90.                                         0x00,0x00,0xC0,0xC0,0xC0,0xC0,0xC0,0xE0,0xE0,0x60,0x60,0x60,0x60,0x70,0x76,0xFE,
  91.                                         0xFF,0xF1,0x30,0x30,0x38,0x38,0x38,0x38,0x18,0x18,0x38,0x38,0x38,0x10,0x00,0x00,
  92.                                         0x00,0x00,0x30,0x70,0x70,0x30,0x30,0x30,0x30,0x30,0x37,0x33,0x19,0x19,0x1F,0xFF,
  93.                                         0xFF,0x19,0x18,0x1C,0x1C,0x1C,0x1C,0x1C,0x1C,0x1C,0x1C,0x1C,0x1C,0x1C,0x00,0x00,
  94.                                         0x00,0x00,0x80,0xC0,0xF8,0x7F,0x1F,0x03,0x8C,0x9D,0xFB,0xC3,0x63,0x21,0x01,0xFF,
  95.                                         0xFF,0x19,0x39,0x79,0xED,0xCF,0xC7,0x86,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  96.                                         0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0x3F,0x18,0x18,0x18,0x18,0xFF,0xFF,0x8C,0x0C,
  97.                                         0x0C,0x0C,0x0C,0x1F,0x0F,0x03,0x00,0x00,0x00,0xC0,0xF8,0xF0,0x00,0x00,0x00,0x00,
  98.                                         0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  99.                                         0xFF,0xFF,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  100.                                         0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,
  101.                                         0x7F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  102.                                         0x0C,0x06,0x03,0x01,0x00,0x01,0x03,0x07,0x07,0x03,0x01,0x02,0x06,0x0C,0x3E,0x3F,
  103.                                         0x0F,0x00,0x00,0x00,0x00,0x01,0x03,0x07,0x07,0x07,0x07,0x07,0x06,0x06,0x02,0x00,
  104.                                         0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x03,0x07,0x0E,
  105.                                         0x0E,0x0E,0x0E,0x0E,0x0E,0x0E,0x0E,0x0E,0x0F,0x0F,0x07,0x07,0x02,0x00,0x00,0x00,
  106.                                         0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x06,0x0E,0x3E,0x3F,
  107.                                         0x1F,0x0F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  108.                                         0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  109.                                         0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  110.                                         0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  111.                                         0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  112.                                         0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  113.                                         0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  114.                                         0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  115.                                         0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  116.                                         0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  117.                                         0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  118.                                         0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  119.                                         0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  120.                                         0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  121.                                         0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  122.                                         0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  123.                                         0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  124.                                         };

  125. /*---------------------延时子程序----------------------------*/
  126. void delay(unsigned int t)
  127. {
  128.         unsigned int i, j;
  129.         for (i = 0;i < t;i++)
  130.                 for (j = 0;j < 10;j++)
  131.                 {
  132.                         ;
  133.                 }
  134. }

  135. /*--------------------读忙碌子程序---------------------------*/
  136. void Read_busy()
  137. {
  138.         P0 = 0x00;
  139.         RS = 0;
  140.         RW = 1;
  141.         E = 1;
  142.         while(P0&0x80);
  143.         E = 0;
  144. }
  145. /*--------------------写命令到LCD----------------------------*/
  146. void write_com(unsigned char cmdcode)
  147. {
  148.         Read_busy();                        //每次读写都要判断是否忙碌
  149.         RS = 0;
  150.         RW = 0;

  151.         Lcd_Bus = cmdcode;
  152.         delay(0);
  153.         E = 1;
  154.         delay(0);
  155.         E = 0;
  156. }

  157. /*-------------------写数据到LCD----------------------------*/

  158. void write_data(unsigned char Dispdata)
  159. {
  160.         Read_busy();                        //每次读写都要判断是否忙碌
  161.         RS = 1;
  162.         RW = 0;

  163.         Lcd_Bus = Dispdata;
  164.         delay(0);
  165.         E = 1;
  166.         delay(0);
  167.         E = 0;
  168. }



  169. /*------------------显示边框-------------------------------*/
  170. void frame()
  171. {
  172.         unsigned char i;
  173.         Mcs = 0;                                                                                                 //两个屏幕
  174.         Scs = 0;
  175. /*********************************************************************/        
  176.         write_com(Page_Add + 0);                                                                  //上面横线
  177.         write_com(Col_Add + 0);
  178.         for (i = 0;i < 64;i++) write_data(0x01);
  179. /*********************************************************************/
  180.         write_com(Page_Add + 7);                                                                 //下面横线
  181.         write_com(Col_Add + 0);
  182.         for (i = 0;i < 64;i++) write_data(0x80);
  183. /*********************************************************************/
  184.         for (i = 0;i < 8;i++)
  185.         {
  186.                 Mcs = 0;                                                                                           //右半屏
  187.                 Scs = 1;
  188.                 write_com(Page_Add + i);                                                         //共8页
  189.                 write_com(Col_Add + 63);                                                        //最后一列
  190.                 write_data(0xff);                                                                        //ff表示每页的8行全亮
  191.          
  192.                 Mcs = 1;                                                                                          //左半屏与右半屏类似
  193.                 Scs = 0;
  194.                 write_com(Page_Add + i);
  195.                 write_com(Col_Add + 0);
  196.                 write_data(0xff);
  197.         }
  198. }


  199. /*---------------------------清除内存--------------------------------*/
  200. void Clr_Scr()
  201. {

  202.         unsigned char j, k;
  203.         for (k=0;k<8;k++)
  204.         {
  205.                 Mcs = 1;Scs = 0;delay(10);                                                  //左半屏清屏
  206.                 write_com(Page_Add + k);
  207.                 write_com(Col_Add + 0);
  208.                 for (j = 0;j < 64;j++) write_data(0x00);

  209.                 Mcs = 0;Scs = 1; delay(10);                                                  //右半屏清屏
  210.                 write_com(Page_Add + k);
  211.                 write_com(Col_Add + 0);
  212.                 for (j = 64;j < 128;j++) write_data(0x00);
  213.         }         
  214. }


  215. /*------------------显示12864图片---------------------------*/
  216. void Disp_Img(unsigned char code *img)
  217. {
  218.         unsigned char j, k;
  219.         for (k = 0;k < 8;k++)                                                                          //共8页
  220.         {
  221.                 Mcs = 1;Scs = 0;delay(10);                                                        //左半屏数据
  222.                 write_com(Page_Add + k);
  223.                 write_com(Col_Add + 0);
  224.                 for (j = 0;j < 64;j++) write_data(img[k*128 + j]);        //每半块屏共64列
  225.          
  226.                 Mcs = 0;Scs = 1; delay(10);                                                        //右半屏数据
  227.                 write_com(Page_Add + k);
  228.                 write_com(Col_Add + 0);
  229.                 for (j = 64;j < 128;j++) write_data(img[k*128 + j]);
  230.         }
  231. }

  232. /*-------------------------显示横---------------------------*/
  233. void Disp_H_Line()
  234. {
  235.         unsigned char i, j;
  236.         Mcs = 0;
  237.         Scs = 0;
  238.         write_com(Disp_On);                                                                                //显示开

  239.         write_com(Page_Add);                                                                        //页地址
  240.         write_com(Start_Line);                                                                        //开始行
  241.         write_com(Col_Add);                                                                                //列地址

  242.         for (j = 0;j < 8;j++)                                                                        //共8页,所以循环8次
  243.         {
  244.                 write_com(Page_Add + j);
  245.                 write_com(Col_Add + 0);                                                                //第一列开始
  246.                 write_com(Start_Line+0);                                                        //第一行开始
  247.                 for (i = 0;i < 64;i++)write_data(0x55);                                 //每半屏幕共64列
  248.         }
  249. }


  250. /*------------------------显示列-----------------------------*/
  251. void Disp_V_Line()
  252. {
  253.         unsigned char i, j;
  254.         write_com(Disp_On);                                                                                   //显示开
  255.         write_com(Page_Add);                                                                        //页地址
  256.         write_com(Start_Line);                                                                        //列地址
  257.         write_com(Col_Add);

  258.         for (j = 0;j < 8;j++)                                                                        //共8页
  259.         {
  260.                 write_com(Page_Add + j);
  261.                 write_com(Col_Add + 0);
  262.                 write_com(Start_Line + 0);
  263.                 for (i = 0;i < 32;i++)                                                                //64列,写两次,一列空白,一列实线,所以循环32次
  264.                 {
  265.                         write_data(0x00);                                                                 //一列空
  266.                         write_data(0xff);                                                                //一列实
  267.                 }
  268.         }
  269. }


  270. /*---------------------指定位置显示汉字16*16-----------------------*/
  271. void hz_disp16(unsigned char pag, unsigned char col, unsigned char code *hzk)
  272. {
  273.         unsigned char j = 0, i = 0;
  274.         for (j = 0;j < 2;j++)                                                                          //一个汉字需要占用2页,1页8行,共16行
  275.         {
  276.                 write_com(Page_Add + pag + j);
  277.                 write_com(Col_Add + col);
  278.                 for (i = 0;i < 16;i++)                                                                 //16列,所以会循环16次
  279.                         write_data(hzk[16*j + i]);
  280.         }
  281. }


  282. /*--------------------------初始化LCD屏-----------------------------*/
  283. void init_lcd()
  284. {
  285.         Read_busy();                                                                                        //每次读写都要判断是否忙碌
  286.         RST = 0;
  287.         delay(100);
  288.         RST = 1;
  289.         delay(100);

  290.         Mcs = 0;
  291.         Scs = 0;

  292.         delay(100);
  293.         write_com(Disp_Off);                                                                         //关显示
  294.         write_com(Page_Add + 0);
  295.         write_com(Start_Line + 0);
  296.         write_com(Col_Add + 0);
  297.         write_com(Disp_On);                                                                                //开显示
  298. }


  299. /*------------------------------信息显示----------------------------*/
  300. void Msg(int flg)
  301. {
  302.         Clr_Scr();                                                                                                //清屏
  303.         frame();                                                                                                //显示边框
  304.         if (flg == 0)
  305.         {                                                                                                                 //显示“测试开始”
  306.                 Mcs = 1;Scs = 0;
  307.                 hz_disp16(3, 32, ce);
  308.                 delay(2000);
  309.                 hz_disp16(3, 48, shi);
  310.                 delay(2000);
  311.                 Mcs = 0;Scs = 1;
  312.                 hz_disp16(3, 0, kai);
  313.                 delay(2000);
  314.                 hz_disp16(3, 16, shi3);
  315.                 delay(2000);
  316.         }
  317.         else if (flg == 1)
  318.         {                                                                                                                 //显示“测试完毕”
  319.                 Mcs = 1;Scs = 0;
  320.                 hz_disp16(3, 32, ce);
  321.                 hz_disp16(3, 48, shi);
  322.                 Mcs = 0;Scs = 1;
  323.                 hz_disp16(3, 0, wan);
  324.                 hz_disp16(3, 16, bi);
  325.         }
  326. }


  327. /*-----------------------------主程序---------------------------------*/


  328. main()
  329. {
  330.         while (1)
  331.         {
  332.                 init_lcd();
  333.                 Disp_Img(FirstPage);
  334.                 delay(25000);
  335.                 Msg(0);
  336.                 delay(10000);
  337.                 Disp_H_Line();
  338.                 delay(10000);
  339.                 Disp_V_Line();
  340.                 delay(10000);
  341.                 Msg(1);
  342.                 delay(10000);
  343.         }
  344. }
复制代码




程序

LCD12864测试程序.rar

76.97 KB, 下载次数: 45, 下载积分: 黑币 -5

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1 分享淘帖 顶 踩

相关帖子

  • • 这个程序的波特率能帮我改到38400吗?
  • • 基于单片机的病房呼叫系统设计资料 仿真 电路图程序都有 很全
  • • NRF24L01参考程序 原理图与PCB工程文件
  • • MATLAB程序 Harris角点检测算法
  • • 帮看一眼这个程序错在哪 为什么输出频率与显示的不一致
  • • 有闹钟功能的单片机数字钟制作 带原理图,PCB工程,代码
  • • 请教问题:12864串行显示程序用3线与用4线连接的问题
  • • 单片机多功能计数器程序 12864液晶显示
  • • 新手再次求做一个51单片机的倒计时器程序
  • • 求程序 LCD显示的温度控制器的设计与制 各位大神谁会做这个题目?具体程序
回复

使用道具 举报

沙发
ID:279161 发表于 2018-1-26 16:20 | 只看该作者
我用了您的代码,但左半屏没有清零是??请教下怎么是怎么回事呢?
回复

使用道具 举报

板凳
ID:393738 发表于 2018-9-6 20:08 | 只看该作者
为什么我取模之后的结果和你的不同啊,疑惑
回复

使用道具 举报

返回列表 发新帖
高级模式
B Color Image Link Quote Code Smilies
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

Powered by 单片机教程网

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

4617作文网给羊宝宝起名字姓袁的可以起什么名字生孩子需要提前起名字吗?以平姓起名科技公司起名有哪些字起名3个字以上公司名字起人什么名字根据周易起名企业起名网免费取名2020瓷都免费算命网岐字起名字什么含义精灵宝可梦单机破解下载姓名周易打分周易免费公司名称测试打分测试属鼠的起名宜用的字心理咨询师解梦祝福姓起名大全生辰八字算命的准吗周易典故起名老是梦到老公出轨怎么回事周公解梦周易 乾卦平姓怎样起名字周易算运势起名大全宾馆塑料制品起名画室起名 出自诗经猪宝宝怎么起名字周易运预测周公解梦梦见老宅周文王的易经淀粉肠小王子日销售额涨超10倍罗斯否认插足凯特王妃婚姻让美丽中国“从细节出发”清明节放假3天调休1天男子给前妻转账 现任妻子起诉要回网友建议重庆地铁不准乘客携带菜筐月嫂回应掌掴婴儿是在赶虫子重庆警方辟谣“男子杀人焚尸”国产伟哥去年销售近13亿新的一天从800个哈欠开始男孩疑遭霸凌 家长讨说法被踢出群高中生被打伤下体休学 邯郸通报男子持台球杆殴打2名女店员被抓19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警两大学生合买彩票中奖一人不认账德国打算提及普京时仅用姓名山西省委原副书记商黎光被逮捕武汉大学樱花即将进入盛花期今日春分张家界的山上“长”满了韩国人?特朗普谈“凯特王妃P图照”王树国3次鞠躬告别西交大师生白宫:哈马斯三号人物被杀代拍被何赛飞拿着魔杖追着打315晚会后胖东来又人满为患了房客欠租失踪 房东直发愁倪萍分享减重40斤方法“重生之我在北大当嫡校长”槽头肉企业被曝光前生意红火手机成瘾是影响睡眠质量重要因素考生莫言也上北大硕士复试名单了妈妈回应孩子在校撞护栏坠楼网友洛杉矶偶遇贾玲呼北高速交通事故已致14人死亡西双版纳热带植物园回应蜉蝣大爆发男孩8年未见母亲被告知被遗忘张立群任西安交通大学校长恒大被罚41.75亿到底怎么缴沈阳一轿车冲入人行道致3死2伤奥运男篮美国塞尔维亚同组周杰伦一审败诉网易国标起草人:淀粉肠是低配版火腿肠外国人感慨凌晨的中国很安全男子被流浪猫绊倒 投喂者赔24万杨倩无缘巴黎奥运男子被猫抓伤后确诊“猫抓病”春分“立蛋”成功率更高?记者:伊万改变了国足氛围奥巴马现身唐宁街 黑色着装引猜测

4617作文网 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化