分享我的UCOSIII移植成功DS18B20

2019-08-13 21:46发布

现在大家用DS18B20都是用裸机跑的,但是同样的程序放到UCOSIII里面就跑不起来。为什么呢?ucos ii是怎么实现多任务运行的?(知乎)这是我写的答案,写的是UCOSIII的。正好最近要用到,然后我在论坛找了一下还没有,所以我就花了点时间,把他移植到我的UCOSIII里面了。主要是延时的问题,这时候我们要用到逻辑分析仪去抓时序。我们要写一个软件延时,因为如果我们用滴答定时器,很有可能会引起任务调度,从而打断时序。DS18B20对时序的要求还是比较高的。下面是我用逻辑分析仪调试出来的延时:
微信截图_20170422120852.png
一个延时2微秒,然后替换DS18B20里面的延时,这是串口打印输出:
微信截图_20170422121321.png
STM32F103C8T6Model-UCOSIII.zip (657.86 KB, 下载次数: 694) 2017-4-22 13:50 上传 点击文件名下载附件

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
11条回答
wszdxmh
1楼-- · 2019-08-14 19:51
 精彩回答 2  元偷偷看……
皮蛋瘦肉粥
2楼-- · 2019-08-15 00:28
wszdxmh 发表于 2017-5-21 21:02
我不是上传了附件了吗?裸机的跑原子哥的就行,我也是在它基础上改的

太感谢你了。用您的程序,成功了,我怀疑是延时函数出了问题。
余一水
3楼-- · 2019-08-15 00:34
我觉得虽然你的成功了,但是原因不是这个,我用了原本的延时也可以,原因不在这
wszdxmh
4楼-- · 2019-08-15 05:35
余一水 发表于 2017-10-2 11:46
我觉得虽然你的成功了,但是原因不是这个,我用了原本的延时也可以,原因不在这

建议用逻辑分析仪抓一下波形,这样你就知道是什么问题了
余一水
5楼-- · 2019-08-15 06:10
wszdxmh 发表于 2017-10-5 13:52
建议用逻辑分析仪抓一下波形,这样你就知道是什么问题了

没有这个设备啊,哎,干脆换LM75吧,IIC的

一周热门 更多>