欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索

為什么我的主函數這樣寫,在51單片機液晶上按上下鍵沒有任何顯示?

查看數: 2668 | 評論數: 5 | 收藏 1
關燈 | 提示:支持鍵盤翻頁<-左 右->
    組圖打開中,請稍候......
發布時間: 2019-10-19 11:45

正文摘要:

Keil4編寫環境:A/D數模轉換和按鍵應用操作顯示到Lcd1602上,子程序Lcd1602.c,keyboard.c,I2C.c程序略,跪求主程序 程序要求實現:按上鍵查詢設定的電壓值上下限            ...

回復

ID:521078 發表于 2019-10-19 14:47
zycstc 發表于 2019-10-19 12:54
要先確定是不是LCD1602的程序問題

求51大神
http://www.raoushi.com/bbs/dpj-171595-1.html
(出處: 單片機論壇)
大佬看這個懸賞貼,程序全部貼上了,,謝謝
ID:521078 發表于 2019-10-19 14:46
來51學習2 發表于 2019-10-19 12:40
1、沒有看到你寫的液晶驅動程序
2、沒有看到你寫的AD轉換程序
3、沒有看到有按鍵定義

大佬,我重新加上了,重新又發了個懸賞帖,望解答下求51大神
http://www.raoushi.com/bbs/dpj-171595-1.html
(出處: 單片機論壇)
ID:521078 發表于 2019-10-19 14:37
#include <reg52.h> #define LCD1602_DB P0 sbit LCD1602_RS = P1^0; sbit LCD1602_RW = P1^1; sbit LCD1602_E = P1^5; /*???????????*/ void LcdWaitReady() {     unsigned char sta;         LCD1602_DB = 0xFF;         LCD1602_RS = 0;         LCD1602_RW = 1;         do{            LCD1602_E = 1;            sta = LCD1602_DB; //???????            LCD1602_E = 0;         }while(sta & 0x80);           //Bit7????1?????????????????????????0?? } /*??LCD1602???д??????????cmd-??д?????????*/ void LcdWriteCmd(unsigned char cmd) {      LcdWaitReady();          LCD1602_RS = 0;          LCD1602_RW = 0;          LCD1602_DB = cmd;          LCD1602_E = 1;          LCD1602_E = 0; } /*??LCD1602???д???????????dat-??д???????*/ void LcdWriteDat(unsigned char dat) {      LcdWaitReady();          LCD1602_RS = 1;          LCD1602_RW = 0;          LCD1602_DB = dat;          LCD1602_E = 1;          LCD1602_E = 0; } /*???????RAM?????????????λ?????x,y??-????????????????*/ void LcdSetCursor(unsigned char x, unsigned char y) {      unsigned char addr;          if (y == 0)                addr = 0x00 + x;          else              addr = 0x40 + x;          LcdWriteCmd(addr | 0x80); } /*???????????????????x,y??-????????????????str-????????*/ void LcdShowStr(unsigned char x, unsigned char y, unsigned char *str) {     LcdSetCursor(x, y);         while (*str != '\0')           {             LcdWriteDat(*str++);         } } /*?????1602???*/ void InitLcd1602() {     LcdWriteCmd(0x38);         LcdWriteCmd(0x0C);         LcdWriteCmd(0x06);         LcdWriteCmd(0x01); }
ID:626591 發表于 2019-10-19 12:54
要先確定是不是LCD1602的程序問題
ID:619594 發表于 2019-10-19 12:40
1、沒有看到你寫的液晶驅動程序
2、沒有看到你寫的AD轉換程序
3、沒有看到有按鍵定義

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表