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

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

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 2832|回復(fù): 4
收起左側(cè)

有誰(shuí)幫我看下這個(gè)為啥仿真不出來(lái)

[復(fù)制鏈接]
ID:189095 發(fā)表于 2017-5-5 10:43 | 顯示全部樓層 |閱讀模式

液晶顯示屏上啥都沒(méi)有

液晶顯示屏上啥都沒(méi)有

程序如下:
#include <reg51.h>
#define uint unsigned int
#define uchar unsigned char
sbit rs=P3^5;
sbit rw=P3^6;
sbit e=P3^7;
uchar table;
char en;
/*uchar code table1[]="Huan Ying Cheng Zuo";
uchar code table2[]="Li Gong Nan Yuan Dao Le";
uchar code table3[]="Li Gong Xue Yuan Dao Le";
uchar code table4[]="Hua ban Qiao Dao Le";
uchar code table5[]="Xie Xie Cheng Zuo"; */
uchar code table1[]="LCD1206 check ok";
uchar code table2[]="study up";
void delay(uint n)
{
uint x,y;
for(x=n;x>0;x--)
for(y=110;y>0;y--);
}
void lcd_wcom(uchar com)
{
rs=0;
rw=0;
P0=com;
delay(5);
en=1;
en=0;
}
void lcd_wdat(uchar dat)
{
rs=1;
rw=0;
P0=dat;
delay(5);
en=1;
en=0;
}
void lcd_init()
{
lcd_wcom(0x38);
lcd_wcom(0x0c);
lcd_wcom(0x06);
lcd_wcom(0x01);
}
void main()
{
uchar n,m=0;
lcd_init();
lcd_wcom(0x80);
for(m=0;m<16;m++)
{
  lcd_wdat(table1[m]);
  delay(200);
}
lcd_wcom(0x80+0x44);
for(n=0;n<8;n++)
{
  lcd_wdat(table2[n]);
  delay(200);
}
while(1);
}

回復(fù)

使用道具 舉報(bào)

ID:110456 發(fā)表于 2017-5-7 12:41 | 顯示全部樓層
#include <reg51.h>
#include <intrins.h>       
#define uint unsigned int
#define uchar unsigned char
#define lcd_data P0

sbit RS=P2^5;
sbit RW=P2^6;
sbit E=P2^7;

/*uchar code table1[]="Huan Ying Cheng Zuo";
uchar code table2[]="Li Gong Nan Yuan Dao Le";
uchar code table3[]="Li Gong Xue Yuan Dao Le";
uchar code table4[]="Hua ban Qiao Dao Le";
uchar code table5[]="Xie Xie Cheng Zuo"; */

uchar code table1[]="LCD1206 check ok";
uchar code table2[]="study up";

void lcd_w_cmd(unsigned char com);        //寫(xiě)命令字函數(shù)
void lcd_w_dat(unsigned char dat);         //寫(xiě)數(shù)據(jù)函數(shù)
unsigned char lcd_r_start();                //讀狀態(tài)函數(shù)
void lcd_int1();                                //LCD初始化函數(shù)

void  delay (uint n)
{
uint x,y;
for(x=n;x>0;x--)
for(y=110;y>0;y--);
}
void delay1()      
{  
   _nop_();
   _nop_();
   _nop_();
}

