单片机一般是用汇编语言编程,尽量减少代码的数量是一个高级程序设计者所追求的。单片机编程中,第一部分一般是初始化,这段程序一点也少不了多少。以后的部分基本上是功能性的,所以在部分应该是结构化、模块化的编程可以实现程序代码最少,而且由于采用结构化编程,把一个个有独立功能的程序模块化,变成子程序,在程序执行时不断被调用,不僅程序代码少而且程序执行速度快。

所以,程序的结构化,模块化不僅是高级语音的设计方法 ,就是使用汇编语言也要采用结构化编程。

单片机空间和内存是嵌入式工程师一定会遇到的问题。这里给6条建议:

1,减少重复代码。

2,少用宏定义的函数。宏定义是原位替换,会增加代码空间使用量。

3,有库函数的尽量使用库函数。一般库函数是厂商写好的,运行效率和代码占用一定比你写的更优。

4,可以打开编译器优化选项,但这个有风险,程序可能不会按照原来的逻辑运行。一般是不优化或者最低优化。

5,必要时可以用汇编代替c代码。c编译成汇编可能2行代码变成20行汇编,如果功能简单的话,可以用汇编写。这个得对芯片很了解才行。

6,算法优化。如果设计到算法,可以通过优化算法的方式优化。

优化单片机代码是基本功啊,因为嵌入式工程师会遇到很多种类的芯片,也许这款芯片资源丰富,而下一款芯片资源少得可怜。

  • UC3846控制芯片工作原理控制图 逆变焊机原理与用途
  • 数字万用表电阻档测试二极管正反向没有阻值(使用万用表测量二极管的正向电阻,为什么各档)
  • 学单片机需要学数电模电吗(学单片机要先学数电模电吗)
  • 电工怎么选择适合自己用的万用表(电工初学者买什么样的万用表好)
  • 单片机需要同时运行多个任务怎么办(单片机怎么同时执行多个任务)
  • 电机保护的方案取决于负载的机械特性
  • 绝缘电阻表正负搭接不复零位是怎么回事
  • 短路怎么用万用表查