1.制定需求
首先要知道你想做什么样的产品,包含什么功能,收集什么信号。需要控制哪些设备?需要采取哪些通信协议?通信协议采用哪些接口?要显示界面吗?需要声光提示吗?需要低功耗吗?了解这些需求后,就可以选择了。
比如我想做一个单片机密码锁,要求:
1. 四位数字管显示;
2. 控制继电器;
3. 控制蜂鸣器;
4. 控制五个LED灯;
5. 输入两个按钮;
2.芯片选型
根据您的需要确定所选芯片型号。例如,在功能需求的第一部分,这五个需求只需要单片机IO口,不使用电影资源,所以只要IO口够用就可以了。
1. 四位数码管:为方便大家学习,这里选择74HC595来驱动(74HC这里有595驱动数码管点),芯片只需要3个单片机连接IO口;
2. 控制继电器;此处主要考虑线圈电压,单片机为5V所以选择5供电V继电器(单片机控制继电器方法点在这里)占用1个IO口;
3. 控制蜂鸣器:选择有源蜂鸣器,即给电蜂鸣器发声(单片机驱动蜂鸣器点击此处),占用1个IO口;
4. 控制5个LED灯:采用灌电流(这里灌电流是什么)的方式,占5个IO口;
5. 两个按钮输入:使用上拉电阻(这里上下拉电阻点是什么),按低电平实现,占2个IO口;
总共用了3 1 1 5 2=12个IO嘴;为了方便初学者,我们选择STC这个设计将由51台单片机完成。所选型号为STC89C51,封装形式为DIP40.相信大家在大学学单片机的时候,老师都是用这个教的。
三、硬件原理设计
芯片选型后,又有了设计思路,那就赶紧把电路画出来吧。用什么软件画电路图?这样的EDA有很多工具,比如Protel99se、DXP、Altium Designer 等等,这些都是一个软件,还有Cadence、PowerPcb等。本人用的是AD09。原理图设计的内容是什么?设计内容包括单片机最小系统(这里最小系统点是什么)和扩展功能。
4.硬件PCB设计
当原理图画完,并且检查没有错误后,就开始画PCB吧,什么是PCB?PCB就是电路板,什么是电路板,如下图所示:
这是焊接前的电路板,PCB文件设计好后,发给厂家打样制版,就是这样的电路板。上图中的电路板使用直接插入元件。什么是直接插入元件,什么是补丁元件?这是为了设计元件的包装问题(电子元件的包装点是什么)。
5.样板焊接
什么是样板焊接?就是焊接电子元件pcb板上。如果包装简单,样板数量少,可以自己焊接。顺便说一句,你也可以锻炼你的焊接水平。对于一个从事电力工作的人来说,他通常来自焊接电路板。如果你从事电力工作接,别人会嘲笑你。
6.调试程序
如何写程序?用什么工具写?不同的单片机有不同的编程环境,比如PIC单片机使用MPLAB编程环境,MSP430单片机使用IAR Embedded Workbench编程环境,DSP使用CCS编程环境。这里重点介绍的编程环境是Keil,Keil它是所有编程环境中最好的,也是最支持芯片的,可以说Keil是目前最主流编程环境,我用的是Keil编程环境,Keil的C51版本和MDK版本都在用。
7.程序烧录
程序烧录意味着将编写的程序下载到单片机中,以便单片机根据用户编写的程序命名并实现功能。程序如何燃烧到单片机中?每个单片机都有自己的程序烧录接口(单片机程序的下载方式点击此处)。
以上七个步骤完成后,即使产品的电气部分完成,也不是终点。为什么?因为一个产品贯穿于结构设计、电气设计、样机测试等多个设计环节。因此,在电气开发过程中,我们应该与做结构的人合作,讨论更多,与产品经理讨论更多,反复修改需求,从而制作出美观、实用、流行的产品。