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

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

QQ登錄

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

搜索
查看: 2384|回復(fù): 5
打印 上一主題 下一主題
收起左側(cè)

為什么我的主函數(shù)這樣寫,在51單片機(jī)液晶上按上下鍵沒(méi)有任何顯示?

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:521078 發(fā)表于 2019-10-19 11:45 | 只看該作者 |只看大圖 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
10黑幣
Keil4編寫環(huán)境:A/D數(shù)模轉(zhuǎn)換和按鍵應(yīng)用操作顯示到Lcd1602上,子程序Lcd1602.c,keyboard.c,I2C.c程序略,跪求主程序
程序要求實(shí)現(xiàn):按上鍵查詢?cè)O(shè)定的電壓值上下限
                      按下鍵查詢當(dāng)前的電壓值(當(dāng)前電壓值是滑動(dòng)變阻器所配置的電壓值)
                      數(shù)據(jù)采集器件用的是PCF8591測(cè)AIN0的值
為什么我的主函數(shù)這樣寫,在51液晶上按上下鍵沒(méi)有任何顯示,跪求主函數(shù),開(kāi)發(fā)板是金三角開(kāi)發(fā)板

#include <reg52.h>
sbit BUZZ = P1^6;  
bit flag300ms = 1;
bit enBuzz = 0;
unsigned char T0RH = 0;
unsigned char T0RL = 0;
unsigned int CountDown = 0;
void ConfigTimer0(unsigned int ms);
unsigned char GetADCValue(unsigned char chn);
void ValueToString(unsigned char *str, unsigned char val);
extern void I2CStart();
extern void I2CStop();
extern void KeyScan();
extern void KeyDriver();
extern unsigned char I2CReadACK();
extern unsigned char I2CReadNAK();
extern bit I2CWrite(unsigned char dat);
extern void InitLcd1602();
extern void LcdShowStr(unsigned char x, unsigned char y, unsigned char *str);
void main()
{
    EA = 1;
   ConfigTimer0(10);  
   InitLcd1602();
// LcdShowStr (0, 0, "moli");
while(1)
{
     KeyDriver();
}
}
unsigned char GetADCValue (unsigned char chn)
{
      unsigned char val;
     I2CStart();
    if (!I2CWrite (0x48<<1))
    {
        I2CStop();
        return 0;
    }
I2CWrite (0x40 | chn);
I2CStart();
I2CWrite ((0x48<<1) | 0x01);
I2CReadACK();
val = I2CReadNAK();
I2CStop();
return val;
}
void ValueToString(unsigned char *str, unsigned char val)
{
     
  val = (val * 25) / 55;
  str[0] = (val/10) + '0';  
  str[1] = '.';   //С????
  str[2] = (val%10) + '0';  
  str[3] = 'V';  
  str[4] = '\0';
}
void KeyTaAction()
{
    unsigned char val;
    unsigned char str[10];
    InitLcd1602();
    LcdShowStr (0, 0, "TABANXINHAO");  
     while (1)
    {
         if (flag300ms)
     {
         flag300ms = 0;
           
        val = GetADCValue(0);
        ValueToString(str, val);
        LcdShowStr(0, 1, str);
      if (val >= 200)
      {
         enBuzz = 1;
        if (enBuzz)
           BUZZ = ~BUZZ;
      }
      else
          BUZZ = 1;
   }
  }
}
void KeyAction (unsigned char keycode)
{
   if(keycode == 0x26)
    {
      KeyTaAction();
    }
  else if (keycode == 0x28)
   {
     LcdShowStr (0, 0, "MAX");
     LcdShowStr (0, 1, 2^5);   
     LcdShowStr (6, 0, "MIN");
     LcdShowStr (6, 1, 0^0);
   }
}
void ConfigTimer0(unsigned int ms)
{
    unsigned long tmp;  
tmp = 11059200 / 12;
tmp = (tmp * ms) / 1000;
tmp = 65536 - tmp;
tmp = tmp + 12;
T0RH = (unsigned char)(tmp >> 8);
T0RL = (unsigned char)tmp;
TMOD &= 0xF0;
TMOD |= 0x01;
TH0 = T0RH;
TL0 = T0RL;
ET0 = 1;
TR0 = 1;
}
void InterruptTimer0() interrupt 1
{
    static unsigned char tmr300ms = 0;
TH0 = T0RH;
TL0 = T0RL;
tmr300ms++;
if (tmr300ms >= 30)  
{
     tmr300ms = 0;
  flag300ms = 1;
}
}

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

使用道具 舉報(bào)

沙發(fā)
ID:619594 發(fā)表于 2019-10-19 12:40 | 只看該作者
1、沒(méi)有看到你寫的液晶驅(qū)動(dòng)程序
2、沒(méi)有看到你寫的AD轉(zhuǎn)換程序
3、沒(méi)有看到有按鍵定義
回復(fù)

使用道具 舉報(bào)

板凳
ID:626591 發(fā)表于 2019-10-19 12:54 | 只看該作者
要先確定是不是LCD1602的程序問(wèn)題
回復(fù)

使用道具 舉報(bào)

地板
ID:521078 發(fā)表于 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); }
回復(fù)

使用道具 舉報(bào)

5#
ID:521078 發(fā)表于 2019-10-19 14:46 | 只看該作者
來(lái)51學(xué)習(xí)2 發(fā)表于 2019-10-19 12:40
1、沒(méi)有看到你寫的液晶驅(qū)動(dòng)程序
2、沒(méi)有看到你寫的AD轉(zhuǎn)換程序
3、沒(méi)有看到有按鍵定義

大佬,我重新加上了,重新又發(fā)了個(gè)懸賞帖,望解答下求51大神
http://www.zg4o1577.cn/bbs/dpj-171595-1.html
(出處: 單片機(jī)論壇)
回復(fù)

使用道具 舉報(bào)

6#
ID:521078 發(fā)表于 2019-10-19 14:47 | 只看該作者
zycstc 發(fā)表于 2019-10-19 12:54
要先確定是不是LCD1602的程序問(wèn)題

求51大神
http://www.zg4o1577.cn/bbs/dpj-171595-1.html
(出處: 單片機(jī)論壇)
大佬看這個(gè)懸賞貼,程序全部貼上了,,謝謝
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 免费激情网站 | 日韩中文字幕在线观看 | 热99视频| 亚洲精品乱码久久久久久按摩观 | 成人妇女免费播放久久久 | 日韩在线91 | 国产精品精品视频一区二区三区 | 久久专区 | 91精品国产综合久久福利软件 | 日本一区二区视频 | 国产午夜精品久久久 | 91麻豆精品国产91久久久更新资源速度超快 | 国产一区 | 国产精品久久久久久久久久妇女 | 国产精彩视频在线观看 | 黄视频在线网站 | 伊人久久精品一区二区三区 | 久久国产成人午夜av影院武则天 | 中文字幕在线免费观看 | 成人毛片在线观看 | 亚洲成人av一区二区 | 91精品久久久 | 国产不卡一区在线观看 | 操久久| 久久久久久国产精品免费免费狐狸 | 九色在线 | 精品视频一区二区三区在线观看 | 一区二区三区av | 国产精品美女在线观看 | 国产视频久久久 | 中文字幕 国产精品 | 久久精品免费观看 | 亚洲精品99 | 99pao成人国产永久免费视频 | 欧美一区二区三区久久精品 | 国产精品成人久久久久 | 日韩av.com | 天天看天天摸天天操 | 99在线国产 | 中文字幕在线观看第一页 | 成人黄色av |