用DS18B20测温度,现在遇到问题,对STM32的延时和 GPIO口的输出不太明白,与51单片机不一样。移植不成功,做过的人给指导一下。 w3154@sina.com
其实DS18B20很讨厌
其实DS18B20很讨厌,
其单总线时间关系要求严格,
在复杂一点的程序里面,慎用.
确定其延时的一种方法是用定时器调试,即在延时语句前后,检测定时器的值,
确定延时语句的具体值,调整延时语句,直至延时符合要求为止.
1-Wire总线可以用PWM+DMA的方式实现
非常好用,波形完全可以与硬件1-Wire控制器相媲美
我用了
我用了,还可以,挺好用的,主要是STM32的SYSTICK定时器很准。以前用过C语言延时的读写DS18B20的程序,不太好用,又中断时有时会出错。后来改用嵌入汇编的程序,挺准,但在Keil下调试不方便。现在用STM32,使用systick定时器,很好使按照DS18B20的手册将延时设置好,很容易就出来。
已经调试成功,使用TIM2
参考:STM32学习笔记之 DS18B20 STM32 驱动