作为一个单片机开发的老司机,在这里告诉大家如何快速的进行单片机开发,完成自己的项目。
一、整理需求,如果你们的产品经理已经整理出需求那就更好了。拿到需求后,如果有疑问请及时沟通。请不要有疑点,例如:完成项目时间、产品的工艺流程等。
二、绘制出开发项目的整个工艺流程图(工作流程),务必让这个过程占据你的开发时间的一半以上。拿着完整的项目流程图,相信所有的码农都可以轻轻松松完成项目。
二、从某宝上面购买一块目标开发板,什么电路板开发、PCB设计等硬件开发都可以放在后面。咱们可以先在开发板上验证自己的程序、工艺流程以及概念,这样可以快速开发出你的项目。例如STM32、51等开发板非常多。在购买单片机开发板的时候有三点要注意:
1、开发板的功能一定要能满足你项目的所有需求。
2、开发板的资料及示例代码要足够多,方便后面的开发可以照搬。
3、开发板尽量要能支持仿真调试。
三、如果你是进行物联网方面的单片机开发,建议你先买一个物联网模块集成到自己的开发板上,先进行联网调试,写出自己的业务代码。物联网模块硬件开发部分请丢给你的PCB设计工程师,你不要把过多的精力放在硬件上面。当然如果你的IO口用的不多及运算量比较小,可以直接用联网芯片来开发,将联网芯片当成单片机来进行开发,这样可以节省耗电及硬件成本。例如:Esp8266支持片上开发、支持WIFI、蓝牙,有4-6个IO口可以用。
四、如果你的单片机开发项目需要显示屏幕,那么在写代码的时候,可以把开发板的样例代码搬过来修修改改,相信这样可以大大提高你的项目开发速度。如果你还想加快速度,就建议你使用串口屏,串口屏的界面是在上位机上拖拖拽拽就可以完成,我用过迪文的串口屏就是这样。
五、尽量使用开发板带的仿真调试,如果没有仿真调试建议你换一个MCU进行开发。
六、真机调试过程中一定要使用在线调试,请务必学会使用单片机开发的在线调试功能。使用在线调试的好处是可以看出程序时宕机在哪一行代码及程序崩溃时的堆栈。
七、在前期写程序的时候,建议你多打印一些日志。日志的格式建议使用:
printf(“file:%s line:%d”,__FILE__,__LINE__);
看见没这个日志语句里含有哪个文件的哪一行,相信这样的调试日志对你快速的单片机开发很有帮助。
八、建议你在单片机项目开发的过程中使用Git管理工具,即便单片机开发的代码量相对较少。如果你不会使用Git,那么建议你每隔2个小时就备份一下代码,可以让你的代码可以回溯到之前的版本。在你有时间的时候请学会使用Git代码管理工具,建议你使用Gitee码云。
九、在样机上调试的时候,如果遇到一些诡异问题,请把你的硬件工程师叫过来,把锅甩给他,让他陪你一起解决疑难杂症(谁让咱是软件工程师呢)。