久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 17393|回復: 9
打印 上一主題 下一主題
收起左側

無字庫12864液晶屏滾動顯示程序

  [復制鏈接]
跳轉到指定樓層
樓主
ID:72705 發表于 2015-1-24 15:23 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
同志們,做實驗的時候一定要把端口重新設置成和你的實際硬件一樣,不要說我是騙人的,著東西可編了我3個多小時,絕對沒問題!記得P0口加上拉,或者用其他端口,如果不顯示,參照《12864及1602液晶的驅動指南》,如果還不行,聯系本人,這是個靜態圖片,大家看看,絕對真實!
  1. #include<reg52.h>
  2. #include<intrins.h>
  3. #include<absacc.h>
  4. #define Lcd_Bus P0 //MCU P0<------> LCM
  5. #define Disp_On 0x3f//開顯示
  6. #define Disp_Off 0x3e//關顯示
  7. #define Col_Add 0x40//列地址
  8. #define Page_Add 0xb8//頁地址
  9. #define Start_Line 0xc0//起始頁
  10. sbit cs1=P2^3; //Master chip enable
  11. sbit cs2=P2^4; //Slave chip enable
  12. sbit Enable=P2^2; // mode Enable single
  13. sbit Di=P2^0; //Data or Instrument Select
  14. sbit RW=P2^1; //Write or Read
  15. sbit Lcd_Rst=P2^5; //Lcm reset
  16. /*****************************
  17. 字模,此字體下對應的
  18. 點陣為:寬x高=16x16
  19. *****************************/
  20. unsigned char code Chinese_character[][32]=
  21. {

  22. {0x02,0xF2,0x12,0x12,0x12,0xFE,0x12,0x12,0x12,0xFE,0x12,0x12,0x12,0xF2,0x02,0x00 ,
  23.      0x00,0x7F,0x28,0x24,0x22,0x21,0x20,0x20,0x20,0x21,0x22,0x22,0x22,0x7F,0x00,0x00},/*"西",0*/
  24. {0x80,0x90,0x8C,0x84,0x84,0xF4,0xA5,0x86,0x84,0x84,0x84,0x84,0x94,0x8C,0x84,0x00,
  25.      0x80,0x80,0x80,0x40,0x47,0x28,0x28,0x10,0x28,0x24,0x43,0xC0,0x40,0x00,0x00,0x00},/*"安",1*/
  26. {0x00,0x42,0x62,0x5A,0xC6,0x10,0x54,0x54,0x54,0xFF,0x54,0x54,0x7C,0x10,0x10,0x00,
  27.      0x40,0x23,0x14,0x08,0x17,0x28,0x29,0x49,0x49,0x7F,0x49,0x49,0x49,0x49,0x40,0x00},/*"建",2*/
  28. {0x10,0x48,0x47,0xCC,0x54,0x44,0x14,0xE8,0x27,0x24,0x2C,0xF4,0x04,0x04,0x04,0x00,
  29.      0x10,0x30,0x10,0x0F,0x88,0x48,0x30,0x0F,0x01,0x06,0x00,0x3F,0x40,0x40,0x70,0x00},/*"筑",3*/
  30. {0x10,0x12,0x92,0x72,0xFE,0x51,0x91,0x00,0x22,0xCC,0x00,0x00,0xFF,0x00,0x00,0x00,
  31.      0x04,0x02,0x01,0x00,0xFF,0x00,0x04,0x04,0x04,0x02,0x02,0x02,0xFF,0x01,0x01,0x00},/*"科",4*/
  32. {0x08,0x08,0x88,0xFF,0x48,0x28,0x00,0xC8,0x48,0x48,0x7F,0x48,0xC8,0x48,0x08,0x00,
  33.      0x01,0x41,0x80,0x7F,0x00,0x40,0x40,0x20,0x13,0x0C,0x0C,0x12,0x21,0x60,0x20,0x00},/*"技",5*/
  34. {0x20,0x20,0x20,0x20,0x20,0x20,0xA0,0x7F,0xA0,0x20,0x20,0x20,0x20,0x20,0x20,0x00,
  35.      0x00,0x80,0x40,0x20,0x10,0x0C,0x03,0x00,0x01,0x06,0x08,0x30,0x60,0xC0,0x40,0x00},/*"大",6*/
  36. {0x40,0x30,0x10,0x12,0x5C,0x54,0x50,0x51,0x5E,0xD4,0x50,0x18,0x57,0x32,0x10,0x00,
  37.      0x00,0x02,0x02,0x02,0x02,0x02,0x42,0x82,0x7F,0x02,0x02,0x02,0x02,0x02,0x02,0x00},/*"學",4*/
  38. {0x00,0x02,0x1C,0xE8,0x00,0x40,0x60,0x58,0x47,0x22,0x20,0x28,0x30,0xE0,0x40,0x00,
  39.      0x02,0x02,0x7F,0x00,0x00,0x00,0x7F,0x21,0x21,0x21,0x21,0x21,0x7F,0x00,0x00,0x00},/*"冶",0*/
  40. {0x40,0x40,0x20,0x20,0x50,0x48,0x44,0xC3,0x44,0x48,0x50,0x50,0x20,0x60,0x20,0x00,
  41.      0x40,0x40,0x42,0x42,0x4A,0x72,0x42,0x7F,0x42,0x62,0x5A,0x42,0x42,0x40,0x40,0x00},/*"金",1*/
  42. {0x00,0x00,0x02,0x02,0x02,0x02,0x02,0xFE,0x02,0x02,0x02,0x02,0x02,0x02,0x00,0x00,
  43.      0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x3F,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x00},/*"工",2*/
  44. {0x10,0x12,0xD2,0xFE,0x91,0x11,0x80,0xBF,0xA1,0xA1,0xA1,0xA1,0xBF,0x80,0x00,0x00,
  45.      0x04,0x03,0x00,0xFF,0x00,0x41,0x44,0x44,0x44,0x7F,0x44,0x44,0x44,0x44,0x40,0x00},/*"程",3*/
  46. {0x40,0x30,0x10,0x12,0x5C,0x54,0x50,0x51,0x5E,0xD4,0x50,0x18,0x57,0x32,0x10,0x00,
  47.      0x00,0x02,0x02,0x02,0x02,0x02,0x42,0x82,0x7F,0x02,0x02,0x02,0x02,0x02,0x02,0x00},/*"學",4*/
  48. {0xFE,0x02,0x32,0x4A,0x86,0x0C,0x24,0x24,0x25,0x26,0x24,0x24,0x24,0x0C,0x04,0x00,
  49.      0xFF,0x00,0x02,0x04,0x83,0x41,0x31,0x0F,0x01,0x01,0x7F,0x81,0x81,0x81,0xF1,0x00},/*"院",5*/
  50. {0x10,0x10,0xD0,0xFE,0x50,0x90,0x00,0x10,0x10,0x10,0xD0,0xFE,0x10,0x10,0x10,0x00,
  51.      0x08,0x06,0x01,0xFF,0x00,0x01,0x10,0x08,0x04,0x43,0x80,0x7F,0x00,0x00,0x00,0x00},/*"材",0*/
  52. {0x20,0x24,0xA8,0x70,0xFF,0x68,0xA4,0x20,0x42,0x8C,0x00,0x00,0xFF,0x00,0x00,0x00,
  53.      0x08,0x06,0x01,0x00,0xFF,0x00,0x01,0x02,0x02,0x03,0x02,0x02,0xFF,0x01,0x01,0x00},/*"料",1*/
  54.    {0x00,0x08,0x08,0x08,0xFF,0x08,0x08,0xF8,0x00,0xF8,0x08,0x08,0x08,0xF8,0x00,0x00,
  55.      0x40,0x20,0x18,0x07,0x00,0x20,0x40,0x3F,0x00,0x7F,0x10,0x10,0x10,0x3F,0x00,0x00},/*"加",2*/
  56. {0x00,0x00,0x02,0x02,0x02,0x02,0x02,0xFE,0x02,0x02,0x02,0x02,0x02,0x02,0x00,0x00,
  57.      0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x3F,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x00},/*"工",4*/
  58. {0x00,0x00,0x02,0x02,0x02,0x02,0x02,0xFE,0x02,0x02,0x02,0x02,0x02,0x02,0x00,0x00,
  59.      0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x3F,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x00},/*"工",4*/
  60. {0x10,0x12,0xD2,0xFE,0x91,0x11,0x80,0xBF,0xA1,0xA1,0xA1,0xA1,0xBF,0x80,0x00,0x00,
  61.      0x04,0x03,0x00,0xFF,0x00,0x41,0x44,0x44,0x44,0x7F,0x44,0x44,0x44,0x44,0x40,0x00},/*"程",5*/
  62. };

  63. unsigned char code E[][16]=
  64. {
  65. {0xC0,0x30,0x08,0x08,0x08,0x08,0x38,0x00,0x07,0x18,0x20,0x20,0x20,0x10,0x08,0x00},/*"C",0*/
  66. {0x80,0x80,0x80,0x00,0x80,0x80,0x80,0x00,0x20,0x20,0x3F,0x21,0x20,0x00,0x01,0x00},/*"r",1*/
  67. {0x00,0x00,0x80,0x80,0x80,0x80,0x00,0x00,0x00,0x19,0x24,0x22,0x22,0x22,0x3F,0x20},/*"a",2*/
  68. {0x00,0x00,0x80,0x80,0x80,0x80,0x80,0x00,0x00,0x33,0x24,0x24,0x24,0x24,0x19,0x00},/*"s",3*/
  69. {0x80,0x80,0x80,0x00,0x00,0x80,0x80,0x80,0x80,0x81,0x8E,0x70,0x18,0x06,0x01,0x00},/*"y",4*/
  70. {0x08,0xF8,0x00,0x80,0x80,0x00,0x00,0x00,0x00,0x3F,0x11,0x20,0x20,0x11,0x0E,0x00},/*"b",5*/
  71. {0x00,0x00,0x80,0x80,0x80,0x80,0x00,0x00,0x00,0x1F,0x20,0x20,0x20,0x20,0x1F,0x00},/*"o",6*/
  72. {0x80,0x80,0x80,0x00,0x00,0x80,0x80,0x80,0x80,0x81,0x8E,0x70,0x18,0x06,0x01,0x00},/*"y",7*/
  73. {0x00,0x00,0x80,0x80,0x80,0x80,0x00,0x00,0x00,0x1F,0x22,0x22,0x22,0x22,0x13,0x00},/*"e",8*/
  74. };
  75. /***********************延時子程序***********************/
  76. void delay(unsigned int k)
  77. {
  78.    unsigned int i;
  79. unsigned int j;
  80. for(i=0;i<k;i++)
  81. for(j=0;j<20;j++);
  82. }
  83. /***********************寫命令左***********************/
  84. void write_cmd_1(unsigned char command)
  85. {
  86.       cs1=1;cs2=0;
  87.       Di=0;
  88.       RW=0;
  89.       Lcd_Bus=command;
  90.       delay(0);
  91.       Enable=1;
  92.       delay(0);
  93.       Enable=0;
  94. }
  95. /***********************寫命令右***********************/
  96. void write_cmd_2(unsigned char command)
  97. {
  98.       cs1=0;cs2=1;
  99.       Di=0;
  100.       RW=0;
  101.       Lcd_Bus=command;
  102.       delay(0);
  103.       Enable=1;
  104.       delay(0);
  105.       Enable=0;
  106. }
  107. /***********************寫數據左***********************/
  108. void write_data_1(unsigned char dis_data)
  109. {
  110. cs1=1;cs2=0;
  111. Di=1;
  112. RW=0;
  113. Lcd_Bus=dis_data;
  114. delay(0);
  115. Enable=1;
  116. delay(0);
  117. Enable=0;
  118. }
  119. /***********************寫數據右***********************/
  120. void write_data_2(unsigned char dis_data)
  121. {
  122. cs1=0;cs2=1;
  123. Di=1;
  124. RW=0;
  125. Lcd_Bus=dis_data;
  126. delay(0);
  127. Enable=1;
  128. delay(0);
  129. Enable=0;
  130. }
  131. /***********************清內存左***********************/
  132. void clear_1(void)
  133. {
  134. unsigned char j,k;
  135. cs1=1;cs2=0;
  136. write_cmd_1(Page_Add+0);
  137. write_cmd_1(Col_Add+0);

  138. for(k=0;k<8;k++){
  139. write_cmd_1(Page_Add+k);
  140. for(j=0;j<64;j++)write_data_1(0x00);
  141. }
  142. }
  143. /***********************清內存右***********************/
  144. void clear_2(void)
  145. {
  146. unsigned char j,k;
  147. cs1=0;cs2=1;
  148. write_cmd_2(Page_Add+0);
  149. write_cmd_2(Col_Add+0);

  150. for(k=0;k<8;k++){
  151. write_cmd_2(Page_Add+k);
  152. for(j=0;j<64;j++)write_data_2(0x00);
  153. }
  154. }
  155. /***********************顯示漢字16*16左************************/
  156. void Chinese_disp_1(unsigned char pag,unsigned char col,unsigned char n)
  157. {
  158. unsigned char i=0;
  159. unsigned char j=0;
  160. cs1=1;cs2=0;
  161. for(i=0;i<2;i++)
  162. {
  163.    write_cmd_1(Page_Add+pag+i);
  164.    write_cmd_1(Col_Add+col);
  165.    for(j=0;j<16;j++)
  166.     write_data_1(Chinese_character[n][16*i+j]);
  167. }
  168. }
  169. /***********************顯示漢字16*16右***********************/
  170. void Chinese_disp_2(unsigned char pag,unsigned char col,unsigned char n)
  171. {
  172. unsigned char i=0;
  173. unsigned char j=0;
  174. cs1=0;cs2=1;
  175. for(i=0;i<2;i++)
  176. {
  177.    write_cmd_2(Page_Add+pag+i);
  178.    write_cmd_2(Col_Add+col);
  179.    for(j=0;j<16;j++)
  180.     write_data_2(Chinese_character[n][16*i+j]);
  181. }
  182. }
  183. /***********************顯示英文16*8左************************/
  184. void E_disp_1(unsigned char pag,unsigned char col,unsigned char n)
  185. {
  186. unsigned char i=0;
  187. unsigned char j=0;
  188. cs1=1;cs2=0;
  189. for(i=0;i<2;i++)
  190. {
  191.    write_cmd_1(Page_Add+pag+i);
  192.    write_cmd_1(Col_Add+col);
  193.    for(j=0;j<8;j++)
  194.     write_data_1(E[n][8*i+j]);
  195. }
  196. }
  197. /***********************顯示英文16*8右***********************/
  198. void E_disp_2(unsigned char pag,unsigned char col,unsigned char n)
  199. {
  200. unsigned char i=0;
  201. unsigned char j=0;
  202. cs1=0;cs2=1;
  203. for(i=0;i<2;i++)
  204. {
  205.    write_cmd_2(Page_Add+pag+i);
  206.    write_cmd_2(Col_Add+col);
  207.    for(j=0;j<8;j++)
  208.     write_data_2(E[n][8*i+j]);
  209. }
  210. }
  211. /***********************液晶屏初始化***********************/
  212. void init_lcd()
  213. {
  214. Lcd_Rst=0;
  215. delay(100);
  216. Lcd_Rst=1;
  217. delay(100);
  218. write_cmd_1(Disp_Off);     write_cmd_2(Disp_Off);
  219. write_cmd_1(Page_Add+0);   write_cmd_2(Page_Add+0);
  220. write_cmd_1(Start_Line+0); write_cmd_2(Start_Line+0);
  221. write_cmd_1(Col_Add+0);    write_cmd_2(Col_Add+0);
  222. write_cmd_1(Disp_On);      write_cmd_2(Disp_On);
  223. }
  224. /***********************LCD顯示子程序***********************/
  225. void display(void)
  226. {   
  227. unsigned char i;
  228. for(i=Start_Line;i<0xff;i++)
  229.    {
  230.      Chinese_disp_1(0,0, 0);
  231.    Chinese_disp_1(0,16,1);
  232.    Chinese_disp_1(0,32,2);
  233. Chinese_disp_1(0,48,3);
  234.    Chinese_disp_2(0,0, 4);
  235.    Chinese_disp_2(0,16,5);
  236.    Chinese_disp_2(0,32,6);
  237.    Chinese_disp_2(0,48,7);
  238.    //西安建筑科技大學
  239. Chinese_disp_1(2,16,8);
  240.    Chinese_disp_1(2,32,9);
  241.    Chinese_disp_1(2,48,10);
  242.    Chinese_disp_2(2,0,11);
  243.    Chinese_disp_2(2,16,12);
  244.    Chinese_disp_2(2,32,13);
  245.    //冶金工程學院
  246.    Chinese_disp_1(4,16,14);
  247.    Chinese_disp_1(4,32,15);
  248.    Chinese_disp_1(4,48,16);
  249.    Chinese_disp_2(4,0,17);
  250.    Chinese_disp_2(4,16,18);
  251.         Chinese_disp_2(4,32,19);
  252.    //材料加工工程
  253.    E_disp_1(6,24,0);
  254.    E_disp_1(6,32,1);
  255.    E_disp_1(6,40,2);
  256.    E_disp_1(6,48,3);
  257.    E_disp_1(6,56,4);
  258.    E_disp_2(6,0,5);
  259.    E_disp_2(6,8,6);
  260.    E_disp_2(6,16,7);
  261.    E_disp_2(6,24,8);
  262.    //Crasyboye
  263.    write_cmd_1(i);
  264.    write_cmd_2(i);
  265.    delay(3000);//調整滾動速度

  266. }
  267. //delay(60000);
  268. }
  269. /***********主程序************/
  270. void main(void)
  271. { init_lcd();
  272.    clear_1();
  273. clear_2();
  274. while(1)
  275. {
  276. display();
  277. }
  278. }
