我正在编写一个电机控制器,它有几个接口(按钮、蓝牙、触觉旋钮),这是一项稳步增长的任务,比我想象的要大。我试图从低级模块开始(例如编写代码以在 I2C 总线上通信),然后是上面的模块(与 I2C 总线上的特定设备通信的代码......),但是很多时候,我不得不回到我的较低模块来处理我没有适应的怪癖。这要么需要很长时间,要么我会得到真正的 hack-ish 代码。
我的目标是 8 位 MCU,所以自下而上似乎我可以更好地利用硬件。如果我自上而下,我没有任何结构可以构建或测试/调试。
我已经尝试为特定级别/驱动程序绘制一些整体图和一些图,但我不确定如何构建它们,因此我可以非常系统地进行处理并避免错过需要通过 2-3 的奇怪信号层。
我想这就是CS学位的原因吗?我是一名电气工程师:P