unsigned char lcd_r_start()         
{
   unsigned char s;
   RW=1;                //RW=1,RS=0,讀LCD狀態(tài)
   delay1();
   RS=0;
   delay1();
   E=1;                        //E端時(shí)序
   delay1();
   s=lcd_data;                //從LCD的數(shù)據(jù)口讀狀態(tài)
   delay1();
   E=0;
   delay1();
   RW=0;
   delay1();
   return(s);                //返回讀取的LCD狀態(tài)字
}
//函數(shù)名:lcd_w_cmd
//函數(shù)功能:寫(xiě)命令字
//形式參數(shù):命令字已存入com單元中
//返回值:無(wú)
void lcd_w_cmd(unsigned char com)   
{
   unsigned char i;
   do {                        // 查L(zhǎng)CD忙操作
      i=lcd_r_start();        // 調(diào)用讀狀態(tài)字函數(shù)
      i=i&0x80;                // 與操作屏蔽掉低7位
      delay(2);
      } while(i!=0);        // LCD忙,繼續(xù)查詢(xún),否則退出循環(huán)
          RW=0;
          delay1();
          RS=0;                        // RW=1,RS=0,寫(xiě)LCD命令字
          delay1();
          E=1;                        //E端時(shí)序
          delay1();
          lcd_data=com;                //將com中的命令字寫(xiě)入LCD數(shù)據(jù)口
          delay1();
          E=0;
          delay1();
          RW=1;
          delay(255);
}
//函數(shù)名:lcd_w_dat
//函數(shù)功能:寫(xiě)數(shù)據(jù)
//形式參數(shù):數(shù)據(jù)已存入dat單元中
//返回值:無(wú)
void lcd_w_dat(unsigned char dat)   
{
   unsigned char i;
   do {                        // 查忙操作
      i=lcd_r_start();        // 調(diào)用讀狀態(tài)字函數(shù)
      i=i&0x80;         // 與操作屏蔽掉低7位
      delay(2);            
      } while(i!=0);        // LCD忙,繼續(xù)查詢(xún),否則退出循環(huán)
   RW=0;
   delay1();
   RS=1;                // RW=1,RS=0,寫(xiě)LCD命令字
   delay1();
   E=1;                        // E端時(shí)序
   delay1();
   lcd_data=dat;                // 將dat中的顯示數(shù)據(jù)寫(xiě)入LCD數(shù)據(jù)口
   delay1();
   E=0;
   delay1();
   RW=1;
   delay(255);
}
void lcd_init()
{
   lcd_w_cmd(0x38);        // 設(shè)置工作方式
   lcd_w_cmd(0x0c);        // 設(shè)置光標(biāo)
   lcd_w_cmd(0x01);        // 清屏
   lcd_w_cmd(0x06);        // 設(shè)置輸入方式
   lcd_w_cmd(0x80);        // 設(shè)置初始顯示位置
}
void main()
{
uchar n,m=0;
lcd_init();
lcd_w_cmd(0x80);
for(m=0;m<16;m++)
{
  lcd_w_dat(table1[m]);
  delay(200);
}

while(1)
{
lcd_w_cmd(0xC4);
for(n=0;n<8;n++)
{
lcd_w_dat(table2[n]);
  delay(200);
}
}
}
程序附上,你可以看看。我只改變了,使能端,你可以改。

你的主程序不應(yīng)該寫(xiě)while(1);等待,還有你1602的各個(gè)函數(shù)有誤

你的主程序不應(yīng)該寫(xiě)while(1);等待,還有你1602的各個(gè)函數(shù)有誤
回復(fù)

使用道具 舉報(bào)

ID:111634 發(fā)表于 2017-5-7 20:19 | 顯示全部樓層
本帖最后由 zl2168 于 2017-5-7 20:38 編輯

實(shí)例67  LCD1602顯示屏顯示
本例編制的LCD 1602顯示程序標(biāo)準(zhǔn)化程度很好,若要顯示其他字符,只需給數(shù)組x[16]、y[16]重新賦值即可。
Proteus仿真一下,確認(rèn)有效。
實(shí)例61 LCD1602顯示屏顯示.rar (49.26 KB, 下載次數(shù): 4)
1602.jpg


以上摘自張志良編著《80C51單片機(jī)仿真設(shè)計(jì)實(shí)例教程——基于Keil CProteus》清華大學(xué)出版社ISBN 978-7-302-41682-1
。書(shū)中電路和程序設(shè)計(jì)有詳細(xì)說(shuō)明,程序語(yǔ)句條條有注解。
仿真電路和Hex文件能在清華出版社網(wǎng)站免費(fèi)下載,程序源代碼只能到書(shū)上看了。到圖書(shū)館借,或到新華書(shū)店翻閱,或到網(wǎng)上書(shū)店打折購(gòu)買(mǎi)。




回復(fù)

使用道具 舉報(bào)

ID:159139 發(fā)表于 2017-5-8 01:11 來(lái)自觸屏版 | 顯示全部樓層
謝謝分享,我下個(gè)學(xué)習(xí)一下。
回復(fù)

使用道具 舉報(bào)

ID:92306 發(fā)表于 2017-5-8 09:19 | 顯示全部樓層

謝謝分享,我下個(gè)學(xué)習(xí)一下。
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 国产一区二区三区在线 | 黄色录像免费看 | 久草视频免费在线观看 | 欧美视频免费 | 精品三级在线观看 | a视频在线观看 | 亚洲一区视频在线 | 成年人黄色 | 久久综合av| 教室脔到她哭h粗话h好爽视频 | 伊人av影院 | 欧美精品在线观看 | 欧美一区二区三区在线视频 | 激情五月激情综合网 | 亚洲精品欧美 | 97精品视频在线观看 | 中文字幕三区 | 91蝌蚪少妇| 国产精品日韩在线 | 欧美一级视频 | 日韩黄色录像 | av小说在线观看 | 九九精品视频在线观看 | 日韩福利片 | 欧美视频免费在线观看 | 国产免费一区二区三区最新不卡 | 538精品视频| 偷拍一区二区三区 | 国产成人免费在线观看 | 国产激情久久 | 啪啪高潮动态图 | 伊人av影院 | 人人爽人人爽 | av在线免费观看网站 | 91精品国产日韩91久久久久久 | 五月婷婷六月丁香 | 69福利视频 | 99热国产在线 | 色综合色综合 | 亚洲免费a| 中文字幕精品一区久久久久 |