zheiwaok 发表于 2020-5-15 18:54

如何使HC32F003代码运行效率高

这个问题问的有点大,现在在用华大的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等都可以尝试,专门帮助你解决这些问题的{:smile:}
页: [1]
查看完整版本: 如何使HC32F003代码运行效率高