復制代碼



分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏6 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:19701 發表于 2015-1-24 22:34 | 只看該作者
3小時能寫出也算是大俠了。謝謝分享
回復

使用道具 舉報

板凳
ID:74266 發表于 2015-3-7 12:50 | 只看該作者
程序編譯不了
回復

使用道具 舉報

地板
ID:115388 發表于 2016-9-29 17:00 | 只看該作者
來個視頻看看呀
回復

使用道具 舉報

5#
ID:491985 發表于 2019-4-27 22:08 | 只看該作者
主芯片和從芯片是啥意思啊
回復

使用道具 舉報

6#
ID:166284 發表于 2019-4-28 09:39 來自手機 | 只看該作者
電路原理呢?大神
回復

使用道具 舉報

7#
ID:166284 發表于 2019-4-28 09:42 來自手機 | 只看該作者
cs1和cs2管腳啥意思啊?沒看懂,老哥
回復

使用道具 舉報

8#
ID:166284 發表于 2019-4-28 09:45 來自手機 | 只看該作者
寫命令左,寫命令右都是啥意思啊?啥右左了的
回復

使用道具 舉報

9#
ID:474993 發表于 2019-4-29 19:35 | 只看該作者
用的什么字模軟件啊,取模方式是什么
回復

使用道具 舉報

