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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 20012|回復: 38
收起左側

LCD1602漢字顯示的單片機程序下載 Proteus仿真

[復制鏈接]
ID:2656 發表于 2008-8-13 22:57 | 顯示全部樓層 |閱讀模式
明天回家拉,送大家一個1602顯示漢字的程序,懶的寫注釋
仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)
1.jpg

單片機源程序如下:
  1. #include<reg51.h>
  2. void enable(void);
  3. void writeaddr(unsigned char m);
  4. void writedata(unsigned char m);
  5. void selfdata(unsigned char m,unsigned char a);
  6. void init(void);
  7. unsigned char writestring(unsigned char m);
  8. unsigned char move(unsigned char m);
  9. void delay10ms(unsigned char time);
  10. void shift(unsigned char s,unsigned char n);
  11. sbit P27=P2^7;
  12. sbit P25=P2^5;
  13. sbit P26=P2^6;
  14. sbit P37=P3^7;
  15. unsigned char s=0xc0;
  16. unsigned char code table[8][8]={
  17. 0x02,0x02,0x0A,0x0A,0x0A,0x04,0x08,0x1F,/***第一個自定義字符
  18. ***/0x04,0x1F,0x15,0x15,0x17,0x05,0x04,0x1F,
  19. 0x02,0x04,0x0C,0x14,0x04,0x04,0x04,0x1F,
  20. 0x14,0x3F,0x15,0x15,0x14,0x11,0x1F,0x1F,
  21. 0x04,0x08,0x3F,0x0A,0x04,0x0A,0x11,0x1F,
  22. 0x1E,0x0A,0x0F,0x01,0x1F,0x01,0x03,0x1F,
  23. 0x00,0x00,0x07,0x05,0x07,0x00,0x00,0x1F,  
  24. 0x04,0x0A,0x11,0x0E,0x00,0x0E,0x0A,0x0E};
  25. unsigned char code string[]={"oh!wa!wa!wa!"};
  26. main()
  27. {   
  28.        init();
  29.       while(1)   
  30.            {
  31.            selfdata(0x80,1);
  32.                selfdata(0x81,2);
  33.                selfdata(0x82,1);
  34.                selfdata(0x83,2);
  35.            selfdata(0x84,1);
  36.                selfdata(0x85,2);
  37.                shift(s,1);
  38.          
  39.                                   }                      }
  40. void delay10ms(unsigned char time)
  41. {
  42.     unsigned char a,b,c;
  43.      for(a=0;a<time;a++)
  44.        for(b=0;b<10;b++)
  45.            for(c=0;c<120;c++);
  46.                                 }
  47. void enable(void)
  48. {     
  49.                
  50.              P27=1;
  51.         
  52.         P27=0;
  53.                 }
  54. void LCD_BZ(void)
  55. {    P25=0;
  56.          P26=1;
  57.          P27=0;
  58.          P3=0xFF;
  59.      for(P27=1;P37==1; P27=~P27,P27=~P27);
  60.                                                 }
  61. void writeaddr(unsigned char m)
  62. {       LCD_BZ();
  63.        P25=0;
  64.        P26=0;
  65.        P3=m;
  66.        enable();
  67.                              }
  68. void writedata(unsigned char m)
  69. {      LCD_BZ();
  70.        P25=1;
  71.        P26=0;
  72.        P3=m;
  73.        enable();                            }
  74. void init(void)
  75. {     writeaddr(0x01);
  76.       writeaddr(0x0c);
  77.       writeaddr(0x38);           
  78.       writeaddr(0x06);
  79.                          }
  80. void selfdata(unsigned char m,unsigned char a)
  81. {       unsigned char n;
  82.         n=a-1;
  83.               switch(n)
  84.                 {
  85.               case 0:writeaddr(0x40);break;
  86.                           case 1:writeaddr(0x48);break;
  87.                           case 2:writeaddr(0x50);break;
  88.                           case 3:writeaddr(0x58);break;
  89.                           case 4:writeaddr(0x60);break;
  90.                           case 5:writeaddr(0x68);break;
  91.                           case 6:writeaddr(0x70);break;
  92.                           case 7:writeaddr(0x78);break;
  93.                                                              }
  94.                  for(a=0;a<8;a++)
  95.                    writedata(table[n][a]);
  96.          writeaddr(m);
  97.          writedata(n);
  98.                                                  }
  99. unsigned char writestring(unsigned char m)
  100. {     unsigned char a=0,*n=string;   
  101.       writeaddr(m);
  102.           for(;*n!=0;n++)
  103.            {
  104.           writedata(*n);
  105.           a++;                         }
  106.               return(a);                        }
  107. unsigned char move(unsigned char m)
  108. {    static char d=1;
  109.      unsigned char c,all,*p=string,n=0;   
  110.       delay10ms(50);
  111.           writeaddr(0x01);
  112.    
  113.    all=writestring(m+=1);
  114.             if(m+all>0xd0)
  115.             {
  116.                      writeaddr(0xc0);
  117.                  c=d;
  118.            for(n=(m+all-0xd0);n!=0;n--)
  119.            {
  120.                       writedata(*(p+all-d));
  121.                           --d;
  122.                
  123.                                      }
  124.                         
  125.                                 d=c;
  126.                                 d++;
  127.                                 if(d==all+1)
  128.                               {
  129.                                    d=1;
  130.                                            m=0xc0;
  131.                                                        }
  132.                                                                            }
  133.                      s=m+1;
  134.                      return(m);                       }
  135. void shift(unsigned char s,unsigned char n)
  136. {    s-=1;
  137.      for(;n!=0;n--)
  138.                  move(s);
  139.                                                          }
