完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
为什么我这个程序显示不了温度啊,很简单的一个数码管显示,为什么不行呢??
#include #define uchar unsigned char #define uint unsigned int ***it DQ=P3^7; uchar code du[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; uchar temp; void delay(uint a) { while(a--); } void init_ds18b20() { uchar n; DQ=1; delay(8); DQ=0; delay(80); DQ=1; delay(8); n=DQ; delay(4); } void write_byte_18b20(uchar dat) { uchar i; for(i=0;i<8;i++) { DQ=0; DQ=dat&0x01; delay(4); DQ=1; dat=dat>>1; } delay(4); } uchar read_byte_18b20() { uchar i,value; for(i=0;i<8;i++) { DQ=0; value>>=1; DQ=1; if(DQ) { value|=0x80; delay(4); } } return value; } uchar read_temp() { uchar a,b; init_ds18b20(); write_byte_18b20(0xcc); write_byte_18b20(0x44); delay(100); init_ds18b20(); write_byte_18b20(0xcc); write_byte_18b20(0xbe); a=read_byte_18b20(); b=read_byte_18b20(); b<<=4; b+=(a&0xf0)>>4; return b; } void display() { P1=0xef; P0=du[temp%10]; delay(500); P1=0xdf; P0=du[temp/10]; delay(500); } void main() { while(1) { temp=read_temp(); display(); } } |
|
相关推荐
2个回答
|
|
连一点注释都没。。。。。。。
|
|
|
|
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
【RA-Eco-RA2E1-48PIN-V1.0开发板试用】(第三篇)ADC采集+PWM输出
515 浏览 0 评论
《DNK210使用指南 -CanMV版 V1.0》第四十五章 人脸识别实验
515 浏览 0 评论
780 浏览 0 评论
如何用OpenCV的相机捕捉视频进行人脸检测--基于米尔NXP i.MX93开发板
1360 浏览 0 评论
《DNK210使用指南 -CanMV版 V1.0》第四十章 YOLO2人手检测实验
572 浏览 0 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
11757 浏览 31 评论
浏览过的版块 |
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-22 00:30 , Processed in 0.545178 second(s), Total 77, Slave 59 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号