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

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 3918|回復(fù): 12
打印 上一主題 下一主題
收起左側(cè)

求助:51單片機(jī)1602顯示漢字程序顯示出來不對(duì)

  [復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
下面是程序,我看了一下網(wǎng)上的1602顯示漢字程序應(yīng)該就是這樣的,但是顯示出來不對(duì),想了半天沒想出來哪里有問題,請(qǐng)各位大神幫忙看看哪里有問題,還有一個(gè)小問題就是這么關(guān)閉掉每次清屏,,求助各位大神幫忙看看,,謝謝了
單片機(jī)源程序如下:
  1. #include <REGX51.H>
  2. #define uint unsigned int
  3. #define uchar unsigned char
  4. #define DB P0
  5. sbit rs=P2^6;
  6. sbit rw=P2^5;
  7. sbit e=P2^7;
  8. uchar code dm[]={0x40,0x0f,0x12,0x0f,0x0a,0x1f,0x02,0x02};
  9. uchar i;

  10. void  xie_data(uchar  sj);
  11. void  ys(uint  t);
  12. void  xie_ml(uchar  ml);
  13. void  display(uchar x,uchar y,uchar sj);
  14. void  init();
  15. void ys(uint t)
  16. {
  17.   while(t--);
  18. }
  19. void xie_data(uchar sj)
  20. {
  21.    rs=1;
  22.    rw=0;
  23.    e=0;

  24.    DB=sj;
  25.    e=1;
  26.    ys(1000);
  27.    e=0;
  28. }
  29. void  xie_ml(uchar ml)
  30. {
  31.    rs=0;
  32.    rw=0;
  33.    e=0;

  34.    DB=ml;
  35.    e=1;
  36.    ys(1000);
  37.    e=0;
  38. }
  39. void  display(uchar x,uchar y,uchar sj)
  40. {
  41.     if(y)
  42.         {
  43.           xie_ml(0x80|0x40|x);
  44.           xie_data(sj);
  45.         }
  46.         else
  47.         {
  48.           xie_ml(0x80|x);
  49.           xie_data(sj);
  50.         }
  51. }
  52. void  init()
  53. {
  54.   xie_ml(0x38);
  55.   ys(100);
  56.   xie_ml(0x0c);
  57.   ys(100);
  58.   xie_ml(0x06);
  59.   ys(100);
  60.   xie_ml(0x01);
  61.   ys(100);
  62.   xie_ml(0x80);
  63.   ys(100);
  64. }
  65. void main()
  66. {
  67.   init();
  68.   while(1)
  69.   {
  70.    for(i=0;i<8;i++)
  71.    {
  72.             display(0,0,dm[i]);
  73.          ys(50);
  74.    }
  75.   }
  76. }
復(fù)制代碼

初始化程序沒問題就是不知道怎么顯示,求助各位大神,謝謝


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

使用道具 舉報(bào)

沙發(fā)
ID:207421 發(fā)表于 2021-3-23 17:09 | 只看該作者
仔細(xì)看看說明書,硬件接線錯(cuò)了沒
然后才看程序

評(píng)分

參與人數(shù) 1黑幣 +20 收起 理由
admin + 20 回帖助人的獎(jiǎng)勵(lì)!

查看全部評(píng)分

回復(fù)

使用道具 舉報(bào)

板凳
ID:876099 發(fā)表于 2021-3-23 19:07 | 只看該作者
lwh999995 發(fā)表于 2021-3-23 17:09
仔細(xì)看看說明書,硬件接線錯(cuò)了沒
然后才看程序

能正常顯示數(shù)字、字母,就是不知道漢字顯示哪里錯(cuò)了
回復(fù)

使用道具 舉報(bào)

地板
ID:390416 發(fā)表于 2021-3-23 19:18 | 只看該作者
看我發(fā)的貼子,里面就有LCD1602顯示特殊字符。舉一反三 自己顯示漢字
回復(fù)

使用道具 舉報(bào)

5#
ID:824490 發(fā)表于 2021-3-24 09:30 | 只看該作者
1602顯示不了漢字,沒有漢字庫,只能顯示ASC字符,或可以通過代碼組合出有限的幾個(gè)漢字,但,很丑!
回復(fù)

使用道具 舉報(bào)

6#
ID:139866 發(fā)表于 2021-3-24 09:51 | 只看該作者
1602一個(gè)小格也沒幾個(gè)像素吧,寫個(gè)復(fù)雜的漢字那不全黑了

評(píng)分

參與人數(shù) 1黑幣 +20 收起 理由
admin + 20 回帖助人的獎(jiǎng)勵(lì)!

查看全部評(píng)分

回復(fù)

使用道具 舉報(bào)

7#
ID:213173 發(fā)表于 2021-3-24 10:25 | 只看該作者
1045964948 發(fā)表于 2021-3-23 19:07
能正常顯示數(shù)字、字母,就是不知道漢字顯示哪里錯(cuò)了

LCD1602是5*7點(diǎn)陣,只能顯示簡(jiǎn)單漢字。把你的程序改寫加簡(jiǎn)單漢字。

  1. #include <AT89X52.H>
  2. //#include <REGX51.H>
  3. #define uint unsigned int
  4. #define uchar unsigned char
  5. #define DB P0
  6. sbit rs=P2^6;
  7. sbit rw=P2^5;
  8. sbit e=P2^7;
  9. //uchar code dm[]={0x40,0x0f,0x12,0x0f,0x0a,0x1f,0x02,0x02};
  10. //年、月、日漢字代碼數(shù)組
  11. unsigned char character0[24] = {
  12. 0x08,0x0f,0x12,0x0f,0x0a,0x1f,0x02,0x02,  //"年"地址代碼 0x00
  13. 0x0F,0x09,0x0F,0x09,0x0F,0x09,0x13,0x00,  //"月"地址代碼 0x01
  14. 0x0F,0x09,0x09,0x0F,0x09,0x09,0x0F,0x00,  //"日"地址代碼 0x02
  15. };

  16. uchar code dm[]={'2','0','2','1',0x00,'0','3',0x01,'2','4',0x02,' ','W','E','D'};

  17. uchar i;

  18. void  xie_data(uchar  sj);
  19. void  ys(uint  t);
  20. void  xie_ml(uchar  ml);
  21. void  display(uchar x,uchar y,uchar sj);
  22. void  init();

  23. void ys(uint t)//T=t*9+16us
  24. {
  25.   while(t--);
  26. }
  27. void xie_data(uchar sj)
  28. {
  29.    rs=1;
  30.    rw=0;
  31.    e=0;

  32.    DB=sj;
  33.    ys(100);
  34.    e=1;
  35.    ys(100);
  36.    e=0;
  37. }
  38. void  xie_ml(uchar ml)
  39. {
  40.    rs=0;
  41.    rw=0;
  42.    e=0;

  43.    DB=ml;
  44.    ys(100);
  45.    e=1;
  46.    ys(100);
  47.    e=0;
  48. }
  49. void  display(uchar x,uchar y,uchar sj)
  50. {
  51.         if(y)
  52.         {
  53.                 xie_ml(0x80|0x40|x);
  54.                 xie_data(sj);
  55.         }
  56.         else
  57.         {
  58.                 xie_ml(0x80|x);
  59.                 xie_data(sj);
  60.         }
  61. }
  62. void  init()
  63. {
  64.   xie_ml(0x38);
  65.   ys(100);
  66.   xie_ml(0x0c);
  67.   ys(100);
  68.   xie_ml(0x06);
  69.   ys(100);
  70.   xie_ml(0x01);
  71.   ys(100);
  72.   xie_ml(0x80);
  73.   ys(100);
  74. }
  75. void main()
  76. {
  77.         init();
  78.         xie_ml(0x40);                //向LCD自定義存儲(chǔ)器寫入"年"、"月"、"日"
  79.         for (i=0;i<24;i++)
  80.                 xie_data(character0[i]);

  81.         for(i=0;i<15;i++)        //寫第一行字符
  82.                 display(i+1,0,dm[i]);

  83.         while(1);
  84. }
復(fù)制代碼




回復(fù)

使用道具 舉報(bào)

8#
ID:517951 發(fā)表于 2021-3-24 10:55 | 只看該作者
1602是可以顯示年月日這種簡(jiǎn)單的漢字, 復(fù)雜的就不行了.
是寫進(jìn)自定義字符區(qū)里面.顯示方法和英文字符一樣.
回復(fù)

使用道具 舉報(bào)

9#
ID:47286 發(fā)表于 2021-3-24 11:20 | 只看該作者
你買的1602帶字庫么
回復(fù)

使用道具 舉報(bào)

10#
ID:876099 發(fā)表于 2021-3-24 23:32 來自觸屏版 | 只看該作者
wulin 發(fā)表于 2021-3-24 10:25
LCD1602是5*7點(diǎn)陣,只能顯示簡(jiǎn)單漢字。把你的程序改寫加簡(jiǎn)單漢字。

謝謝大神非常感謝
回復(fù)

使用道具 舉報(bào)

11#
ID:876099 發(fā)表于 2021-3-24 23:33 來自觸屏版 | 只看該作者
人人學(xué)會(huì)單片機(jī) 發(fā)表于 2021-3-23 19:18
看我發(fā)的貼子,里面就有LCD1602顯示特殊字符。舉一反三 自己顯示漢字

好的謝謝
回復(fù)

使用道具 舉報(bào)

12#
ID:876099 發(fā)表于 2021-3-24 23:34 來自觸屏版 | 只看該作者
rayin 發(fā)表于 2021-3-24 10:55
1602是可以顯示年月日這種簡(jiǎn)單的漢字, 復(fù)雜的就不行了.
是寫進(jìn)自定義字符區(qū)里面.顯示方法和英文字符一樣.

好的現(xiàn)在懂了
回復(fù)

使用道具 舉報(bào)

13#
ID:876099 發(fā)表于 2021-3-27 11:19 | 只看該作者
wulin 發(fā)表于 2021-3-24 10:25
LCD1602是5*7點(diǎn)陣,只能顯示簡(jiǎn)單漢字。把你的程序改寫加簡(jiǎn)單漢字。

謝謝大神,還有個(gè)問題想請(qǐng)教一下,就是下面這段程序中為什么需要寫0x01~0x07送到0x80
我改成像你的程序那種直接寫完0x40然后送數(shù)據(jù)就顯示不了
  1. #include <REGX51.H>
  2. #define uchar unsigned char
  3. #define uint unsigned int
  4. #define sc P0
  5. sbit rs=P2^6;
  6. sbit rw=P2^5;
  7. sbit e=P2^7;

  8. //uchar code table[]={0x1F,0x04,0x04,0x1F,0x04,0x05,0x1F,0x00};
  9. uchar code table[]={
  10. 0x00,0x00,0x00,0x1F,0x00,0x00,0x00,0x00,//一
  11. 0x00,0x00,0x0E,0x00,0x1F,0x00,0x00,0x00,//二
  12. 0x00,0x1F,0x00,0x0E,0x00,0x1F,0x00,0x00,//三
  13. 0x02,0x04,0x0F,0x12,0x0F,0x0A,0x1F,0x02,//年
  14. 0x0F,0x09,0x0F,0x09,0x0F,0x09,0x09,0x11,//月
  15. 0x1F,0x11,0x11,0x1F,0x11,0x11,0x1F,0x00,//日
  16. 0x00,0x00,0x00,0x0A,0x15,0x0A,0x04,0x00,//心型
  17. 0x00,0x04,0x15,0x0E,0x1F,0x0E,0x11,0x00//坦克
  18. };
  19. uchar code table1[]={0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07};  //自定義字符數(shù)據(jù)地址

  20. uchar code table2[]="QQ:1045964948";

  21. void xie_date(uchar sj);
  22. void xie_ml(uchar ml);
  23. void delay(uint t);
  24. void init();

  25. void delay(uint t)
  26. {
  27. while(t--);
  28. }

  29. void xie_date(uchar sj)
  30. {
  31. rs=1;
  32. rw=0;
  33. e=0;
  34. sc=sj;
  35. e=1;
  36. delay(500);
  37. e=0;
  38. }

  39. void xie_ml(uchar ml)
  40. {
  41. rs=0;
  42. rw=0;
  43. e=0;
  44. sc=ml;
  45. e=1;
  46. delay(500);
  47. e=0;
  48. }

  49. void init()
  50. {
  51. xie_ml(0x38);
  52. xie_ml(0x0c);
  53. xie_ml(0x06);
  54. xie_ml(0x01);
  55. xie_ml(0x80);
  56. }

  57. void main()
  58. {
  59. uchar i;
  60. init();
  61. while(1)
  62. {
  63.   xie_ml(0x40);
  64.   for(i=0;i<64;i++)
  65.   {
  66.    xie_date(table[i]);
  67.    delay(50);
  68.   }
  69.   xie_ml(0x80);
  70.   for(i=0;i<8;i++)
  71.   {
  72.    xie_date(table1[i]);
  73.    delay(50);
  74.   }
  75.   xie_ml(0xc0);
  76.   for(i=0;i<13;i++)
  77.   {
  78.    xie_date(table2[i]);
  79.    delay(50);
  80.   }
  81. }
  82. }
復(fù)制代碼
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 四虎在线观看 | 欧美一级欧美一级在线播放 | 羞羞网站在线免费观看 | 欧美无乱码久久久免费午夜一区 | 亚洲不卡视频 | 成人在线视频观看 | 国产视频在线一区二区 | 久久伊人精品 | 欧美性生活网 | 6080yy精品一区二区三区 | 在线一区视频 | 黄色大片免费看 | 国产a区| www.久久 | 中文字幕免费在线 | 欧美日韩一区二区三区视频 | 精品国产青草久久久久96 | 欧美一区二区视频 | 午夜精品久久久久久久久久久久久 | 一区二区视频在线观看 | 色播99| 九九九久久国产免费 | 99在线免费观看视频 | 最新国产精品视频 | 9久久 | 国产在线中文字幕 | 亚洲精品视频在线观看视频 | 成人小视频在线免费观看 | 久久青青 | 青青草av在线播放 | 欧美极品在线播放 | 欧美影院 | 伊人网在线播放 | 天天干天天操天天爽 | 日韩高清国产一区在线 | 涩涩视频在线播放 | 成人免费av在线 | 91精品久久久 | 国产一级特黄视频 | 国产亚洲区 | 精品成人一区二区 |