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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

51單片機1602顯示實驗

[復制鏈接]
跳轉到指定樓層
樓主
  1. #include<reg52.h>
  2. #include<intrins.h>
  3. #define uchar unsigned char
  4. #define uint unsigned int
  5. sbit rs=P2^0;
  6. sbit rw=P2^1;
  7. sbit ep=P2^2;
  8. uchar code dis1[]={"5446554446"};
  9. uchar code dis2[]={"7799553221"};
  10. void delay(uchar ms)
  11. {
  12.         uchar i;
  13.         while(ms--)
  14.                 for(i=0;i<120;i++);
  15. }
  16. uchar Busy_Check(void)          //測試LCD忙碌狀態
  17. {
  18.         uchar LCD_Status;
  19.         rs=0;
  20.         rw=1;
  21.         ep=1;
  22.         _nop_();
  23.         _nop_();
  24.         _nop_();
  25.         _nop_();
  26.         LCD_Status=P0&0x80;
  27.         ep=0;
  28.         return LCD_Status;
  29. }
  30. void lcd_wcmd(uchar cmd)  //寫入指令數據到LCD
  31. {
  32.         while(Busy_Check());  //等待LCD空閑
  33.         rs=0;
  34.         rw=0;
  35.         ep=0;
  36.         _nop_();
  37.         _nop_();
  38.         P0=cmd;
  39.         _nop_();
  40.         _nop_();
  41.         _nop_();
  42.         _nop_();
  43.         ep=1;
  44.         _nop_();
  45.         _nop_();
  46.         _nop_();
  47.         _nop_();
  48.         ep=0;
  49. }
  50. void lcd_pos(uchar pos)          //設定顯示位置
  51. {
  52.         lcd_wcmd(pos|0x80);          //設置LCD當前光標的位置
  53. }
  54. void lcd_wdat(uchar dat)  //寫入字符顯示數據到LCD
  55. {
  56.         while(Busy_Check());  //等待LCD空閑
  57.         rs=1;
  58.         rw=0;
  59.         ep=0;
  60.         P0=dat;
  61.         _nop_();
  62.         _nop_();
  63.         _nop_();
  64.         _nop_();
  65.         ep=1;
  66.         _nop_();
  67.         _nop_();
  68.         _nop_();
  69.         _nop_();
  70.         ep=0;
  71. }
  72. void LCD_disp(void)
  73. {
  74.         uchar i;
  75.         lcd_pos(1);                          //設置顯示位置為第1行的第2個字符
  76.         i=0;
  77.         while(dis1[i]!='\0')
  78.         {
  79.                 lcd_wdat(dis1[i]);//在第1行顯示字符串
  80.                 i++;
  81.         }
  82.         lcd_pos(0x41);                  //設置顯示位置為第2行第2個字符
  83.         i=0;
  84.         while(dis2[i]!='\0')
  85.         {
  86.                 lcd_wdat(dis2[i]);//在第2行顯示字符串
  87.                 i++;
  88.         }
  89. }
  90. void lcd_init(void)                  //LCD初始化
  91. {
  92.         lcd_wcmd(0x38);                  //設置顯示格式為16*2行顯示,5*7點陣,8位數據接口
  93.         delay(1);
  94.         lcd_wcmd(0x0f);                  //0x0f--顯示開關設置,顯示光標并閃爍
  95.         delay(1);
  96.         lcd_wcmd(0x06);                  //0x06--讀寫后指針加1
  97.         delay(1);
  98.         lcd_wcmd(0x01);                  //清除LCD的內容
  99.         delay(1);
  100. }
  101. void main(void)
  102. {
  103.         lcd_init();                          //初始化LCD
  104.         delay(10);
  105.         LCD_disp();
  106.         while(1);
  107. }
復制代碼




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

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 中文av在线播放 | 亚洲综合国产精品 | 九九99精品 | 亚洲成人综合社区 | 最新黄色在线观看 | 国产精品99久久久久久www | 狠狠操狠狠操 | 国产视频h | 亚洲欧美日韩精品久久亚洲区 | 日本一道本视频 | 91视频播放 | 日韩在线观看一区 | 日韩人体视频 | 精品国产青草久久久久96 | 欧美mv日韩mv国产网站91进入 | 久久久久国产一区二区三区 | 精品乱人伦一区二区三区 | 成年免费大片黄在线观看岛国 | 国产精品成av人在线视午夜片 | 中文字幕黄色大片 | 黄网站涩免费蜜桃网站 | 久久av网站 | 日韩一区二区三区精品 | 国产精品一区一区三区 | 一级在线免费观看 | 午夜激情国产 | 亚洲精品视频一区二区三区 | 日韩成人在线看 | 欧美一级在线视频 | 国产高清在线视频 | av天天看 | 久久成人精品视频 | 97精品超碰一区二区三区 | 国产在线观看不卡一区二区三区 | 国产精品成人在线 | 成人一区二区三区在线 | 国产精品一区二区在线 | 天天插天天狠天天透 | 亚洲美女在线一区 | 在线看无码的免费网站 | 欧美精品一区三区 |