SO单片机指南3:单片机项目开发的一般流程是怎样的?成都控制器开发
《SO单片机项目开发入门到精通轻松指南》系列之3:要做一件事情,既要知道做什么,还有重要的是还得知道怎么做,所以做一件事情的流程很关键。
那么一个单片机开发项目的开发流程是怎样的呢?
一个推荐的开发流程如下:
第1步:功能分析
我们要做一个东西,肯定是要有目标的,单片机电路板要实现什么功能是需要首先明确的。功能分析的主要目的是为了确定待开发的单片机电路板的主要功能。
对于简单的东西,直接把功能写出来列一个表,然后检查几遍,看看是否有遗漏、是否把总目标都囊括了,一般就可以了。如果有多人进行开发的话,可以进行交叉检查。
对于复杂点的,需要做功能分析,例如用IDEF0方法。这个就需要列出各个分解出来的功能的输入、输出、受到的限制和约束,以及实现这些功能所需要一些软硬件资源(支撑),并把各个功能之间,和与外部之间的关系搞清楚。
功能分析的重点是不要有遗漏。
步骤2:资源规划
资源规划的目的是为组织实现步骤1的功能所需要的软硬件。前面在第1步里已经把所需要的功能整理出来了,接着就应当思考一下为实现这些功能所需要的软硬件资源。比如做一个单片机项目,一般需要这些东西:
l 单片机,选型。单片机的选型是根据性能需求确定的。
l 电源适配元件,单片机和其他外设所需要的电源。
l 其他元件,如ADC部件、继电器等,这些由功能需求来确定。
步骤3:硬件设计
硬件设计的目的是把实现整个功能的硬件都连接起来,这里电路板的设计就是重点,电路板设计一般包括了电路原理图设计、PCB文件设计等任务。
电路原理图设计包括了元件库绘制或者元件调用,元件布局,元件连线等;
PCB文件设计包括了元件布局、走线设计等工作,这个还是比较繁杂的工作,因为很多因素需要考虑,如EMC、载流量、最优化等。
步骤4:软件设计
这里说的软件设计,指单片机程序开发。这个工作也很繁杂,需要周密的考虑,需要对整个电路的性能需求、运行流程、可能出现的异常等多方面都非常清楚才行。
步骤5:加工与调试
有了加工好的空白电路板、有了元件,那么需要将它们焊接起来。在新产品设计的时候一般不会上贴片机的,那么就需要手工焊接,电烙铁(锥形和刀形的)、焊锡、松香一般是需要的,然后把元件安装在电路板上,烧热电烙铁,熔化焊锡将元件的引脚和电路板上的铜片焊接在一起即可。松香的目的是助焊和清理多余焊锡。
调试是一个迭代设计的过程,因为很少人能够一次性就把事情做完美,往往不是这里有问题就是那里有问题,其实把这一个个的问题都解决了,那就无限趋近完美了。
一般来说,单片机项目的调试是和软件开发同时进行的。把电路板焊接好后、写上一段代码烧录进入单片机里,验证一下预期的功能是否实现。如果实现了,那么进行下一步,如果没有实现,那么改程序、改硬件,再验证,反正就是要实现目标。
调试是一个很繁琐的过程,有时对开发者的内心是个煎熬,毕竟人对于久久没有成功的坚持是很难的。其实无关系的,多分析、多查查资料、多检查软硬件,要么找人帮忙,只要不放弃,熬过了苦日子,成功终会来到的。此时,最害怕的就是半途而废,也害怕遇到点挫折就长时间搁置,毕竟时间久了,你再来回忆再来分析的时候就更加困难了,最好就是一鼓作气持续地、每天地去思考解决问题,这样是最节省时间的。
OK,本节完,后续将逐一分解展开描述,精彩未完待续。