完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
电子发烧友论坛|
我用的是原子例4-1 UCOSIII移植这个程序,加入ds18b20的驱动,裸机正常读取,跑系统就读出为0,下面是我放在ucos中的任务函数(直接写在了原来的浮点测试函数里),在读取的时候我也关闭系统调度了,为何还是读出0值。void float_task(void *p_arg)
{ OS_ERR err; (void)p_arg; //'p_arg'并没有用到,防止编译器警告 while(1) { OSSchedLock(&err);//关闭系统任务调度 temp[1] = DS18B20_Get_Temp(1); printf("当前第1路temp温度为:%0.4lf ℃rn",temp[1]); OSSchedUnlock(&err);//恢复调度 OStimeDlyHMSM(0,0,1,0,OS_OPT_TIME_HMSM_STRICT,&err); } } |
|
相关推荐
2个回答
|
|
|
禁止任务调度没用。要禁止中断。另外,因为ds18b20里面用了很多delay_us,不知道你用没用我们的SYSTEM文件夹,需要设置使能OS,不然会影响OS运行。
|
|
|
|
|
|
调用关闭全局中断的方式!
|
|
|
|
|
只有小组成员才能发言,加入小组>>
1018 浏览 1 评论
1849 浏览 0 评论
1830 浏览 1 评论
3254 浏览 5 评论
3581 浏览 9 评论
1021浏览 1评论
1850浏览 1评论
如何知道嵌入式电子控制单元 (ECU) 中的RAM使用情况?
1360浏览 1评论
1852浏览 0评论
1178浏览 0评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-2 03:45 , Processed in 3.366055 second(s), Total 77, Slave 57 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
6998