当前位置:首页 > 毕业设计(论文)-基于单片机的全自动洗衣机控制系统的设计
4 制版及调试经历
4.1 制板
4.1.1 器件原理图库
对于没有任何资源积累的我来说,首先需要制作器件原理图库。这时就需要依照各个器件的数据手册(Datasheet)来进行绘制。对于每一个元器件来说,都需要分别绘制相应的原理图库。由此需要知道每一种器件,每一个引脚的引脚号,引脚功能以及引脚名称。在制作库的过程中,这些要素都要与实际一一对应。如图4-1所示为STM32F103CBT6的原理图库。
图4-1 STM32F103CBT6原理图库
4.1.2 绘制原理图
当所有元器件的库都制作完成后,就可以在主原理图中绘制原理图了。将之前制作的原理图库调用后就可以直接放置在主原理图中。如图4-2所示。
图4-2 绘制主原理图
23
然后按照相应的功能用线将元器件各引脚相连。最后排版,将各个功能模块按照对应的功能排放在一起,调整整个图纸为合适的大小。最后还要对其中的功能进行检查。
4.1.3 PCB封装库
完成了电路原理图的绘制后,就需要设计出相应的PCB图。首先需要对各个元器件制作相应的PCB封装库。对于一些常见的元器件,Autium Designer 09自带了相应的PCB封装库。而对于一些不常用的或者新出的元器件,就需要自己动手来制作相应的封装库。
这时就要使用到芯片的数据手册,上面一般有元器件对应封装的尺寸。如图4-3所示。如果没有,则需要使用游标卡尺去实际测量一番。最后将相应的尺寸对应到到相应的PCB库中就可以了。如图4-4所示。不过需要注意的是,对于PCB库也要仔细的检查。如果出错,则制作出来的电路板也就会出错,造成时间、精力、金钱上的浪费。
图4-3 数据手册中的继电器尺寸图
24
图4-4 MAX3232芯片封装图
4.1.4 PCB基本布线规则
将制作好的PCB封装库与原理图的元器件对应后,就可以直接将对应的PCB封装导入到PCB图中。由于我设计的系统是一个低速系统,所以没有考虑到EMC等设计规则。将封装排列好,根据相应的电气连接线将引脚之间连接好。注意不要有锐角。另外,电源线应该设计的粗一点,一般要求是对于500mA的电流,线宽应为20mil左右(0.508mm)。信号线则可以相对细一些。根据不同情况来定。
最后制作好定位孔及挖空一个电机放置槽后,PCB板的设计基本上就初步完成了。使用规则检查一遍,看看有没有电气引脚没有连接上的。改好后,就可以发网上专门的PCB加工商进行加工。效果图见附录三。
4.2 硬件检测
俗话说,一个成熟的项目,大部分时间和精力都是花在了调试上。这对于更新系统功能及削减BUG是必须经历的过程。对于调试,只有硬件通过检测没问题,才能进行软件方面的调试。所以,我首先进行硬件方面的调试。
嵌入式系统的硬件调试与软件调试是密不可分的。只有首先排除明显的硬件问题后,才能和软件结合起来调试。我按照以下三步进行硬件调试:
第一步,核对元器件的型号并查看元件是否都焊接完毕,确认没有遗漏。 第二步,在没有通电前,使用万用表测试元件的引脚有没有没有焊接好。注意
25
电源的正负极以及电源之间是否有短路问题。
第三步,通电后,首先烧写一个测试程序,比如流水灯。看看单片机能不能正常工作。再之后烧写每一个模块的程序,单独检测这个模块的硬件。如果能达到要求,则可以断定这个模块的硬件是合格的。如果达不到要求,则需要检测相应的硬件问题。
经过以上硬件都检测完毕,没有问题。接下来我就进入到软件环节。
4.3 软件调试
对于复杂一点的系统,如果有硬件仿真器的就用硬件仿真器进行调试。如果没有,就用软件仿真或者串口来进行调试。软件调试主要是对于逻辑问题上的修改。使用硬件仿真器,并且在有问题的地方设置断点。然后再断点处,一步一步执行程序,就可以非常方便地发现问题。单步和断点调试后,还应进行连续调试,因为单片机的运行是在严格的时序下进行的,单步运行成功并不代表连续运行成功。待全部调试完成后,应反复运行多次。没问题才表示调试完成。 4.3.1 菜单界面的制作
对于程序的调试,主要是集中在菜单界面的制作上。
对于菜单界面,我首先想到了这款液晶的绘图功能。可以将每一级菜单制作成相应的图片,并制作相应的反白图表示选中。这样,使用上、下、左、右按键来选择菜单时,就可以使用相应的图片来进行替换,达到目的。
于是在程序中,我给所有的菜单图片进行了编号,如图4-5所示。对于同一菜单的反白与非反白图也另外进行了编号。通过这两组编号,来记忆相应的操作。通过加、减运算来转换编号以此来改变相应的显示。并且加入了相应的判断,防止编号溢出。
我一共制作了三组菜单,分别是“洗衣流程”、“功能设置”、“作品简介”。这样,第一级菜单就制作完毕。如图4-6所示。
26
共分享92篇相关文档