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

標題: lcd1602顯示器單片機程序不能顯示內容怎么回事哪位大神能幫我看看啊 [打印本頁]

作者: 流年似水@    時間: 2017-4-20 20:08
標題: lcd1602顯示器單片機程序不能顯示內容怎么回事哪位大神能幫我看看啊
#include<reg51.h>        //頭文件
#define uchar unsigned char    //預定義
#define uint unsigned int
#define lcd_dat  P0
sbit lcdrs=P2^6;     //1602的數據/指令選擇控制線
sbit lcdrw=P2^5;      //1602的讀寫控制線
sbit lcden=P2^4;      //1602的使能控制線
sbit yihao=P2^0;        //一號病房按鍵
sbit erhao=P2^1;
sbit sanhao=P2^2;
sbit sihao=P2^3;
uchar table1[]="Number";
uchar table2[]="1234";
void delay(uint z)       //延時子程序
{
  uint x,y;
  for(x=z;x>0;x--)   for(y=110;y>0;y--);
}
void write_com(uchar com)    //寫命令子程序
{  
lcdrs=0;   
lcdrw=0;     
P0=com;  
delay(5);  
lcden=1;
delay(3);
lcden=0;
}
void write_data(uchar date)     //寫數據子程序
{
lcdrs=1;   
lcdrw=0;     
P0=date;   
delay(5);  
lcden=1;  
delay(3);  
lcden=0;
}
void init()              //1602初始化子程序
{
write_com(0x38);//顯示模式設置。        
delay(5);
write_com(0x0c);//關光標,不閃爍        
delay(5);  
write_com(0x06);  //顯示地址遞增,即寫一個數據后,顯示位置右移位         
delay(5);
write_com(0x01); //清屏
delay(5); }
void Number()                //顯示Number子程序
{uchar m;
write_com(0x80);
       for(m=0;m<6;m++)     //將table[]中的數據依次寫入1602顯示     
{  
            write_data(table1[m]);                        
delay(200);
}
}
void main()            //主函數  
{
unsigned char FLAG;   //FLAG的值為P2口的值  
init();
do
{  
   FLAG=P2;
switch(FLAG&0X0f)      //屏蔽P2口高四位
{
case 0X0E:
       Number();
       write_com(0x80+10);   //顯示地址設為90H(即10H,)上排第十位               
           write_data(table2[0]);                  
delay(200);     
break;
case 0X0D:
        Number();
        write_com(0x80+10);   //顯示地址設為90H(即10H,)上排第十位               
                write_data(table2[1]);                       
        delay(200);           
        break;
case 0X0B:
       Number();
       write_com(0x80+10);   //顯示地址設為90H(即10H,)上排第十位               
           write_data(table2[2]);                        
       delay(200);      
      break;
case 0X07:      
       Number();
       write_com(0x80+10);   //顯示地址設為90H(即10H,)上排第十位            
           write_data(table2[3]);                       
        delay(200);            
        break;
default:
        break;   
       }   
   }
while(1);
}



作者: imxuheng    時間: 2017-4-20 21:25
沒什么問題,下圖就是按下按鍵后的效果

無標題.png (18.46 KB, 下載次數: 107)

無標題.png

作者: zl2168    時間: 2017-4-20 21:32
本帖最后由 zl2168 于 2017-4-20 21:34 編輯

實例67  LCD1602顯示屏顯示
Proteus仿真一下,確認有效。
實例61 LCD1602顯示屏顯示.rar (49.26 KB, 下載次數: 23)

以上摘自張志良編著《80C51單片機仿真設計實例教程——基于Keil CProteus》清華大學出版社ISBN 978-7-302-41682-1。書中電路和程序設計有詳細說明,程序語句條條有注解。

作者: 流年似水@    時間: 2017-4-24 15:52
imxuheng 發表于 2017-4-20 21:25
沒什么問題,下圖就是按下按鍵后的效果

如果我想讓這個設計可以復位的話程序還得怎么改呢?
作者: imxuheng    時間: 2017-4-24 15:53
流年似水@ 發表于 2017-4-24 15:52
如果我想讓這個設計可以復位的話程序還得怎么改呢?

復位是什么意思




歡迎光臨 (http://m.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 欧美一级片 | 久久中文字幕一区 | 国产一区二区三区 | 亚洲激情综合 | 一区二区免费视频 | 欧美a v在线| 激情婷婷| 一区二区三区不卡视频 | 一级做a爰片性色毛片 | 91精品国产色综合久久 | 亚洲a级 | 91精品国产91久久久 | 亚洲国产精品久久久久 | 色婷婷综合久久久中字幕精品久久 | 大陆一级毛片免费视频观看 | 国产精选一区 | 日韩高清一区 | 亚洲精品久久久一区二区三区 | 中文字幕中文字幕 | 久久久91精品国产一区二区三区 | 一级做a毛片 | 精品久久一区二区 | 天天影视色综合 | 亚洲视频区 | 亚洲欧美精品国产一级在线 | 超碰人人做 | 日韩成人在线网站 | 天堂在线www| 国产精品18久久久 | 国产精品高潮呻吟久久 | 日韩欧美中文 | 国产在线观看一区二区 | 蜜桃在线一区二区三区 | 日本高清视频在线播放 | 色999视频| 精品国产鲁一鲁一区二区张丽 | 国产午夜视频 | 91网站视频在线观看 | 日韩在线免费视频 | 国产欧美精品区一区二区三区 | 国产乱码精品一区二区三区中文 |