avr写DS18B20的程序?我写的为什么调试不出来!!!求大虾门给我看看指点下!!!下面是我写的程序

2024-12-21 12:37:05
推荐回答(1个)
回答1:

你这个程序会有结果就怪了,呵呵。
通篇都没有对PB口的输入输出模式进行调整,
不管读、写都是用PINB进行,
程序是移植自51的吧?
不要以为加了位域和链接宏就可以了的,依然活在51的阴影之下。
PINB是输入寄存器,
PORTB才是输出寄存器,
你的DQ只指向PINB是不可取的,你只对PINB操作是无法写18B20的。
正确的做法是,读的时候,将IO设置为输入,然后对PINB操作
写的时候,将IO设置为输出,对PORTB操作。

如果还不明白,欢迎追问。