完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
18B20 M16,为什么一盏灯数码管都不亮
#include #define uchar unsigned char #define uint unsigned int #define DQ_0 PORTD&=~(1< #define P260 PORTC&=~(1< uchar i; uchar t; void delay(uint a) { while(a--) { for(i=0;i<1140;i++); } } uchar b18_init(void) { uchar result; DQ_OUT; DQ_0; for(i=0;i<200;i++); DQ_1; for(i=0;i<15;i++); result=DQ_R; for(i=0;i<200;i++); return result; } uchar b18_readonechar(void) { uchar dat; DQ_OUT; for(i=0;i<8;i++) { DQ_0; for(i=0;i<1;i++); DQ_1; for(i=0;i<2;i++); dat>>=1; if(DQ_R==0) dat|=0X00; else dat|=0x80; for(i=0;i<2;i++); } return dat; } void b18_writeonechar(uchar k) { DQ_OUT; for(i=0;i<8;i++) { DQ_0; if(DQ_R) { DQ_IN; } else { DQ_OUT; } for(i=0;i<10;i++); DQ_1; for(i=0;i<1;i++); k>>=1; } delay(4); } void avr_init() { DDRA=0xff; PORTA=0xff; DDRC=0xff; PORTC=0xff; } void b18_readyread() { uchar lg,hg; b18_init(); b18_writeonechar(0xcc); b18_writeonechar(0x44); delay(200); b18_init(); b18_writeonechar(0xcc); b18_writeonechar(0xbe); lg=b18_readonechar(); hg=b18_readonechar(); hg<<=4; t=hg+(lg>>4); } void display() { P260; PORTA=du[t/10]; delay(2); P261; P270; PORTA=du[t%10]; delay(2); P271; } void main() { avr_init(); DDRD&=~(1< while(1) { b18_readyread(); display(); } } |
|
相关推荐 |
|
只有小组成员才能发言,加入小组>>
AVR Atmega16 Bootloader程序与上位机LabView程序
5182 浏览 6 评论
#include <ioavr.h>这个头文件我应该下什么编译器
7796 浏览 0 评论
3075 浏览 2 评论
3126 浏览 1 评论
10108 浏览 1 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-23 12:42 , Processed in 0.399171 second(s), Total 40, Slave 31 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号