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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

Proteus+單片機中的lcd1062無法顯示第二行

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:338671 發(fā)表于 2019-4-20 21:55 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
今天使用Proteus自行繪制一個原理圖,用來學(xué)習(xí)LCD602,在Proteus中是沒有LCD1602的,所有使用了Lm06l來替代
1)按照我最初的想法是,在第一行顯示 who am I 在第二行顯示 china的
遇到的問題是,無法在第二行顯示數(shù)據(jù),write_com(0xC0);經(jīng)過我自行調(diào)試發(fā)現(xiàn)問題出現(xiàn)在這里,
我把這句代碼刪除掉之后,china是跟在who am I 后面顯示的

下面是代碼
  1. #include<reg51.h>
  2. #include<string.h>

  3. #define uint unsigned int
  4. #define uchar unsigned char
  5.         
  6. void init(void);
  7. void write_com(uchar com);  //寫命令函數(shù)
  8. void write_data(uint date); //寫數(shù)據(jù)函數(shù)
  9. void delay(int z);

  10. sbit lcdrs =P2^7;  //液晶屏數(shù)據(jù)/命令選擇端
  11. sbit lcdrw =P2^6;        //液晶屏讀寫端
  12. sbit lcden =P2^5;        //使能端

  13. void delay(int z)        //延時1ms
  14. {
  15.         int i,j;
  16.         for(i=0;i<z;i++)
  17.                 for(j=0;j<110;j++);
  18. }

  19. void write_com(uchar com) //寫命令函數(shù)
  20. {
  21.         lcdrs = 0;
  22.         lcdrw = 0;
  23.         P0 = com;
  24.         delay(5);
  25.         lcden = 0;
  26.         delay(5);
  27.         lcden = 1;
  28.         
  29. }

  30. void write_data(uchar date ) //寫數(shù)據(jù)函數(shù)
  31. {
  32.         lcdrs = 1;
  33.         lcdrw = 0;
  34.         P0 = date;
  35.         delay(5);
  36.         lcden = 0;
  37.         delay(5);
  38.         lcden = 1;
  39. }

  40. void init(void)
  41. {
  42.         lcden = 0;//默認(rèn)使能端是低電平
  43.         lcdrw = 0;
  44.         write_com(0x38);//顯示模式設(shè)置
  45.         write_com(0x0f);// 開顯示,顯示光標(biāo),光標(biāo)閃爍
  46.         write_com(0x06);//當(dāng)讀或者寫一個字符后地址加一,且光標(biāo)加一
  47.         //write_com(0x07)當(dāng)讀或者寫一個字符后地址加一,且光標(biāo)加一,且寫一個字符,整屏顯示左移
  48.         write_com(0x80);
  49. }

  50. void main()
  51. {
  52.         int mun1,mun2,i,j;
  53.         uchar table1[20]="Who am I";
  54.         uchar table2[20]="china";
  55.         
  56.         mun1 = strlen(table1);
  57.         mun2 = strlen(table2);
  58.         init();
  59.         for(i=0;i<mun1;i++)
  60.         {
  61.                 write_data(table1[i]);
  62.                 delay(200);
  63.         }
  64.         
  65.         //重新設(shè)置顯示指針
  66.         write_com(0xc0);//把指針移到第二行去顯示,如果沒有這句那么china會接在who am i 后面顯示,會發(fā)生字符被吞的現(xiàn)象
  67.         
  68.         for(j=0;j<mun2;j++)
  69.         {
  70. write_data(table2[j]);
  71.                 delay(200);
  72.         }
  73.         
  74.         while(1);
  75. }

復(fù)制代碼



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

使用道具 舉報

沙發(fā)
ID:213173 發(fā)表于 2019-4-21 09:11 | 只看該作者
錯誤1.void write_data(uint date);聲明寫數(shù)據(jù)函數(shù)的參數(shù)數(shù)據(jù)類型錯誤
錯誤2.void write_com(uchar com) //寫命令函數(shù)中l(wèi)cden邏輯電平錯誤

