- 51单片机典型模块开发查询手册
- 程国钢 陈跃琴 崔荔蒙编著
- 1986字
- 2020-08-28 23:53:59
1.1 51单片机应用系统设计基础
51单片机应用系统的设计是一个包括需求分析、硬件设计、软件设计的综合过程。
1.1.1 51单片机应用系统的结构
一个完整的51单片机应用系统的结构如图1.1所示,由51单片机内核、51单片机的内部资源、51单片机扩展的外部资源及51单片机上运行的用户软件组成。
图1.1 51单片机应用系统组成结构
● 51单片机内核:这是51单片机的核心部分,包括时钟产生模块、ALU运算模块、通用寄存器等。
● 51单片机的内部资源:51单片机内部自带了一些诸如定时/计数器、外部中断、串行通信模块的资源,可以完成部分核心功能。
● 51单片机扩展的外部资源:由于51单片机的通用性较强,所以其集成的内部资源有限,当应用系统需要完成一些特殊功能的时候,如测量温度、湿度等,则需要外扩一些外部资源(器件),这些外部资源(器件)和51单片机内核、51单片机的内部资源一起构成了51单片机应用系统的硬件资源,是51单片机应用系统的基础。
● 51单片机上运行的用户软件:设计者根据应用系统的具体功能所编写的应用代码,是51单片机应用系统的“大脑”,这些应用代码可以用C语言编写,也可以用汇编语言编写,在最终执行的时候都要被编译器转换为机器语言。
1.1.2 51单片机应用系统设计流程
51单片机应用系统的开发流程如图1.2所示,主要分为7个步骤。
图1.2 51单片机应用系统开发流程
(1)需求分析:这是51单片机应用系统开发流程中最重要的一个环节,是51单片机应用系统的设计基础,设计者需要和用户仔细交流,完整地记录下该应用系统需要完成的所有工作,从中抽象出系统的需求并且和用户反复沟通后确认。这一步的难度在于如何规范用户的需求,因为用户的需求有可能是随时变更的,设计者既要尽量满足用户的所有需求,又要学会对用户的“非合理需求”做到断然拒绝。
(2)总体设计:在这个步骤中设计者要从需求出发对系统进行总体性的规划,并且选择好应用系统需要使用的具体51单片机型号,因为随着单片机技术的发展,市面上出现相当多内核相同而内部集成资源和运行频率不同的51单片机,可以根据需求的不同来选择合适的型号以减少应用系统设计的复杂度、体积和成本。
(3)软硬件功能划分和模块设计:51单片机系统的一些功能既可以由软件实现,也可以由硬件实现。前者的优点是降低硬件成本,增加系统运行可靠性,缺点是可能导致软件设计复杂度增加,系统反应时间延长;后者的优点是系统反应速度快,软件设计简单,缺点是硬件成本上升,系统运行可靠性下降。模块设计是在划分完软硬件功能之后按照需求和选择好的处理器对系统进行模块化的工作。
(4)硬件设计:这是51单片机应用系统设计的基础,包括具体硬件芯片选择、地址和接口规划、电路图设计和制作、元器件焊接等,硬件设计决定了单片机系统设计的成败,如果硬件设计出了问题,基本上就需要重新设计,浪费漫长的时间和大量的资金。
(5)软件设计:这是单片机系统设计的灵魂,单片机系统是在软件控制下工作的,一个良好的软件可以达到很好的效率,规避系统运行中的风险。单片机的软件设计和普通的PC软件设计有很多共同点,但是也有区别,具体点是指时效性和可靠性要求要高于PC软件。
(6)软硬件联合调试:这是单片机设计的整合过程,在这个过程中要让软件在单片机系统上运行起来,控制硬件进行相应的工作,用于测试硬件设计和软件设计是否达到了预先的设计目标。
(7)现场测试:51单片机系统有其具体的使用场合,这些实际使用场合和开发环境往往有所差异,例如,供电电压、空气湿度、温度、静电干扰等。所以,当单片机系统完成了软硬件联合调试之后,需要将单片机系统放置于其具体使用环境中进行进一步测试,以消除可能由于环境差异带来的不稳定乃至完全不能正常工作的错误。
1.1.3 51单片机应用系统的硬件设计
硬件设计是51单片机应用系统的设计基础,这个过程直接决定了设计的成败,硬件设计的流程如图1.3所示。
图1.3 51单片机应用系统硬件设计流程
(1)电路逻辑设计:根据选择的具体的51单片机型号和需要扩展的外部器件进行硬件逻辑上的设计,包括电气连接、地址分配等。
(2)设计电路原理图:利用电路图相关设计软件设计51单片机应用系统的电路原理图,为下一步PCB图设计做准备。
(3)设计PCB图:在电路原理图设计的基础上进行51单片机应用系统的PCB图设计,这是51单片机系统硬件设计的最关键步骤,不仅要求电气物理逻辑连接正确,在期间还需要遵循一些设计技巧和规则。
(4)PCB制作和元器件焊接:PCB制作是指将PCB图制作成电路板实体的过程,一般在电路板厂中完成,元器件焊接是指在电路板制作完成之后将对应的元器件用焊锡固定到电路板上,并且使得其电气物理连接到一起的过程。
(5)硬件测试:在电路板制作并且焊接完成之后对硬件部分进行测试,确定其有没有逻辑或者电气上的错误,如果有,则需要返回第一个步骤进行修改。
(6)软件设计:在硬件测试通过之后即可以开始进行51单片机系统上的软件开发,让软件和硬件配合实现系统的设计目标。