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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

為什么我單片機驅動lcd1602只亮不顯示?

[復制鏈接]
跳轉到指定樓層
樓主

#include<reg51.h>
#include<intrins.h>
#define uint unsigned int
#define uchar unsigned char

/*LCD1602顯示模塊*/
/*用于PROTUES仿真
#define LCD1602_DATAPINS P2
sbit LCD1602_RS=P3^0;
sbit LCD1602_RW=P3^1;            
sbit LCD1602_E=P3^2;      */


#define LCD1602_DATAPINS P0
sbit LCD1602_RS=P2^6;
sbit LCD1602_RW=P2^5;            
sbit LCD1602_E=P2^7;

/*按鍵調節模塊*/
sbit k1=P1^1;//功能鍵
sbit k2=P1^2;//加
sbit k3=P1^3;//減
void keyscan();
void key1_switch();
void key2_add();
void key3_minus();

uchar k_num;
void LCD1602_SetTemp(uchar add,uchar dat);
uchar high=90,low=10,set_t=30,set_d=2;//這里的數據類型可能有問題!!

/*其他模塊接口*/
sbit DSPORT=P3^7; //溫度傳感器單總線端
sbit SPEAKER=P1^5;//蜂鳴器
sbit RELAY=P1^4;//繼電器
sbit COOLER=P1^7;//降溫裝置

/*LCD1602相關函數*/
void Delay1us(uint a);
void LCD1602_WriteCom(uchar com);//LCD1602寫入8位命令子函數
void LCD1602_WriteData(uchar dat);  
void LCD1602_Init();//LCD1602初始化子程序        
void LCD1602_ShowTemp(int temp);

/*DS18B20溫度傳感器相關函數*/
void  Delay15us(uchar aa);
uchar Ds18b20Init();
void  Ds18b20WriteByte(uchar dat);
uchar Ds18b20ReadByte();
void  Ds18b20SwitchTemp();
int   Ds18b20ReadTemp();

float temp_max=125.00,temp_min=-55.00;
uchar ii=0,jj=0,kk=0;
uchar words_h[2]={"H="};
uchar words_l[2]={"L="};
uchar words_s[4]={"Set="};
void Sound();
void Temp_control(int temp);
uchar count=0;//用來解決主程序執行太快,按鍵光標來不及顯示的問題

void Temp_control(int temp)
{
unsigned int kk=400;
uchar set_h,set_l;
set_h=set_t+set_d;
set_l=set_t-set_d;

  if (temp<=set_h&&temp>=set_l) //設定溫度范圍之內
  {
     RELAY = 0; //繼電器斷開
    COOLER=0;//風扇關閉
  }
  else
  {
   TR0=0;

   while (kk--)
   {  
   Sound();
   }
   RELAY = 1; //繼電器打開,外電路(常開觸電)閉合加熱
   if (temp>=set_h)//溫度過高
   {
    RELAY = 0; //繼電器斷開
     COOLER=1;//打開
   }
   TR0=1;
  }
}

/*其他模塊相關函數*/
void Sound()//蜂鳴器
{   
SPEAKER=1;
Delay15us(40);
SPEAKER=0;
Delay15us(40);
}

void Delay1us(uint a)
{
uint b,c;
for(c=a;c>0;c--)
  for(b=110;b>0;b--);
}

void LCD1602_WriteCom(uchar com)   //寫入命令
{
LCD1602_E=0;
LCD1602_RS=0;//0就寫指令
LCD1602_RW=0; //0就是寫
LCD1602_DATAPINS=com;
Delay

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

使用道具 舉報

沙發
ID:465981 發表于 2020-10-28 13:02 | 只看該作者
看了一下代碼,你把/*LCD1602顯示模塊*/ /*用于PROTUES仿真 #define LCD1602_DATAPINS P2 sbit LCD1602_RS=P3^0; sbit LCD1602_RW=P3^1;             sbit LCD1602_E=P3^2;      */這段你都注釋掉了,但是仿真還是按照這段代碼連線,這樣怎么能顯示?
回復

使用道具 舉報

板凳
ID:188811 發表于 2020-10-28 14:24 | 只看該作者
亮說明背光沒問題,不顯示還是驅動沒寫好
回復

使用道具 舉報

地板
ID:835700 發表于 2020-10-28 15:10 | 只看該作者
把/*LCD1602顯示模塊*/ /*用于PROTUES仿真 #define LCD1602_DATAPINS P2 sbit LCD1602_RS=P3^0; sbit LCD1602_RW=P3^1;             sbit LCD1602_E=P3^2;      */這段你都注釋掉了,但是仿真還是按照這段代碼連線,這樣怎么能顯示?
回復

使用道具 舉報

5#
ID:584814 發表于 2020-10-29 08:58 | 只看該作者
看程序象是普中一類的試驗板程序接口,可直接用廠家給的試驗程序調試。
然后將仿真的接線按試驗板調整再調試,重點在時序上。
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 亚洲精品乱码久久久久久蜜桃 | 亚洲视频免费一区 | 免费黄色录像视频 | 97精品超碰一区二区三区 | 日韩欧美网 | 一本大道久久a久久精二百 国产成人免费在线 | 久久99视频 | 欧美成人第一页 | 日本韩国欧美在线观看 | 日本欧美大片 | 91精品久久久久久久久久 | 国产精品一区三区 | 日本欧美黄色片 | 91久久综合亚洲鲁鲁五月天 | 黑人精品欧美一区二区蜜桃 | 亚洲成人一区 | 国产一区二区观看 | 精品国产乱码久久久久久88av | 久久精彩视频 | 亚洲国产成人av好男人在线观看 | 国产精品一区二区久久 | 成人在线视频看看 | 亚洲一区久久 | 日韩在线不卡 | 久久久国产精品视频 | 中文字幕视频在线 | 成年视频在线观看 | 国产美女一区二区 | h肉视频| www.五月婷婷.com | 亚洲国产成人精品女人久久久 | 欧美亚洲日本 | 国产欧美精品一区二区 | 久久精品亚洲精品国产欧美kt∨ | 在线看片福利 | 欧美一区二区在线看 | 超碰av免费| 日韩成人免费视频 | 天天天堂 | 亚洲成人av| 欧美mv日韩mv国产网站91进入 |