打印
[综合信息]

hc32f030读取DS18B20实在搞不定了。哪位有代码参考下呀

[复制链接]
4878|50
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
fjhcpu|  楼主 | 2024-6-21 15:25 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
hc32f030读取DS18B20实在搞不定了。哪位有代码参考下呀   ,,我这HC005读取正常,030读取异常,有搞过030读取18B20的支援下呀

使用特权

评论回复
沙发
zkevin8879| | 2024-6-22 11:55 | 只看该作者
用示波器看时序,不过最好用逻辑分析仪 自带的单总线来看时序 就能找到问题了

使用特权

评论回复
板凳
亚瑟| | 2024-6-28 18:47 | 只看该作者
本帖最后由 亚瑟 于 2024-6-28 18:51 编辑

这有个写好的库,改一下宏定义就能用https://bbs.21ic.com/icview-3383896-1-1.html

使用特权

评论回复
地板
发货后已经wi| | 2024-8-28 18:58 | 只看该作者
选择DMA中断类型为:数据块传输完成中断

使用特权

评论回复
5
ewyu| | 2024-9-18 13:14 | 只看该作者
试试逻辑分析仪试试呗,也许就可以了

使用特权

评论回复
6
gra22ce| | 2024-9-18 14:18 | 只看该作者
这种不就是一个时序吗?你对照时序试试

使用特权

评论回复
7
eleg34ance| | 2024-9-18 15:22 | 只看该作者
网上有很多关于DS18B20的例程的,然后你移植过来,调整一下时序就好了

使用特权

评论回复
8
nuan11nuan| | 2024-9-18 16:25 | 只看该作者
这种参考也没多大意义,因为你的MCU和别人的MCU也不一样

使用特权

评论回复
9
清芯芯清| | 2024-9-18 17:28 | 只看该作者
其实就是时序不对,跟你主频啥的有关系

使用特权

评论回复
10
pe66ak| | 2024-9-18 19:10 | 只看该作者
你用delay试试吧,多调一下时序试试

使用特权

评论回复
11
yuliangren| | 2024-9-18 20:29 | 只看该作者
我觉得你用逻辑分析仪就行,这种很简单,对照手册来调试就行

使用特权

评论回复
12
teaccch| | 2024-9-19 08:24 | 只看该作者
把你代码发出来看看,并且把你时序发出来看看

使用特权

评论回复
13
hhdhy| | 2024-9-19 10:05 | 只看该作者
一般单总线的话,你就直接调整时序不就行了吗

使用特权

评论回复
14
一切D都好| | 2024-9-19 13:06 | 只看该作者
代码都是通用的啦,你030和050的主频估计不一样,你配置主频一样试试,或者等比例的调整delay试试

使用特权

评论回复
15
shenxiaolin| | 2024-9-29 11:04 | 只看该作者
网上代码太多了

使用特权

评论回复
16
略略u| | 2024-10-2 21:53 | 只看该作者
HC005读取正常,030读取异常

使用特权

评论回复
17
jtracy3| | 2024-10-7 12:39 | 只看该作者
由于DS18B20使用1-Wire(单总线)通信协议,需要精确控制时序。

使用特权

评论回复
18
hilahope| | 2024-10-7 13:05 | 只看该作者
DS18B20使用单总线协议进行通信,这意味着所有的数据和命令都是通过一条线进行传输的。因此,精确的时序控制是非常重要的。

使用特权

评论回复
19
timfordlare| | 2024-10-7 13:53 | 只看该作者
编写函数来执行复位脉冲、写位、读位等操作。
发送正确的ROM指令和功能指令给DS18B20,例如跳过ROM指令(0xCC)和转换温度指令(0x44)。

使用特权

评论回复
20
xiaoyaodz| | 2024-10-7 15:09 | 只看该作者
DS18B20对时序有严格要求,需要使用定时器延时获得微秒级的延时函数。
在写操作中,总线拉低的时间和释放总线的时间需要精确控制。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

120

主题

368

帖子

3

粉丝