久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標題:
寫入的溫控程序為什么單片機讀不了ds18b20數據顯示000.0采用STC89C52RC單片機12M晶振
[打印本頁]
作者:
ark8976
時間:
2019-6-11 23:22
標題:
寫入的溫控程序為什么單片機讀不了ds18b20數據顯示000.0采用STC89C52RC單片機12M晶振
#include<reg52.h>
#include<intrins.h>
#include<wendu.h>
#define uchar unsigned char
#define uint unsigned int
sbit key1=P3^4;
sbit key2=P3^5;
sbit key3=P3^6;
sbit led=P3^3;
sbit shenwen=P1^5;
sbit jiangwen=P1^6;
uchar code tab[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x40,0x00,0x40,0x38,0x76};
uchar code tab3[]={0xBF,0x86,0xDB,0xCF,0xE6,0xED,0xFD,0x87,0xFF,0xEF,0xC0,0x00};
uchar yi,er,san,si,san1;
uint shangxian=30,xiaxian=0,flag=0;
void delay(int ma);
void display1(uchar yi,uchar er,uchar san,uchar si);
void display2(uchar yi,uchar er,uchar san1,uchar si);
void keyscan();
void main()
{
float wendu=0;
int wenduzhen=0;
yi=11;er=11;san=11;si=11;
jiangwen=shenwen=1;//繼電器
while(1)
{
keyscan();
if(flag==0)//溫度測試界面
{
wendu=temget();
if(wendu<xiaxian) //升溫
{
shenwen=0;
jiangwen=1;
}
else if((wendu>=xiaxian) && (wendu<=shangxian) ) //實際溫度處于保溫范圍
{
shenwen=1; //繼電器初始化
delay(5);
jiangwen=1;
delay(5);
}
else if(wendu>=shangxian) //降溫開啟,燒水功能關閉
{
shenwen=1;
jiangwen=0;
}
wenduzhen=wendu*10;
yi=wenduzhen/1000;
er=wenduzhen%1000/100;
san=wenduzhen%100/10;
si=wenduzhen%10;
display1(yi,er,san,si);
}
else if(flag==2)//溫度下限設置界面
{
yi=13;er=12;
xiaxian=shangxian-2;
san1=xiaxian%100/10;
si=xiaxian%10;
display2(yi,er,san1,si);
}
else if(flag==1)//溫度上限設置界面
{
yi=14;er=12;
san1=shangxian%100/10;
si=shangxian%10;
display2(yi,er,san1,si);
}
//
// if(xiaxian>=shangxian)led=0;//下限超過上限led亮
// else led=1;
}
}
void keyscan()
{
if(key1==0)//設置界面
{
delay(5);
if(key1==0)
{
flag++;
if(flag>2)flag=0;
}
while(!key1);
}
if(key2==0)//加數值
{
delay(5);
if(key2==0)
{
if(flag==1)
{
shangxian++;
if(shangxian>90)shangxian=0;
}
else if(flag==2)
{
xiaxian++;
if(xiaxian>89)shangxian=0;
}
}
while(!key2);
}
if(key3==0)//減數值
{
delay(5);
if(key3==0)
{
if(flag==1)
{
shangxian--;
if(shangxian<1)xiaxian=1;
}
else if(flag==2)
{
xiaxian--;
if(shangxian<0)xiaxian=0;
}
}
while(!key3);
}
}
void display1(uchar yi,uchar er,uchar san,uchar si)
{
P2=0XBF;
P0=tab[yi];
delay(1);
P2=0XF7;
P0=tab[er];
delay(1);
P2=0XEF;
P0=tab3[san];
delay(1);
P2=0XDF;
P0=tab[si];
delay(1);
}
void display2(uchar yi,uchar er,uchar san1,uchar si)
{
P2=0XBF;
P0=tab[yi];
delay(1);
P2=0XF7;
P0=tab[er];
delay(1);
P2=0XEF;
P0=tab[san1];
delay(1);
P2=0XDF;
P0=tab[si];
delay(1);
}
void delay(int ms)
{
int i,a;
for(i=ms;i>0;i--)
for(a=125;a>0;a--);
}
#include<reg52.h>
#include<intrins.h>
#include<wendu.h>
uchar temget()
{
uchar low,high;
int temp;
float temperature;
dsinit();
write(0xcc);
write(0x44);
Delay_us(100);
dsinit();
write(0xcc);
write(0xbe);
Delay_us(100);
low=read();
high=read();
temp=((high<<8)|low);
temperature=temp*0.0625;//分辨率是0.0625
// temp=high<<4;
// temp|=(low>>4); //顯示整數
return temperature;
}
uchar read()
{
uchar i;
uchar dat;
for(i=0;i<8;i++)
{
DQ=0;
_nop_();_nop_();_nop_();_nop_();_nop_();
dat>>=1;
DQ=1;
if(DQ==1)
{
dat|=0x80;
}
Delay_us(100);
}
return dat;
}
void write(uchar dat)
{
uchar i;
for(i=0;i<8;i++)
{
DQ=0;
DQ=dat&0x01;
Delay_us(70);
DQ=1;
dat>>=1;
}
}
void dsinit()
{
DQ=0;
Delay_us(80);
DQ=1;
Delay_us(80);
}
void Delay_us(uchar us)
{
while(us--);
}
#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
sbit DQ=P1^7;
uchar temget();
void write(uchar dat);
uchar read();
void dsinit();
void Delay_us(uchar us);
IMG_20190611_231249.jpg
(2.21 MB, 下載次數: 32)
下載附件
2019-6-11 23:16 上傳
作者:
ark8976
時間:
2019-6-11 23:58
仿真軟件能讀取溫度且顯示,在硬件電路就出問題了,其他功能都正常
作者:
鄭漢松
時間:
2019-6-12 21:20
既然仿真沒問題,那程序就應該沒有多大問題,大概是電路問題,我猜是與DS18B20的IO口沒接上拉電阻
作者:
豬一只
時間:
2019-6-12 22:13
可能硬件問題,有接上拉電阻嗎
歡迎光臨 (http://www.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
国产农村妇女毛片精品久久麻豆
|
免费观看黄色一级片
|
久久一二
|
久久免费资源
|
久久久久久国产精品免费免费狐狸
|
青青草亚洲
|
中文字幕在线一区二区三区
|
亚洲精品欧美一区二区三区
|
免费能直接在线观看黄的视频
|
毛片久久久
|
国产精品成人一区
|
中文字幕日韩一区
|
www.9191.com
|
毛片在线看看
|
台湾佬成人网
|
天堂网av在线
|
中文字幕亚洲视频
|
亚洲一区二区三区国产
|
国产成人在线一区
|
婷婷丁香在线视频
|
久久久久久一区
|
成人精品视频在线
|
成人在线免费观看
|
婷婷综合
|
91精品国产一区二区在线观看
|
99国产精品99久久久久久
|
福利视频一区二区
|
一区在线观看
|
日本免费一区二区三区四区
|
国产精品视频免费观看
|
久久久蜜桃
|
日韩视频精品在线
|
精品视频一区二区
|
国产美女一区二区
|
久久精品亚洲欧美日韩精品中文字幕
|
国产精品视频综合
|
韩日一区二区
|
国产精品美女久久久久aⅴ国产馆
|
免费黄色大片
|
亚洲欧洲激情
|
jizz18国产
|