恭喜,你发布的帖子
发布于 2020-12-11 13:13:29
52楼
估计这题目最后就剩下扯淡了。队列什么的意义不大,毕竟SMART的程序容量、内存就摆在那里,ModbusRTU通讯协议已经卡脖子。
估计楼主你是写C++程序多了,用那些高级编程习惯来改造?我也曾经想那样搞过,但是策略情况过多程序容量消耗过快,根本得不偿失...最后直接放弃治疗。
或者楼主是受了鸿蒙HDF的忽悠?你也不看看鸿蒙系统人家最低是居于C编程的,C的数据结构完全不是SMART这种抠抠搜搜原始单片机能撑得起来的。就单单一个链表就要死要活了,还想搞MAP?感觉还是放弃治疗吧。
又或者楼主只是突发奇想,并没有深入的思考策略的详细实现?然后坑太深把自己给套牢了。
至于老芳说的,突然按下按钮就插入某条MSG优先执行,这个可以在手拖手MSG轮询里面实现的。实现的方法就是按钮置位一个位,当前一个Done=1时同时检查按钮置位的位是否为1?为1则下个MSG写启动位,否则就是读启动位,写成功复位按钮置位的位否则保持下一次轮询时再写?或者写后不管成功与否就复位按钮位,等用户发现没启动成功自然他们会再按一次按钮的。
其实,手拖手的好处就是简单方便;单个MSG轮询策略的好处就是可以根据需求自由灵活的选哪一个操作策略。
请填写推广理由:
分享
只看
楼主