wwwxxx国产_337p日本欧洲亚洲大胆张筱雨_免费在线看成人av_日本黄色不卡视频_国产精品成熟老女人_99视频一区_亚洲精品97久久中文字幕_免费精品视频在线_亚洲色图欧美视频_欧美一区二三区

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

單片機驅(qū)動1602顯示屏的練習,備注詳細!

[復制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:350006 發(fā)表于 2018-6-27 23:18 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式
之前自己練習1602液晶顯示的成果,1602的驅(qū)動編寫和調(diào)用里面解釋很詳細了
結(jié)合我的解釋,仔細看我編程的結(jié)構(gòu)和思路
慢慢的你會對1602的使用有所了解
自己專研下肯定會讓你收益頗豐,
發(fā)出來也是對自己學習的鼓勵吧!加油各位!!



  1. /**************************************************/
  2. /*
  3.                         1602 模擬顯示車輛速度、溫度、油量
  4.         1.歡迎語句 Welcome GXUST    第二行car system
  5.         2.        place select 1 2 3    功能選項
  6.         3.輪流顯示1.speed
  7.                           2.temperatuer
  8.                           3.oil mass
  9.                           
  10. 我一直認為單片機是開放的,可以思考的,我做的這份
  11. 是個引子,讀者看懂了自然可以快速自己加入自己想顯示的字符。
  12. ***************************************************/
  13. #include<reg52.h>
  14. #include<stdio.h>
  15. #include<intrins.h>
  16. #define Data P0//數(shù)據(jù)端口
  17. #define GPIO_KEY P1 //鍵盤口
  18. sbit RS = P2^0; //Pin4
  19. sbit RW = P2^1; //Pin5
  20. sbit E = P2^2; //Pin6
  21. unsigned char KeyValue;
  22. unsigned char kk=0;        
  23. char TimeNum[16]="Welcome GXUSt";
  24. char Test1[16]="car systen";
  25. char Test2[16]="place select 123";
  26. char speed[16]="    1.speed";
  27. char temperatuer[16]="   2.temperatuer";
  28. char oil[16]="    3.oil mass";        /*這些是定義字符串,方便顯示調(diào)用*/
  29. void DelayUs(unsigned char us)//微秒級延時函數(shù)
  30. {
  31.         unsigned char uscnt;
  32.         uscnt=us>>1;
  33.         while(--uscnt);
  34. }
  35. void DelayMs(unsigned int ms) //毫秒級延時函數(shù)
  36. {
  37.         while(--ms)
  38. {
  39.         DelayUs(250);
  40.         DelayUs(250);
  41.         DelayUs(250);
  42.         DelayUs(250);
  43. }
  44. }
  45. void WriteCommand(unsigned char c)//寫命令函數(shù)
  46. {
  47.         DelayMs(5);//操作前短暫延時,保證信號穩(wěn)定
  48.         E=0;           //使能清零
  49.         RS=0;           //選擇寫命令
  50.         RW=0;           //選擇寫入
  51. //        _nop_();   //延時一會
  52. //        E=1;
  53.         Data=c;           //送數(shù)
  54.         DelayMs(1);
  55.         E=1;
  56.         DelayMs(5);//等待寫入完成
  57.         E=0;
  58. }

  59. void WriteData(unsigned char c) //寫數(shù)據(jù)函數(shù)
  60. {
  61.         DelayMs(5);//操作前短暫延時,保證信號穩(wěn)定
  62.         E=0;
  63.         RS=1;
  64.         RW=0;
  65.         _nop_();
  66.         E=1;
  67.         Data=c;
  68.         E=0;
  69.         RS=0;
  70. }
  71. void ShowChar(unsigned char pos,unsigned char c)//寫字符函數(shù)  哪個位置寫
  72. {
  73.         unsigned char p;
  74.         if (pos>=0x10)
  75.         p=pos+0xb0; //是第二行則命令代碼高4位為0xc     從第二行開始寫
  76.         else
  77.         p=pos+0x80; //是第二行則命令代碼高4位為0x8     從第一行的POS開始寫
  78.         WriteCommand (p);//寫命令
  79.         WriteData (c);//寫數(shù)據(jù)
  80. }
  81. void lcd_sfm(unsigned char add,unsigned char date)//顯示位置和數(shù)據(jù) 在哪里add顯示 顯示數(shù)據(jù)date
  82. {
  83.         unsigned char shi,ge;
  84.         shi=date/10;
  85.         ge=date%10;
  86.         WriteCommand(0x80+0x40+add);
  87.         WriteData(0x30+shi);
  88.         WriteData(0x30+ge);
  89.         }
  90. void ShowString (unsigned char line,char *ptr)//寫字符串函數(shù)         line:行
  91. {
  92.         unsigned char l,i;
  93.         l=line<<4;//若line=0,則地址的高四位為0;若line=1.則地址的高四位為1 寫哪一行
  94.         for (i=0;i<16;i++)
  95.         ShowChar (l++,*(ptr+i));//循環(huán)顯示16個字符
  96. }

  97. void InitLcd()//初始化函數(shù)
  98. {
  99.         DelayMs(15);
  100.         WriteCommand(0x38); //display mode
  101.         WriteCommand(0x38); //display mode
  102.         WriteCommand(0x38); //display mode
  103.         WriteCommand(0x06); //顯示光標移動位置
  104.         WriteCommand(0x0c); //顯示開及光標設置 不顯示光標
  105.         WriteCommand(0x01); //顯示清屏
  106. //        WriteCommand(0x80+0x10);  //設定數(shù)據(jù)指針起始點
  107. }


  108. unsigned char keyscan() //鍵盤掃描函數(shù)
  109. {
  110.         char a=0;
  111.                 GPIO_KEY=0x0f;   //P1口值準備
  112.                         if(GPIO_KEY!=0x0f)
  113.                         {
  114.                                 DelayMs(10);   //延時消抖
  115.                                 if(GPIO_KEY!=0x0f)//再次判斷
  116.                                 {
  117.                                         GPIO_KEY=0x0f;  //再次裝值準備
  118.                                         switch(GPIO_KEY)  //測試行
  119.                                         {
  120.                                                 case(0x07):KeyValue=0;break; //第一行
  121.                                                 case(0x0b):KeyValue=1;break; //第二行
  122.                                                 case(0x0d):KeyValue=2;break; //第三行
  123.                                                 case(0x0e):KeyValue=3;break; //第四行                                                        
  124.                                         }
  125.                                         GPIO_KEY=0xf0;   //高四位賦1,判斷準備
  126.                                         switch(GPIO_KEY) //測試行
  127.                                         {
  128.                                                 case(0x70):KeyValue=KeyValue;break;           //0-3
  129.                                                 case(0xb0):KeyValue=KeyValue+4;break;  //4-7
  130.                                                 case(0xd0):KeyValue=KeyValue+8;break;  //8-11
  131.                                                 case(0xe0):KeyValue=KeyValue+12;break; //12-15               
  132.                                         }
  133.                                         while((GPIO_KEY!=0x0f)&&(a<20)) //判斷是否松手,假若沒有松手,一段延時后依舊判斷松手完成
  134.                                         {
  135.                                                 DelayMs(5);
  136.                                                 a++;
  137.                                         }
  138.                                         a=0;               
  139.                                 }
  140.                         }         
  141.                         return KeyValue;
  142. }
  143. void cjm()   //初始界面
  144. {
  145.         ShowString(1,Test2);            //顯示plaace
  146.         DelayMs(1000);
  147.         WriteCommand(0x01); //顯示清屏
  148.         
  149.         ShowString(0,speed);            //顯示speed
  150.         DelayMs(1000);
  151.         WriteCommand(0x01); //顯示清屏
  152.         
  153.         ShowString(0,temperatuer);//顯示temperatuer
  154.         DelayMs(1000);
  155.         WriteCommand(0x01); //顯示清屏
  156.         ShowString(0,oil);            //顯示oil
  157.         DelayMs(1000);
  158.         WriteCommand(0x01); //顯示清屏               
  159. }
  160. void jin()//進入界面
  161. {
  162.         DelayMs(15);//延時保證信號穩(wěn)定
  163.         ShowString(0,TimeNum); //寫字符串
  164.         DelayMs(15);
  165.          ShowString(1,Test1);//寫字符串
  166.         DelayMs(2000);
  167.         WriteCommand(0x01); //顯示清屏

  168. }
  169. void Intput0() //外部中斷
  170. {
  171.         IT0=1;   //跳變沿觸發(fā)
  172.         EX0=1;   //開外部中斷允許
  173.         EA=1;    //開總中斷
  174. }
  175. void main(void)//主函數(shù)
  176. {
  177.                         
  178.         InitLcd();        //初始化
  179.         jin();      //進入界面
  180.         while(1)
  181.         {         
  182.         kk=keyscan();
  183.         cjm();           
  184.         }
  185. }
  186. void exit0() interrupt 0//中斷處理
  187. {
  188.         if(kk==1)
  189.           {        
  190.                   kk=0;
  191.                   WriteCommand(0x01); //顯示清屏
  192.                 ShowString(0, "the speed is:");
  193.                 ShowString(1, "        0.return");
  194.                 DelayMs(2000);
  195.                 WriteCommand(0x01); //顯示清屏
  196.           }        
  197.           if(kk==2)
  198.           {        
  199.                   kk=0;
  200.                   WriteCommand(0x01); //顯示清屏
  201.                 ShowString(0, "temperatuer is:");
  202.                 ShowString(1, "        0.return");
  203.                 DelayMs(2000);
  204.                 WriteCommand(0x01); //顯示清屏
  205.           }
  206.           if(kk==3)
  207.           {        
  208.                   kk=0;
  209.                   WriteCommand(0x01); //顯示清屏
  210.                 ShowString(0,"the oil is:     ");
  211.                 ShowString(1, "        0.return");
  212.                 DelayMs(2000);
  213.                 WriteCommand(0x01); //顯示清屏
  214.           }
  215.           if(kk==0)                   //返回界面
  216.           {         
  217.                   WriteCommand(0x01); //顯示清屏
  218.                 cjm();
  219.                  jin();
  220.           }               
  221.         kk=0;        
  222. }
復制代碼





TIM截圖20180627230656.png (33.85 KB, 下載次數(shù): 79)

TIM截圖20180627230656.png

1602液晶顯示顯示屏顯示.rar

91.72 KB, 下載次數(shù): 18, 下載積分: 黑幣 -5

1602顯示

1602液晶資料.pdf

261.92 KB, 下載次數(shù): 11, 下載積分: 黑幣 -5

1602的數(shù)據(jù)手冊

評分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

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

使用道具 舉報

沙發(fā)
ID:68429 發(fā)表于 2018-6-28 22:25 來自觸屏版 | 只看該作者
很好的資料
回復

使用道具 舉報

板凳
ID:627828 發(fā)表于 2019-10-22 14:47 | 只看該作者
謝謝分享,趕緊學習下
回復

使用道具 舉報

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

本版積分規(guī)則

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

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

快速回復 返回頂部 返回列表
亚洲成人av片| 99精品久久只有精品| 精品视频一二区| 午夜影院免费版| 亚洲精品国产品国语在线| 2018av男人天堂| 破处女黄色一级片| 亚洲aaaaaa| 亚洲色图一区二区| 日本肉肉一区 | xfav资源| 夜夜躁日日躁狠狠久久av| 免费一级特黄录像| 日韩精品在线看| 欧美xxav| 成人性a激情免费视频| 91视频在线免费| 欧美极品xxxx| 91网站视频在线观看| av漫画网站在线观看| 黄色av免费观看| 岳毛多又紧做起爽| 3d动漫啪啪精品一区二区免费 | 欧美亚洲色综久久精品国产| 国产麻豆电影在线观看| 欧美精品一区二区三区久久久| 国产视频在线观看一区二区三区| 午夜不卡一区| 男人天堂av网| 亚洲av无码成人精品区| 亚洲在线播放电影| 久久九九免费视频| 福利一区在线观看| 国产精品激情| 精品亚洲成人| 成视频免费观看在线看| 污污网站在线免费观看| 国产va在线播放| 又黄又爽又色的视频| 香港三级日本三级a视频| 亚洲成人av中文字幕| 国产精品人成在线观看免费| 国产精品久久久久久久久久妞妞| 视频一区在线| 麻豆资源在线| 久久久久久久久久网站| 色网站在线视频| 国产乱子伦精品无码专区| 国产欧美一区二区三区另类精品| 欧美这里有精品| 欧美综合国产| 久久超碰99| 国家队第一季免费高清在线观看| 亚洲欧美日本一区二区三区| 性做爰过程免费播放| 国产一区视频观看| 国产精品久久久久久久久男| 久久久久北条麻妃免费看| 亚洲国产精品成人va在线观看| 婷婷亚洲久悠悠色悠在线播放| 2023国产一二三区日本精品2022| 激情久久中文字幕| 菠萝菠萝蜜在线视频免费观看| 国产呻吟对白刺激无套视频在线| 中文字幕人妻丝袜乱一区三区 | 秋霞一区二区三区| 成人私拍视频| 国产乱妇乱子在线播视频播放网站| 精品国产高清自在线一区二区三区| 91精品国产高清一区二区三蜜臀| yy1111111| 亚洲欧洲日韩精品| 久久久综合av| 亚洲欧洲成人自拍| 99国产精品久| 国产91在线看| 国产一区二区美女诱惑| 亚洲精品3区| 久久久久久久| 国产无遮挡裸体视频在线观看| 春意影院在线| 精品人妻伦一区二区三区久久| 日韩一级av毛片| 催眠调教后宫乱淫校园| a级大片免费看| 亚洲精品成人在线播放| 欧美一区二区视频17c| 亚洲a∨日韩av高清在线观看| 国产精品人成电影| 国产精品自产拍高潮在线观看| 欧美一区二区三区四区久久 | 午夜精品久久久久久久99热黄桃| 中文字幕一区二区人妻视频| 国产一级做a爱片久久毛片a| 久久国产精品免费看| 日韩不卡视频在线| 中文字幕二区三区| a天堂中文在线观看| 丰满肉肉bbwwbbww| 精品国产99久久久久久宅男i| 中文天堂在线资源| 国产精品九九九九| 天堂av网手机版| 欧美乱大交做爰xxxⅹ小说| 九一在线免费观看| 黑鬼狂亚洲人videos| 日韩乱码一区二区| 姑娘第5集在线观看免费好剧| 亚洲一级黄色大片| www.97视频| 国产无遮挡免费视频| 亚洲精品一区二区18漫画| 无码人妻久久一区二区三区蜜桃| 亚洲一区二区三区综合| 国产91沈先生在线播放| 男女视频网站在线观看| 又色又爽又高潮免费视频国产| 国产精品区在线| 国产av国片精品| 天天碰免费视频| 岛国精品一区二区三区| 男人女人黄一级| 久久久久久蜜桃一区二区| 日本美女久久久| 国产又粗又猛又爽又黄的视频四季| 91成人福利视频| 无码视频在线观看| 午夜福利视频一区二区| 日本视频网址| 超碰在线电影| 在线免费av导航| 91电影在线播放| 忘忧草在线影院两性视频| 日本高清在线观看| 老司机午夜在线视频| 午夜欧美激情| 加勒比色老久久爱综合网| 福利一区二区| 成人日韩在线观看| 伊人久久国产| 久久九九热re6这里有精品 | 免费的一级黄色片| 日本一二区免费| 懂色av蜜臀av粉嫩av永久| 国产女主播在线播放| 国产人与禽zoz0性伦| 亚洲视频一区在线播放| 欧美超强性xxxxx| 天天操天天干天天爽| 亚洲av电影一区| aaaaa级片| 超碰caoporn久久| 91九色鹿精品国产综合久久香蕉| 激情欧美亚洲| 国产91精品露脸国语对白| 一区二区三区高清在线| 日韩欧美高清在线| 午夜精品福利电影| 欧美一区视久久| 亚洲综合激情视频| 久久精品欧美一区二区| 先锋影音男人| 精品一区二区三区免费站| 99在线欧洲视频| 白浆在线视频| 日韩欧美一区二区三区在线视频 | 久久久9999久久精品小说| 欧美日夜夜逼| 亚洲经典视频| 99视频精品免费观看| 1024日韩| 久久久久久久久久久电影| 国产精品久久久久影院亚瑟| 欧美精品三级日韩久久| 91av视频在线| 日韩在线第一区| 怡红院一区二区| 国产精品露脸视频| 白浆爆出在线观看| 激情开心成人网| 亚洲国产一区二区三区高清| 国产精品美女久久久久高潮| 亚洲成人精品视频在线观看| 国产精品入口日韩视频大尺度| av免费观看网| 日本黄色一级视频| 99免费视频| 女海盗2成人h版中文字幕| 欧美高清日韩| 久久久久99精品国产片| 亚洲国产精品大全| 成人动漫在线观看视频| 亚洲人视频在线| 91九色蝌蚪91por成人| 91亚洲视频在线观看| 奇米影视第四色7777| 精品网站在线| 日本视频中文字幕一区二区三区| 国产亚洲综合色| 亚洲国产精品小视频| 国产精品一区久久久| 狠狠97人人婷婷五月| 国产亚洲成人精品| 网站黄在线观看| 国产爆初菊在线观看免费视频网站| 亚洲永久av| 鲁大师成人一区二区三区| 天天av天天翘天天综合网| 欧美激情一级二级| 1024av视频| 国产精品国产精品国产| 婷婷丁香六月天| 麻豆av在线导航| 自拍偷拍欧美| 婷婷综合另类小说色区| 97婷婷大伊香蕉精品视频| 中文字幕免费高| 劲爆欧美第一页| 天天影视色香欲综合网天天录日日录| 免费观看成人性生生活片 | 亚洲一卡二卡三卡四卡无卡久久| 久久99精品久久久久久噜噜| 成人免费在线网| 亚洲精品一区二三区| 男女激情片在线观看| 免费成人av| 亚洲人成亚洲人成在线观看图片| 中文字幕亚洲一区二区三区五十路| 亚洲日本理论电影| 五月婷婷开心网| 狠狠干在线视频| 91日韩免费| 91久久精品一区二区三区| 91影视免费在线观看| 亚洲天堂第一区| 日韩av在线电影| 欧美5-7sexvideos处| 亚洲精品国产动漫| 亚洲欧美日韩人成在线播放| 欧美亚洲激情在线| 777久久精品一区二区三区无码| 国产奶水涨喷在线播放| 无限国产资源| 99精品国产一区二区三区| 欧美视频一区二区三区…| 亚洲一区二区中文| 亚洲人做受高潮| 麻豆av在线| 99视频这里有精品| 国产午夜精品一区二区| www.久久撸.com| 日本不卡免费新一二三区| 欧美色图亚洲天堂| 网址你懂得在线观看| 欧美va亚洲va日韩∨a综合色| 色域天天综合网| 国产欧美亚洲日本| 日韩成人在线免费视频| 精品视频三区| 图片一区二区| 一区二区三区自拍| 国产98在线|日韩| 国产成人啪精品午夜在线观看| 午夜国产在线| 你懂的视频一区二区| 色拍拍在线精品视频8848| 欧美国产二区| 中文字幕在线2018| 波多野结衣乳巨码无在线观看| 丁香天五香天堂综合| 高清一区二区三区四区五区| 伊人五月天婷婷| 福利视频电影| 99热国内精品| 精品国产一区二区三区忘忧草| 日韩国产小视频| 男人女人靠逼视频| 国产国产一区| 亚洲自拍偷拍av| 欧美日韩一区二| 国产精品久久久久久69| 在线女人免费视频| 亚洲欧洲成人av每日更新| 91精品天堂| 4438国产精品一区二区| av在线免费播放网站| 国产自产2019最新不卡| 97色在线播放视频| 殴美一级黄色片| 精品久久av| 成人性生交大片免费看中文网站| 国a精品视频大全| 99自拍偷拍视频| 丝袜美腿美女被狂躁在线观看| 国产成人精品一区二区三区四区 | jizz免费看| 亚洲黄色毛片| 久久久成人精品视频| 欧美性xxxx图片| 男人天堂资源在线| av不卡免费电影| 51精品在线观看| 国产无码精品在线观看| 日本不良网站在线观看| 亚洲美女在线一区| 天天综合网91| 亚洲 欧美 激情 另类| 中文亚洲欧美| 亚洲一线二线三线视频| 久久er99热精品一区二区三区| 亚洲视屏在线观看| 丁香婷婷久久| 色婷婷久久久综合中文字幕| 一级特黄妇女高潮| 国产精品乱码一区二区三区视频 | 国产黄色精品| 日韩免费高清av| 国产精品久久久久久户外露出| 区一区二区三区中文字幕| 国产成人在线观看免费网站| 国模精品一区二区三区| 天天干夜夜操| 一区二区三区中文字幕| 久久久高清视频| 精品九九久久| 欧美韩国理论所午夜片917电影| 黄色av小说在线观看| 看电视剧不卡顿的网站| 欧美美女黄色网| 午夜激情视频在线| 日韩欧美国产电影| 伊人久久久久久久久久久久 | 第九区2中文字幕| 成人免费在线观看| 欧美一区二区视频在线观看2022 | 最近的2019中文字幕免费一页| 亚洲性在线观看| 男女精品网站| 国产精品青草久久久久福利99| 免费男女羞羞的视频网站中文字幕妖精视频 | 成人av播放| gay视频丨vk| 欧美日韩国产一区在线| 羞羞的视频在线| 一区二区三区四区日本视频| 在线成人激情视频| 日本高清视频免费看| 粉嫩欧美一区二区三区高清影视| www.四虎成人| 欧美xxxx做受欧美护士| 欧美精品激情在线观看| 国产精品亚洲第五区在线| 国产精品久久久久久户外露出 | 天天综合在线观看| 国产精品白嫩初高中害羞小美女 | 中文字幕免费观看一区| 97人妻精品一区二区三区免费 | 热草久综合在线| 黄色毛片网站| 欧美日韩性视频在线| 久久久香蕉视频| 国产精品毛片在线| 欧美爱爱视频免费看| 精品91久久| 日本久久久久久久久久久| 好色视频app| 色乱码一区二区三区88| 国产又黄又猛又粗又爽| 卡一卡二国产精品| 最新免费av网址| 91精品丝袜国产高跟在线| 亚洲影院色无极综合| 黄污在线观看| 亚洲福利影片在线| 韩国中文字幕hd久久精品| 91片黄在线观看| 中文字幕一区二区人妻在线不卡 | 色综合天天综合网国产成人综合天| 粉嫩av性色av蜜臀av网站| 亚洲高清毛片| 毛片在线视频播放| 亚洲综合视频| 91嫩草国产在线观看| 你懂的视频在线观看| 一区二区三区天堂av| 国内精品久久久久久影院老狼| 一区二区在线观看视频| 日本一区二区不卡在线| 久久99国产精品免费| 久久久无码人妻精品无码| 九九亚洲精品| 亚洲一区三区| 欧美电影免费观看高清完整| 日本精品久久久| 欧美5-7sexvideos处| 在线观看不卡av| 浮力影院网站午夜| 日韩一级高清毛片| 亚洲综合激情另类专区老铁性| 亚洲日本青草视频在线怡红院|