復制代碼

仿真dsn文件:
Proteus仿真7.5版本.7z (27.8 KB, 下載次數: 393)


回復

使用道具 舉報

ID:2902 發表于 2008-8-29 22:00 | 顯示全部樓層

o(∩_∩)o... 謝謝了

回復

使用道具 舉報

ID:7884 發表于 2008-12-17 16:01 | 顯示全部樓層

謝了

回復

使用道具 舉報

ID:7503 發表于 2008-12-27 20:46 | 顯示全部樓層
1602怎么顯示漢字?
回復

使用道具 舉報

ID:8281 發表于 2008-12-31 23:17 | 顯示全部樓層

回復

使用道具 舉報

ID:8151 發表于 2009-1-1 16:30 | 顯示全部樓層

謝謝

回復

使用道具 舉報

ID:9148 發表于 2009-3-4 17:48 | 顯示全部樓層
謝謝
回復

使用道具 舉報

ID:10058 發表于 2009-4-12 22:56 | 顯示全部樓層
謝謝了!!!
回復

使用道具 舉報

ID:3840 發表于 2009-4-13 20:05 | 顯示全部樓層
好東西值得一頂
回復

使用道具 舉報

ID:11365 發表于 2009-4-17 14:59 | 顯示全部樓層
謝謝分享
回復

使用道具 舉報

ID:11951 發表于 2009-4-28 20:57 | 顯示全部樓層

回復

使用道具 舉報

ID:12060 發表于 2009-5-1 17:18 | 顯示全部樓層

我不知道說什么是好

回復

使用道具 舉報

ID:12060 發表于 2009-5-1 17:31 | 顯示全部樓層
還算是吧
回復

使用道具 舉報

ID:12255 發表于 2009-5-4 20:54 | 顯示全部樓層
謝謝
回復

使用道具 舉報

ID:12397 發表于 2009-5-7 18:17 | 顯示全部樓層
先頂后下!
回復

使用道具 舉報

ID:10354 發表于 2009-5-8 00:47 | 顯示全部樓層
!!!
回復

使用道具 舉報

ID:12470 發表于 2009-5-8 18:09 | 顯示全部樓層
回復

使用道具 舉報

ID:12491 發表于 2009-5-10 21:29 | 顯示全部樓層
謝謝了,先下了!等我會了再用
回復

使用道具 舉報

ID:11084 發表于 2009-5-15 18:35 | 顯示全部樓層
幾頂后下,支持樓主!!
回復

使用道具 舉報

