[技术问答] 如何使HC32F003代码运行效率高

[复制链接]
1475|7
 楼主| zheiwaok 发表于 2020-5-15 18:54 | 显示全部楼层 |阅读模式
这个问题问的有点大,现在在用华大的HC32F003做一个tws充电盒的方案,这个充电盒子有一个按键、三个灯、几个adc(电流、电压侦测)、一个霍尔开关。
现在所有的操作在一个主循环里面完成,但如果在这一个循环周期内有多个动作的话,就有可能丢控制,请问大拿有啥办法优化?
smartpower 发表于 2020-5-15 20:22 | 显示全部楼层
不要用库,裸写。这样效率最高。
例1. 操作时不用PAOUT.PA03==1, 用 PAOUT&0x08 ..
例2. 操作时个完整寄存器一次性写入,不要多次写入同一个寄存器的不同位域。
xyz549040622 发表于 2020-5-15 20:22 | 显示全部楼层
上ucos呀。不复杂的话中断加状态机也是可以的。
 楼主| zheiwaok 发表于 2020-6-9 14:06 | 显示全部楼层
xyz549040622 发表于 2020-5-15 20:22
上ucos呀。不复杂的话中断加状态机也是可以的。

怎么个加法?能给个参考吗?
 楼主| zheiwaok 发表于 2020-6-9 16:17 | 显示全部楼层
zheiwaok 发表于 2020-6-9 14:06
怎么个加法?能给个参考吗?

加UCOS的话系统存储够用吗?没有加外部存储的
yelong98 发表于 2020-6-9 18:56 来自手机 | 显示全部楼层
当然不够用
RobinQcp 发表于 2020-6-15 15:28 | 显示全部楼层
在编译时可以选择增加优化编译选项:速度优先,不过添加后一定要多测试,有些时候优化会对一些原有逻辑进行干涉(例如nop这种)。
中子家 发表于 2020-6-15 18:28 | 显示全部楼层
上操作系统吧,国产的RTT,国外的ucos、FreeRTOS等都可以尝试,专门帮助你解决这些问题的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

8

主题

32

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部