10#
ID:370644 發表于 2019-9-11 17:25 | 只看該作者
顯示亂碼,不知道為什么
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 欧美精品网站 | 久久久精彩视频 | 精品国产一区二区三区久久久四川 | 精品1区2区 | 97精品国产 | 午夜精品在线观看 | 国产精品久久久久久久免费观看 | 亚洲国产成人精品久久久国产成人一区 | 韩国毛片一区二区三区 | 亚洲一区二区三区乱码aⅴ 四虎在线视频 | 国精产品一区一区三区免费完 | 免费一二区 | 中文字幕视频一区二区 | 99免费在线观看视频 | 在线成人一区 | www久久99| 精品国产91乱码一区二区三区 | 亚洲综合小视频 | 国产精品999 | a视频在线播放 | 欧美精品电影一区 | 精产国产伦理一二三区 | 在线观看国产 | av网址在线播放 | 天天操伊人 | 日韩成人在线观看 | 成人免费黄色 | 日本一区二区三区免费观看 | 午夜在线免费观看视频 | 日韩一区二区三区视频在线播放 | 天天干天天玩天天操 | 久草视 | 久久久精品网站 | 国产日韩欧美一区二区 | 国产主播第一页 | 精品一区二区三 | 成人自拍视频 | 欧美精品三区 | 在线第一页 | 日韩欧美久久 | 一区二区三区电影在线观看 |