完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
电子发烧友论坛|
寻找最好的/常见的做法,当你有多个状态机需要使用彼此的函数/数据。例如,我有一个“应用程序”,它处理I2C设备并从一个结构中收集所有信息(来自多个设备)。来自其他“应用程序”/状态机的代码需要访问该数据以及写入I2C设备的能力。看起来,HARMony试图解决诸如System Services中的定时器的资源利用问题,但是我对I2C也有同样的问题。我通常认为这些东西是嵌套的,所以我在努力匹配它们的模式。有人有一个用例,这些状态机之间有复杂的相互作用吗?有没有一种干净的方式来处理这种情况?我完全忽略了这一点吗?
|
|
相关推荐
1个回答
|
|
|
我或者使用访问器函数(我不喜欢它们,因为使任务依赖于其他人),或者绝大部分时间在任务之间发送消息。在一个“真正的操作系统”上并没有什么不同。为了传输数据,我分配内存。人们警告我不要在C上做分配。数以百万计的分配、解放和重新分配。没问题。真的没问题,你会发现内存泄漏非常快。-)通过这些消息,每个任务都可以按自己的进度工作。如果有突发消息,它们会对每个任务进行缓冲,并在不阻塞其他任务的情况下缓慢处理。我从3年前开始使用这些信息……如果一个任务在等待消息/响应,他可以让自己入睡(我不使用RTOS),并且只要有消息他就会被“邮递员”唤醒。这大大提高了性能。T将数据发送到服务器(IPCOMTEST)。可能会发生,服务器无法到达。因此,在IPCOMTEST前面是一个FiffiFo TAKS,它查看IPCuttKS中排队消息的数量。如果达到一定的水平,FielFioTakes接收到的消息就被写入SD卡。一旦IPCommTaks赶上来,FileFIFO就会对消息进行解队列并将它们发送到IPCommTasks。链接是由配置文件定义的。使用一个空配置文件,整个应用程序什么也不做,除了尝试获得NTP时间和保持RTCC同步。未配置的任务永远不会被调用。Nick
|
|
|
|
|
只有小组成员才能发言,加入小组>>
MPLAB X IDE V6.25版本怎么对bootloader和应用程序进行烧录
473 浏览 0 评论
5793 浏览 9 评论
2334 浏览 8 评论
2224 浏览 10 评论
请问是否能把一个ADC值转换成两个字节用来设置PWM占空比?
3530 浏览 3 评论
1121浏览 1评论
有偿咨询,关于MPLAB X IPE烧录PIC32MX所遇到的问题
1095浏览 1评论
我是Microchip 的代理商,有PIC16F1829T-I/SS 技术问题可以咨询我,微信:A-chip-Ti
872浏览 1评论
MPLAB X IDE V6.25版本怎么对bootloader和应用程序进行烧录
473浏览 0评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-1 18:44 , Processed in 0.641111 second(s), Total 70, Slave 53 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
902