錯誤3.void write_data(uchar date ) //寫數(shù)據(jù)函數(shù)中l(wèi)cden邏輯電平錯誤




  1. #include<reg51.h>
  2. #include<string.h>

  3. #define uint unsigned int
  4. #define uchar unsigned char

  5. void init(void);
  6. void write_com(uchar com);  //寫命令函數(shù)
  7. void write_data(uchar date); //寫數(shù)據(jù)函數(shù)
  8. void delay(int z);

  9. sbit lcdrs =P2^7;  //液晶屏數(shù)據(jù)/命令選擇端
  10. sbit lcdrw =P2^6;        //液晶屏讀寫端
  11. sbit lcden =P2^5;        //使能端

  12. void delay(int z)        //延時1ms
  13. {
  14.         int i,j;
  15.         for(i=0;i<z;i++)
  16.                 for(j=0;j<110;j++);
  17. }

  18. void write_com(uchar com) //寫命令函數(shù)
  19. {
  20.         lcdrs = 0;
  21.         lcdrw = 0;
  22.         P0 = com;
  23.         delay(5);
  24.         lcden = 1;
  25.         delay(5);
  26.         lcden = 0;
  27. }

  28. void write_data(uchar date ) //寫數(shù)據(jù)函數(shù)
  29. {
  30.         lcdrs = 1;
  31.         lcdrw = 0;
  32.         P0 = date;
  33.         delay(5);
  34.         lcden = 1;
  35.         delay(5);
  36.         lcden = 0;
  37. }

  38. void init(void)
  39. {
  40.         lcden = 0;//默認(rèn)使能端是低電平
  41.         lcdrw = 0;
  42.         write_com(0x38);//顯示模式設(shè)置
  43.         write_com(0x0f);// 開顯示,顯示光標(biāo),光標(biāo)閃爍
  44.         write_com(0x06);//當(dāng)讀或者寫一個字符后地址加一,且光標(biāo)加一
  45. // write_com(0x07)當(dāng)讀或者寫一個字符后地址加一,且光標(biāo)加一,且寫一個字符,整屏顯示左移
  46.         write_com(0x80);
  47. }

  48. void main()
  49. {
  50.         int mun1,mun2,i,j;
  51.         uchar table1[20]="Who am I";
  52.         uchar table2[20]="china";
  53.        
  54.         mun1 = strlen(table1);
  55.         mun2 = strlen(table2);
  56.         init();
  57.         for(i=0;i<mun1;i++)
  58.         {
  59.                 write_data(table1[i]);
  60.                 delay(200);
  61.         }

  62.         //重新設(shè)置顯示指針
  63.         write_com(0xc0);
  64.        
  65.         for(j=0;j<mun2;j++)
  66.         {
  67.                 write_data(table2[j]);
  68.                 delay(200);
  69.         }
  70.        
  71.         while(1);
  72. }

復(fù)制代碼



回復(fù)

使用道具 舉報

板凳
ID:338671 發(fā)表于 2019-4-21 11:41 | 只看該作者
謝謝大佬的答疑,是我對于數(shù)據(jù)類型理解不到位,
回復(fù)

使用道具 舉報

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

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 久久久一区二区三区 | 亚洲欧美日韩精品久久亚洲区 | 欧美精品一区二区三区一线天视频 | 免费黄色a视频 | 在线播放中文 | 欧美视频 | 久久久久网站 | 久久国产综合 | 综合久久亚洲 | 中文成人在线 | 久久r免费视频 | 亚洲精品久久久久久久久久久 | 亚洲狠狠丁香婷婷综合久久久 | 午夜欧美 | 99热这里有精品 | 日本中出视频 | 国产精品久久久亚洲 | 国产免费拔擦拔擦8x高清 | 精品国产久 | 色偷偷人人澡人人爽人人模 | 精品欧美乱码久久久久久1区2区 | 亚洲激情一区二区三区 | 国产一区久久 | 久久久久久久久国产 | 四虎成人免费视频 | 国产日韩视频 | 免费在线播放黄色 | 国产精品亚洲精品日韩已方 | 91视在线国内在线播放酒店 | 国产美女精品 | 欧美激情网站 | 日韩欧美一级片 | 国产精品久久久久久久久久久久 | 欧美日韩在线观看视频网站 | 久久久999国产精品 中文字幕在线精品 | 久久国内精品 | 亚洲国产精品99久久久久久久久 | 伊人性伊人情综合网 | 亚洲第一av| 日韩欧美国产综合 | 又爽又黄axxx片免费观看 |