完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
从裸机转到ucos,困惑还挺多的,求各位朋友解答;如果I2C任务在读写操作的时候,被别的任务打断,会影响正常的读写,不知道在ucos或RTOS中该怎么处理如果读写过程禁止任务切换,会出现最坏的情况,即读不到数据,需等到超时才能结束本次读写,不知道大家有什么好的思路(模拟SPI也有该问题,不知道硬件SPI和硬件I2C会不会有这个问题)
void Task_EEPROP_WR(void) { EEPROM_Init(); while(1) { if(readFlag) { ReadEEPROM(rAddrIndex,length); } else if(writeFlag) { WriteEEPROM(wAddrIndex,length); } } } void Task_Other1(void) //有多个这样的任务 { while(1) { doSomeThing(); OStimeDlyHMSM(0,0,0,20); } } |
|
相关推荐
2个回答
|
|
你可以禁止任务调度,就可以了。具体参考我们综合实验
|
|
|
|
谢谢原子哥
|
|
|
|
只有小组成员才能发言,加入小组>>
698 浏览 0 评论
1109 浏览 1 评论
2476 浏览 5 评论
2810 浏览 9 评论
移植了freeRTOS到STMf103之后显示没有定义的原因?
2653 浏览 6 评论
使用eim外接fpga可是端口一点反应都没有有没有大哥指点一下啊
655浏览 9评论
651浏览 7评论
请教大神怎样去解决iMX6Q在linux3.0.35内核上做AP失败的问题呢
783浏览 6评论
631浏览 5评论
671浏览 5评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-23 15:27 , Processed in 1.094961 second(s), Total 82, Slave 63 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号