打翻的酱油瓶 发表于 2020-7-29 21:52:12

RTX中模拟IIC操作EEPROM 延时函数选择

RTX中模拟IIC操作EEPROM模拟IIC时序中的延时 请问使用哪种方式显示较为合理    1..for (i = 0; i < 30; i++)实现延时    2..os_dly_wait()来实现   3..bsp_DelayUS()实现RTX当前最小时基为1MS使用for (i = 0; i < 30; i++)和bsp_DelayUS()实现延时会不会影响RTX的实时性


eric2013 发表于 2020-7-29 22:04:13

os_dly_wait()不合适,一般我们设置系统时钟节拍是1ms,也就是此函数延迟单位是1ms。

然后就是实时性问题,这里主要有两点。
1、EEPROM我们一般不会频繁使用,只是偶尔用用,所以不用担心影响实时性。
2、由于for循环和bsp_DelayUS都没有做开关中断操作,所以需要中断处理的紧急事件都不会受到影响。唯一有点影响的就是比这个功能所在任务优先级的其它任务功能。这个问题只要你合理安排,基本可以忽略。
页: [1]
查看完整版本: RTX中模拟IIC操作EEPROM 延时函数选择