ID:13003 發表于 2009-5-17 16:55 | 顯示全部樓層

謝謝樓主~~~~~~~~

回復

使用道具 舉報

ID:13481 發表于 2009-5-27 13:11 | 顯示全部樓層
asp文件~~用啥打開??請教了
回復

使用道具 舉報

ID:12718 發表于 2009-5-29 17:23 | 顯示全部樓層
下載了就要頂
回復

使用道具 舉報

ID:13721 發表于 2009-6-3 10:05 | 顯示全部樓層
 不知道如何用!不過還是謝了!
回復

使用道具 舉報

ID:8456 發表于 2009-6-9 17:59 | 顯示全部樓層

謝了

回復

使用道具 舉報

ID:16167 發表于 2009-8-12 11:36 | 顯示全部樓層
謝謝啦^_^
回復

使用道具 舉報

ID:16167 發表于 2009-8-12 11:37 | 顯示全部樓層
把asp改成rar就好咯
回復

使用道具 舉報

ID:16170 發表于 2009-8-12 12:58 | 顯示全部樓層
這個也能顯漢字?
回復

使用道具 舉報

ID:16172 發表于 2009-8-12 13:55 | 顯示全部樓層
謝謝樓主的分享
回復

使用道具 舉報

ID:16695 發表于 2009-9-1 06:58 | 顯示全部樓層
謝謝了。東西還是很不錯的
回復

使用道具 舉報

ID:16949 發表于 2009-9-7 17:50 | 顯示全部樓層
學習
回復

使用道具 舉報

ID:15906 發表于 2009-9-8 00:50 | 顯示全部樓層
 有人會用嗎?教一教,不知如何用?
回復

使用道具 舉報

ID:17102 發表于 2009-9-11 23:59 | 顯示全部樓層
下載了就要頂
回復

使用道具 舉報

ID:17130 發表于 2009-9-12 21:41 | 顯示全部樓層
1602還能顯漢字?我看看
回復

使用道具 舉報

ID:17130 發表于 2009-9-12 21:52 | 顯示全部樓層

我以為你能寫出什么東西來呢 還是字符手冊上那些!~

回復

使用道具 舉報

ID:16406 發表于 2009-9-13 16:32 | 顯示全部樓層
謝謝樓主啦
回復

使用道具 舉報

ID:27078 發表于 2011-6-4 14:12 | 顯示全部樓層

謝了

 

回復

使用道具 舉報

ID:29335 發表于 2011-6-14 21:09 | 顯示全部樓層

o(∩_∩)o... 謝謝了

回復

使用道具 舉報

ID:111970 發表于 2016-4-2 20:23 | 顯示全部樓層
看看。。怎么樣 ?
回復

使用道具 舉報

ID:171111 發表于 2017-5-6 14:36 | 顯示全部樓層
十分感謝         
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 在线国产中文字幕 | 99热在线免费 | 日本一卡精品视频免费 | 国产日韩一区二区三区 | 亚洲视频一 | 午夜精品一区 | 国产精品国产a级 | 成人毛片一区二区三区 | 美女久久久久久久 | 在线视频一区二区三区 | 国产精品一区二区日韩 | 亚洲第一av | 久久免费精彩视频 | 嫩草视频网 | 成人a在线 | 天天躁日日躁狠狠的躁天龙影院 | 国产福利视频 | 成人免费久久 | 人人看人人射 | 性xxxxx | 久久蜜桃精品 | 日本爱爱 | 蜜桃精品视频在线 | 亚洲一区在线日韩在线深爱 | 四虎影音| 国产亚洲精品精品国产亚洲综合 | 小早川怜子xxxxaⅴ在线 | 男女羞羞视频免费看 | 成人欧美一区二区 | 亚洲一区二区精品视频 | 天天做日日做 | 91精品久久久久久久久久小网站 | 国产激情一区二区三区 | 福利片一区二区 | 97狠狠干| 免费看大片bbbb欧美 | 午夜国产羞羞视频免费网站 | 97超级碰碰 | 国外成人在线视频网站 | 欧美亚洲另类在线 | 黄色片视频网站 |