1、第第1010章章 单片机应用系统设计技术单片机应用系统设计技术主讲:聂雄主讲:聂雄第第1010章章 单片机应用系统设计技术单片机应用系统设计技术u单片机应用系统设计的基本原则单片机应用系统设计的基本原则u单片机应用系统设计的一般过程单片机应用系统设计的一般过程u模块化软件设计模块化软件设计u单片机开发系统单片机开发系统u单片机应用系统设计举例单片机应用系统设计举例10.110.1单片机应用系统设计的基本原则单片机应用系统设计的基本原则1.1.可靠性高可靠性高2.2.性能价格比高性能价格比高3.3.操作简便操作简便4.4.设计周期短设计周期短10.2 10.2 单片机应用系统设计的一般过程单片机
2、应用系统设计的一般过程 确定任务、总体设计、硬件设计、软件设件、在线确定任务、总体设计、硬件设计、软件设件、在线仿真调试、程序固化等阶段。仿真调试、程序固化等阶段。 10.2.110.2.1确定任务确定任务 在设计单片机应用系统前必须明确应用系统的功能在设计单片机应用系统前必须明确应用系统的功能和技术指标。首先要对应用对象的工作过程进行深入调和技术指标。首先要对应用对象的工作过程进行深入调查分析和细致研究,明确单片机系统所要完成的任务、查分析和细致研究,明确单片机系统所要完成的任务、控制对象的状况及所要达到的技术指标控制对象的状况及所要达到的技术指标.10.2.210.2.2总体设计总体设计
3、总体设计包括:系统构成,单片机选型,外围器器总体设计包括:系统构成,单片机选型,外围器器的选择,软件、硬件功能划分等的选择,软件、硬件功能划分等1.系统构成系统构成 确定整个单片机系统的组成部分,例如显示、键盘确定整个单片机系统的组成部分,例如显示、键盘、输入通道、输出通道、打印、通信等。、输入通道、输出通道、打印、通信等。 2.单片机机型的选择单片机机型的选择 首先,应根据任务的首先,应根据任务的繁杂程度繁杂程度和和技术指标技术指标要求要求选择选择机型机型。机型选择的出发点及依据,可根据市场情况,挑。机型选择的出发点及依据,可根据市场情况,挑选成熟、稳定、货源充足的机型产品。选成熟、稳定、货
4、源充足的机型产品。 另一方面为另一方面为提高效率提高效率,缩短研制周期缩短研制周期,最好选用最,最好选用最熟悉的机种和器件。采用性能优良的单片机开发工具也熟悉的机种和器件。采用性能优良的单片机开发工具也能加快系统的研制过程。能加快系统的研制过程。10.2.210.2.2总体设计总体设计 3.外围器件选择外围器件选择 应用系统除单片机以外,系统通常还有应用系统除单片机以外,系统通常还有执行器件执行器件、传感器传感器、模拟电路模拟电路、输入输出接口输入输出接口电路、存储器等器件电路、存储器等器件和设备。和设备。 4.软硬件功能划分软硬件功能划分 原则上,能够由软件来完成的任务就尽可能用软件原则上,
5、能够由软件来完成的任务就尽可能用软件来实现,以降低硬件成本,简化硬件结构,提高可靠性来实现,以降低硬件成本,简化硬件结构,提高可靠性,但是它可能会降低系统的工作速度。,但是它可能会降低系统的工作速度。10.2.3 硬件设计硬件设计 主要任务主要任务是根据总体设计要求,以及在所选机型的是根据总体设计要求,以及在所选机型的基础上,确定系统扩展所要用的存储器、基础上,确定系统扩展所要用的存储器、IO电路、电路、AD、D/A转换电路以及有关外围电路等,然后设计出系转换电路以及有关外围电路等,然后设计出系统的电路原理图。统的电路原理图。1.程序存储器的设计程序存储器的设计 通常尽可能选择满足系统通常尽可
6、能选择满足系统程序容量要求程序容量要求的机型,而的机型,而不再进行程序存储器的扩展。不再进行程序存储器的扩展。2.数据存储器和输入输出接口的设计数据存储器和输入输出接口的设计 在选择在选择IO接口电路时应从接口电路时应从体积、价格、功能、负体积、价格、功能、负载载等几个方面来考虑。等几个方面来考虑。 对于对于AD、DA电路芯片电路芯片的选择原则应根据系统对的选择原则应根据系统对它的它的速度速度、精度精度和和价格价格要求而确定。要求而确定。10.2.3 硬件设计硬件设计3.地址译码电路的设计地址译码电路的设计 地址译码电路的设计,应考虑充分利用地址译码电路的设计,应考虑充分利用存储空间存储空间和
7、和简化硬件逻辑简化硬件逻辑等方面的问题,通常采用等方面的问题,通常采用全地址译码法全地址译码法和和线选法相结合线选法相结合的办法。的办法。4.总线驱动器的设计总线驱动器的设计 5l系列单片机扩展功能比较强,但扩展总线负载能力系列单片机扩展功能比较强,但扩展总线负载能力有限。若所扩展的电路负载超过总线负载能力时,系统有限。若所扩展的电路负载超过总线负载能力时,系统便不能可靠地工作。此情况下必须在总线上加驱动器。便不能可靠地工作。此情况下必须在总线上加驱动器。10.2.3 硬件设计硬件设计5.模拟量输入和模拟量输出电路的设计模拟量输入和模拟量输出电路的设计 包括:模拟量包括:模拟量输入系统输入系统
8、和和输出系统输出系统设计设计(1)模拟量输入系统设计模拟量输入系统设计 模拟输入系统一般由电压形成,模拟滤波(模拟输入系统一般由电压形成,模拟滤波(ALF)、采样保持(、采样保持(SH)电路、模拟多路转换开关以及)电路、模拟多路转换开关以及AD转换器等组成。检测信号通常采用电流传输方式。电压转换器等组成。检测信号通常采用电流传输方式。电压形成回路负责将检测信号变换为形成回路负责将检测信号变换为AD转换器所需的标准转换器所需的标准电压信号。通常采用电压信号。通常采用IV电阻变换器。若检测信号微弱电阻变换器。若检测信号微弱还需要加接放大电路。在还需要加接放大电路。在AD转换之前往往还需要加接转换之
9、前往往还需要加接采样保持采样保持(SH)电路。电路。 在单片机测控应用系统中,经常需要多路或多参数在单片机测控应用系统中,经常需要多路或多参数采集。采集。 10.2.3 硬件设计硬件设计5.模拟量输入和模拟量输出电路的设计模拟量输入和模拟量输出电路的设计(1)模拟量输入系统设计模拟量输入系统设计(2)模拟量输出系统设计模拟量输出系统设计模拟量输出通道负责把单片机系统处理后的信号转换模拟量输出通道负责把单片机系统处理后的信号转换为模拟信号作为最后的输出以驱动控制对象,实现自动为模拟信号作为最后的输出以驱动控制对象,实现自动控制,控制,DA芯片是其重要组成部分。芯片是其重要组成部分。DA转换器对输
10、转换器对输入数字量是否具有锁存功能将直接影响与入数字量是否具有锁存功能将直接影响与CPU的接口设的接口设计。计。 6.系统速度匹配系统速度匹配 51系列单片机时钟频率可在系列单片机时钟频率可在212 MHz之间任选。在不之间任选。在不影响系统技术性能的前提下,可选择低时钟频率,以降影响系统技术性能的前提下,可选择低时钟频率,以降低系统功耗。低系统功耗。10.2.3 硬件设计硬件设计 7. 抗干扰措施抗干扰措施 根据干扰源引入的途径,抗干扰措施可以从电源供根据干扰源引入的途径,抗干扰措施可以从电源供电系统和硬件电路两个方面考虑。电系统和硬件电路两个方面考虑。 首先,对电源供电系统采取抗干扰措施。
11、首先,对电源供电系统采取抗干扰措施。其次,为了进一步提高系统的可靠性,在硬件电路设其次,为了进一步提高系统的可靠性,在硬件电路设计时,应采取一系列防干扰措施:计时,应采取一系列防干扰措施: (1) 大规模大规模IC芯片芯片电源供电端电源供电端VCC都应都应加高频滤波电容加高频滤波电容,根据负载电流的情况,在各级供电节点还应加根据负载电流的情况,在各级供电节点还应加足够容量足够容量的的退耦电容退耦电容; (2) 输入输出通道抗干扰措施。输入输出通道抗干扰措施。可采用光电隔离电路、双可采用光电隔离电路、双绞线等提高抗干扰能力。特别是与继电器、可控硅等连绞线等提高抗干扰能力。特别是与继电器、可控硅等
12、连接的通道,一定要采用隔离措施;接的通道,一定要采用隔离措施; 10.2.3 硬件设计硬件设计 7. 抗干扰措施抗干扰措施 (3) 可采用可采用CMOS器件提高工作电压(器件提高工作电压(+15 V),这样干),这样干扰门限也相应提高;扰门限也相应提高; (4) 传感器后级的变送器尽量采用电流型传输方式,因电传感器后级的变送器尽量采用电流型传输方式,因电流型比电压型抗干扰能力强;流型比电压型抗干扰能力强; (5) 电路应有合理的布线及接地方式;电路应有合理的布线及接地方式; (6) 与环境干扰的隔离可采用屏蔽措施。与环境干扰的隔离可采用屏蔽措施。10.2.410.2.4软件设计软件设计u软件系
13、统定义软件系统定义u软件结构设计软件结构设计u控制算法的确定控制算法的确定10.2.410.2.4软件设计软件设计u软件系统定义软件系统定义u系统定义是指在软件设计前,首先要进一步明确软件所要系统定义是指在软件设计前,首先要进一步明确软件所要完成的任务,然后结合硬件结构,确定软件承担的任务细完成的任务,然后结合硬件结构,确定软件承担的任务细节。节。10.2.410.2.4软件设计软件设计u软件定义的内容软件定义的内容如下:如下:(1)定义各输入输出的功能、信号的类别、电平范围、)定义各输入输出的功能、信号的类别、电平范围、与系统接口方式、占用的口地址、数据读取和输出的方与系统接口方式、占用的口
14、地址、数据读取和输出的方式等。式等。(2)定义分配存储器空间,包括系统主程序、常数表格、)定义分配存储器空间,包括系统主程序、常数表格、功能子程序块的划分、入口地址表等。功能子程序块的划分、入口地址表等。(3)若有断电保护措施,应定义数据暂存区标志单元等)若有断电保护措施,应定义数据暂存区标志单元等(4)面板开关、按键等控制输入量的定义与软件编制密切)面板开关、按键等控制输入量的定义与软件编制密切有关,系统运行过程的显示、运算结果的显示、正常运有关,系统运行过程的显示、运算结果的显示、正常运行和出错显示等也是由软件完成的,所以事先要给予以行和出错显示等也是由软件完成的,所以事先要给予以定义。定
15、义。10.2.410.2.4软件设计软件设计2. 软件结构设计软件结构设计 u 对于对于简单的单片机应用系统简单的单片机应用系统,可采用顺序结构设计方法,可采用顺序结构设计方法,其系统软件由主程序和若干个中断服务程序构成。明,其系统软件由主程序和若干个中断服务程序构成。明确主程序和中断服务程序完成的操作及指定各中断的优确主程序和中断服务程序完成的操作及指定各中断的优先级。先级。u 对于对于复杂的实时控制系统复杂的实时控制系统,可采用实时多任务操作系统,可采用实时多任务操作系统。此操作系统应具备任务调度、实时控制、实时时钟、。此操作系统应具备任务调度、实时控制、实时时钟、输入输出和中断控制、系统
16、调用、多个任务并行运行等输入输出和中断控制、系统调用、多个任务并行运行等功能。以提高系统的实时性和并行性。功能。以提高系统的实时性和并行性。10.2.410.2.4软件设计软件设计 3.控制算法的确定控制算法的确定u对被控对象的变化规律或控制过程客观真实地描述对被控对象的变化规律或控制过程客观真实地描述u建立被控对象的数学模型建立被控对象的数学模型u决定单片机系统需要检测哪些变量,采用怎样的控制算决定单片机系统需要检测哪些变量,采用怎样的控制算法法u可能还要考虑软件算法的精度等等可能还要考虑软件算法的精度等等10.2.5 10.2.5 单片机应用系统的调试单片机应用系统的调试u应用系统的调试分
17、硬件调试和软件调试。应用系统的调试分硬件调试和软件调试。u硬件调试的任务是排除系统的硬件电路故障,包括设硬件调试的任务是排除系统的硬件电路故障,包括设计性错误和工艺性故障。计性错误和工艺性故障。u软件调试是利用开发工具进行在线仿真调试,除发现软件调试是利用开发工具进行在线仿真调试,除发现和解决程序错误外,也可以发现硬件故障。和解决程序错误外,也可以发现硬件故障。10.2.5 10.2.5 单片机应用系统的调试单片机应用系统的调试1.常见的硬件故障常见的硬件故障u逻辑错误逻辑错误:由设计错误或加工过程中的工艺性错误所造成:由设计错误或加工过程中的工艺性错误所造成的。的。u元器件失效元器件失效:一
18、是元器件本身已损坏或性能不符合要求,:一是元器件本身已损坏或性能不符合要求,二是由于组装错误造成元器件失效。二是由于组装错误造成元器件失效。u可靠性差可靠性差:金属孔、接插件接触不良等,内部和外部的干:金属孔、接插件接触不良等,内部和外部的干扰、电源的纹波系数较大、器件负荷过重等会造成逻辑电扰、电源的纹波系数较大、器件负荷过重等会造成逻辑电平不稳定;走线和布局不合理等也会引起系统可靠性差。平不稳定;走线和布局不合理等也会引起系统可靠性差。u电源故障电源故障:包括电压值不符合设计要求,电源引线和插座:包括电压值不符合设计要求,电源引线和插座不对、电源功率不足、负载能力差等。不对、电源功率不足、负
19、载能力差等。10.2.5 10.2.5 单片机应用系统的调试单片机应用系统的调试2. 硬件调试方法硬件调试方法u脱机调试:脱机调试亦称静态调试。脱机调试:脱机调试亦称静态调试。对于样机所用的电源事先必须单独调试。对于样机所用的电源事先必须单独调试。u联机调试:联机调试亦称动态调试。联机调试:联机调试亦称动态调试。联机前先断电,将单片机开发系统的仿真头插到样机联机前先断电,将单片机开发系统的仿真头插到样机的单片机插座上,检查一下开发机与样机之间的电源、的单片机插座上,检查一下开发机与样机之间的电源、接地是否良好。如一切正常,即可打开电源。接地是否良好。如一切正常,即可打开电源。通电后执行开发机的
20、读写指令,对用户样机的存储器通电后执行开发机的读写指令,对用户样机的存储器、IO端口进行读写操作、逻辑检查。端口进行读写操作、逻辑检查。u主机部分调试好后,再调试外部设备主机部分调试好后,再调试外部设备10.2.5 10.2.5 单片机应用系统的调试单片机应用系统的调试3.软件调试方法软件调试方法 u软件调试与所选用的软件结构和程序设计技术有关软件调试与所选用的软件结构和程序设计技术有关。如果。如果采用模块程序设计技术,则逐个模块分别调试,一个子程采用模块程序设计技术,则逐个模块分别调试,一个子程序一个子程序地调试,最后联起来统调。序一个子程序地调试,最后联起来统调。u各模块通过以后,可以把各
21、模块通过以后,可以把有关的功能块联合起来有关的功能块联合起来一起进行一起进行综合调试。综合调试。u单步单步和和断点断点调试后,还应进行调试后,还应进行连续连续调试调试。u采用实时采用实时多任务多任务操作系统时,操作系统时,逐个任务逐个任务进行调试。进行调试。u程序联调运行正常后,还需在模拟的各种程序联调运行正常后,还需在模拟的各种现场条件现场条件和和恶劣恶劣环境环境下调试、运行,以检查系统是否满足原设计要求。下调试、运行,以检查系统是否满足原设计要求。10.2.610.2.6程序固化程序固化u软件和硬件联机调试反复运行正常后,则可将用户系统软件和硬件联机调试反复运行正常后,则可将用户系统程序固
22、化到程序存储器,程序固化需要借助开发系统的程序固化到程序存储器,程序固化需要借助开发系统的编程器来完成。再将已固化的程序存储器芯片插入用户编程器来完成。再将已固化的程序存储器芯片插入用户样机,用户系统即可脱离开发系统独立工作。样机,用户系统即可脱离开发系统独立工作。(Flash型单片型单片机已经不需要这一步步骤了)机已经不需要这一步步骤了)u应用系统还要到生产现场投入实际工作,检验其可靠性应用系统还要到生产现场投入实际工作,检验其可靠性和抗干扰能力,直到完全满足要求,至此,系统才算研和抗干扰能力,直到完全满足要求,至此,系统才算研制成功。制成功。10.3 10.3 模块化软件设计模块化软件设计
23、u模块化结构的基本组成模块化结构的基本组成u各模块数据缓冲区的建立各模块数据缓冲区的建立u模块化程序设计方法模块化程序设计方法u系统监控程序设计系统监控程序设计10.3.110.3.1模块化结构的基本组成模块化结构的基本组成 各功能模块以子程序的形式出现。模块结构一般分三层各功能模块以子程序的形式出现。模块结构一般分三层。u最低一层最低一层u最低一层是一个通用子程序库,这个子程序库包括三个方面的功能子最低一层是一个通用子程序库,这个子程序库包括三个方面的功能子程序:程序:u一般性子程序。一般性子程序。u过程控制通用子程序。过程控制通用子程序。u打印机及显示器的驱动子程序、数据传送和变换子程序打
24、印机及显示器的驱动子程序、数据传送和变换子程序u执行功能模块层执行功能模块层u它能完成各种实质性的功能。即在以上通用子程序库的基础上,根据它能完成各种实质性的功能。即在以上通用子程序库的基础上,根据对过程控制系统结构的归纳、分类和规范化,组成各执行功能模块。对过程控制系统结构的归纳、分类和规范化,组成各执行功能模块。u系统监控与管理模块层系统监控与管理模块层u协调各执行模块和操作者的关系,在系统软件中充当组织调度的角色。协调各执行模块和操作者的关系,在系统软件中充当组织调度的角色。u监控软件和各执行模块的安排监控软件和各执行模块的安排u整个系统软件可分为后台程序整个系统软件可分为后台程序( (
25、背景程序背景程序) )和前台程序。和前台程序。10.3.210.3.2各模块数据缓冲区的建立各模块数据缓冲区的建立 模块之间的联系是通过数据缓冲区以及控制字进行联系的模块之间的联系是通过数据缓冲区以及控制字进行联系的1.数据类型和数据结构规划数据类型和数据结构规划u将每一个执行模块要用到的参数和要输出的结果一并列出来。将每一个执行模块要用到的参数和要输出的结果一并列出来。u规划数据类型。从数据类型上来分类,数据可分为逻辑型与数值规划数据类型。从数据类型上来分类,数据可分为逻辑型与数值型。型。2.各模块数据缓冲区的确定各模块数据缓冲区的确定资源分配的主要工作是资源分配的主要工作是RAM资源的分配
26、。常用的方法如下:资源的分配。常用的方法如下:u片内片内RAM指指00H7FH单元。片内单元。片内RAM常用于作为栈区、位寻址常用于作为栈区、位寻址区和公共子程序的工作缓冲区,如存放参数、指针、中间结果等区和公共子程序的工作缓冲区,如存放参数、指针、中间结果等u片外片外RAM的容量比片内的容量比片内RAM大,通常用来存放批量大的数据,大,通常用来存放批量大的数据,可作为执行模块运算存储器用于存放需要保留时间较长的数据可作为执行模块运算存储器用于存放需要保留时间较长的数据10.3.310.3.3模块化程序设计方法模块化程序设计方法u模块化程序编程有模块化程序编程有2种方法:种方法:u一种是自上而
27、下,逐步细化;一种是自上而下,逐步细化;u一种是自下而上,先设计出具体模块(子程序),然后再一种是自下而上,先设计出具体模块(子程序),然后再慢慢扩大,象搭积木一样,最后形成系统(主程序)。慢慢扩大,象搭积木一样,最后形成系统(主程序)。u两种方法各有优缺点。两种方法各有优缺点。u自上而下方法在前期看不到什么具体效果,对于初学者来自上而下方法在前期看不到什么具体效果,对于初学者来说,心中不塌实;而自下而上的方法一开始就有效果,每说,心中不塌实;而自下而上的方法一开始就有效果,每设计一个模块,即可进行调试,就能看到一个实际效果,设计一个模块,即可进行调试,就能看到一个实际效果,给人一种一步一个足
28、印的感觉,对于初学者比较有利,能给人一种一步一个足印的感觉,对于初学者比较有利,能树立信心。树立信心。10.3.410.3.4系统监控程序设计系统监控程序设计1.监控程序的任务监控程序的任务系统监控程序是控制单片机系统按预定操作方式运系统监控程序是控制单片机系统按预定操作方式运转的程序。它完成人机会话和远程控制等功能,使系转的程序。它完成人机会话和远程控制等功能,使系统按操作者的意图或遥控命令来完成指定的作业。它统按操作者的意图或遥控命令来完成指定的作业。它是单片机系统程序的框架。是单片机系统程序的框架。2.监控程序的结构监控程序的结构u作业顺序调度型作业顺序调度型u键码分析作业调度型键码分析
29、作业调度型10.4 10.4 单片机开发系统单片机开发系统u单片机的开发系统由仿真器(或编程下载器)单片机的开发系统由仿真器(或编程下载器) 、微型计、微型计算机和配套软件构成。算机和配套软件构成。10.4 10.4 单片机开发系统单片机开发系统u简易开发系统结构简易开发系统结构 单片机应用系统单片机应用系统下载器下载器计算机计算机10.4 10.4 单片机开发系统单片机开发系统u简易开发系统结构简易开发系统结构 10.4 10.4 单片机开发系统(单片机开发系统(KeilKeil软件)软件)10.4 10.4 单片机开发系统(单片机开发系统(IARIAR软件)软件)10.5 10.5 单片机
30、应用系统设计举例单片机应用系统设计举例在实际的单片机工程开发中,我们需要进行下面的工作:在实际的单片机工程开发中,我们需要进行下面的工作:u分析工程需求,确定单片机需要哪些外围器件。分析工程需求,确定单片机需要哪些外围器件。u外围器件要尽量选择通用器件。外围器件要尽量选择通用器件。u根据工程要求,设计控制方案。根据工程要求,设计控制方案。u根据单最小系统以及外围器件的要求设计电路板,将元器根据单最小系统以及外围器件的要求设计电路板,将元器件焊接到电路板上。件焊接到电路板上。u逐个调试外围元器件程序,并将其编辑成函数形式,如液逐个调试外围元器件程序,并将其编辑成函数形式,如液晶显示函数、按键读取
31、函数、温度读取函数、电机旋转控晶显示函数、按键读取函数、温度读取函数、电机旋转控制函数。制函数。u编辑主函数、中断函数。按照控制的要求,主函数、中断编辑主函数、中断函数。按照控制的要求,主函数、中断函数调用其他函数操作外围器件,这就是工程的核心所在函数调用其他函数操作外围器件,这就是工程的核心所在,也是困惑初学者的难点之一。,也是困惑初学者的难点之一。10.5.1 10.5.1 单片机系统与传感器单片机系统与传感器u传感器信号的输出方式传感器信号的输出方式: :模拟信号和数字信号模拟信号和数字信号传感器传感器功能功能生产公司生产公司总线接口总线接口DS18B20DS18B20温度传感器温度传感
32、器美国美国DALLASDALLAS1-Wire1-WireMAX6626MAX6626温度传感器温度传感器美国美国MAXIMMAXIMI I2 2C CLM74LM74温度传感器温度传感器美国国家半导体美国国家半导体SPISPIMAX6691MAX6691配热电偶的四通道智能温度传感器配热电偶的四通道智能温度传感器美国美国MAXIMMAXIM单线单线PWMPWM输出输出MAX6674MAX6674 有冷端温度补偿的有冷端温度补偿的K K型热电偶转换器型热电偶转换器美国美国MAXIMMAXIMSPISPISHT11SHT11单片智能化湿度单片智能化湿度/ /温度传感器温度传感器瑞士瑞士Sensi
33、rionSensirion2 2线数字线数字MAX1458MAX1458数字式压力信号调理器数字式压力信号调理器美国美国MAXIMMAXIMSPISPISB5227SB5227超声波测距超声波测距重庆中易电测重庆中易电测技术研究所技术研究所RS-485RS-485FCD4B14FCD4B14单片指纹传感器单片指纹传感器美国美国ATMELATMELEPPEPP、USBUSB、数字数字MC1446BMC1446B离子型烟雾检测离子型烟雾检测MOTOROLAMOTOROLA数字数字表表10-110-1常见的传感器举例常见的传感器举例10.5.2 10.5.2 光电隔离技术光电隔离技术u在驱动大电流电
34、器或有较强干扰的设备时,常使用光在驱动大电流电器或有较强干扰的设备时,常使用光电隔离技术,以切断单片机与受控对象之间的电气联电隔离技术,以切断单片机与受控对象之间的电气联系。光电耦合器有系。光电耦合器有晶体管输出型晶体管输出型和和晶闸管输出型晶闸管输出型。u晶体管输出型光电耦合器晶体管输出型光电耦合器10.5.2 10.5.2 光电隔离技术光电隔离技术u晶闸管输出型光电耦合器晶闸管输出型光电耦合器10.5.3 10.5.3 单片机驱动低压电器单片机驱动低压电器u固态继电器固态继电器SSR(solid state releys)SSR(solid state releys)u固态继电器是一种无触
35、点通断电子开关固态继电器是一种无触点通断电子开关固态继电器的应用固态继电器的应用u使用单片机和固态继电器驱动交流使用单片机和固态继电器驱动交流220V220V电器的电路电器的电路10.5.3 10.5.3 单片机驱动低压电器单片机驱动低压电器u交流接触器交流接触器交流接触器应用电路交流接触器应用电路u使用单片机和交流接触器驱使用单片机和交流接触器驱动动3 3相电机的电路相电机的电路uKMKM是交流接触器的电磁线圈是交流接触器的电磁线圈(以交流(以交流380V380V线圈为例),线圈为例),单片机控制固态继电器的通单片机控制固态继电器的通断状态,进而控制接触器的断状态,进而控制接触器的电磁线圈是
36、否吸和。电磁线圈是否吸和。u固态继电器有光电隔离功能固态继电器有光电隔离功能,所以,所以380V380V的交流电对单片的交流电对单片机的控制不会有干扰。机的控制不会有干扰。10.5.4 10.5.4 单片机的看门狗电路单片机的看门狗电路u看门狗的作用就是防止程序发生死循环或防止单片机死看门狗的作用就是防止程序发生死循环或防止单片机死机机u由于单片机的工作常常会受到来自外界电磁场的干扰,程由于单片机的工作常常会受到来自外界电磁场的干扰,程序有时会陷入死循环,并造成整个系统的陷入停滞状态。序有时会陷入死循环,并造成整个系统的陷入停滞状态。出于对单片机安全运行进行实时监测的考虑,便产生了一出于对单片
37、机安全运行进行实时监测的考虑,便产生了一种专门用于监测单片机程序运行状态的芯片种专门用于监测单片机程序运行状态的芯片,俗称俗称“看门狗看门狗”(WDT)。)。u单片机的单片机的WDT其实是一个定时器其实是一个定时器u看门狗工作时启动了看门狗的定时器,看门狗就开始自动看门狗工作时启动了看门狗的定时器,看门狗就开始自动计数。在单片机正常工作的时候,需要每隔一端时间给定计数。在单片机正常工作的时候,需要每隔一端时间给定时器清零(即喂狗信号)。如果超过了定时器规定的时间时器清零(即喂狗信号)。如果超过了定时器规定的时间还没有输入喂狗信号,看门狗的定时器会溢出,就会输出还没有输入喂狗信号,看门狗的定时器
38、会溢出,就会输出一个复位信号到单片机,并使单片机复位。一个复位信号到单片机,并使单片机复位。2.AT89S51单片机的内置看门狗功能单片机的内置看门狗功能uAT89S51单片机内部集成了看门狗功能。单片机内部集成了看门狗功能。u看门狗的计数器叫看门狗的计数器叫WDTRST寄存器,是寄存器,是14位长度,最大位长度,最大计数值是计数值是16383,即,即3FFFH。uWDTRS寄存器在内部数据寄存器在内部数据RAM的地址是的地址是0A6H。看门狗的使用:看门狗的使用:u激活激活AT89S51看门狗的方法是先向该地址写看门狗的方法是先向该地址写01EH,然后,然后写写0E1H即可。即可。u喂狗指令
39、也是先向该地址写喂狗指令也是先向该地址写01EH,然后写,然后写0E1H3.AT89S513.AT89S51单片机看门狗的编程单片机看门狗的编程#include.sfr WDTRST = 0 xA6;/定义看门狗寄存器定义看门狗寄存器.void main() WDTRST=0 x1E;/初始化看门狗初始化看门狗 WDTRST=0 xE1;/初始化看门狗初始化看门狗 while(1) WDTRST=0 x1E;/喂狗指令喂狗指令 WDTRST=0 xE1;/喂狗指令喂狗指令 /其他操作其他操作 10.5.5 10.5.5 单片机的低功耗工作方式单片机的低功耗工作方式u单片机有两种低功耗方式,即待
40、机(或称空闲)方式和单片机有两种低功耗方式,即待机(或称空闲)方式和掉电(或称停机)保护方式。在低功耗方式,备用电源掉电(或称停机)保护方式。在低功耗方式,备用电源由由Vcc或或RST端输入。端输入。u待机方式可使功耗减小,电流一般为待机方式可使功耗减小,电流一般为1.75mA;掉电方式;掉电方式可使功耗减到最小,电流一般为可使功耗减到最小,电流一般为550A。待机方式和掉。待机方式和掉电保护方式所涉及的硬件如图电保护方式所涉及的硬件如图10-11所示。所示。10.5.6 10.5.6 单片机控制系统设计实例单片机控制系统设计实例1.功能要求功能要求 根据冲洗相片底片的要求,系统需要实现如下功
41、能:根据冲洗相片底片的要求,系统需要实现如下功能:需要对冲洗液的温度进行控制。需要对冲洗液的温度进行控制。需要不断地搅拌冲洗液。需要不断地搅拌冲洗液。2.方案论证方案论证u根据控制要求,系统框图如图根据控制要求,系统框图如图10-12所示所示3.3.硬件电路设计硬件电路设计表表10-1 10-1 器件的选型及其功能器件的选型及其功能器件器件功能功能使用控制引脚使用控制引脚AT89S51控制核心芯片DS18B20温度传感器P3.73个按键设定温度、启停P3.4、P3.5、P3.6液晶显示设定温度和当前温度P1口、P3.0、P3.1、P3.2固态继电器控制220V加热丝通断P2.0固态继电器控制2
42、20V冷水电机运转P2.1LG9012驱动12V搅拌电机运转P2.2、P2.3各模块硬件电路功能各模块硬件电路功能(1)温度采集单元)温度采集单元 温度采集电路使用温度传感器温度采集电路使用温度传感器DS18B20。(2)按键单元)按键单元 系统使用系统使用3个按键。个按键。P3.4使设定温度加使设定温度加0.1度,度,P3.5使设定温度减使设定温度减0.1度度,P3.6 控制系统启停。控制系统启停。(3)显示电路)显示电路 因为水槽的温度在因为水槽的温度在100以下,选择以下,选择1602LCD液晶,第一行显示设定液晶,第一行显示设定的温度,第二行显示当前的温度。的温度,第二行显示当前的温度
43、。(4)搅拌电路)搅拌电路 使用使用12V的小型直流电机对液体进行搅拌。的小型直流电机对液体进行搅拌。(5)加热电路)加热电路 使用打压为使用打压为220V,功率为,功率为300W的加热棒实现。使用单片机驱动固态的加热棒实现。使用单片机驱动固态继电器,进而控制加热棒。继电器,进而控制加热棒。(6)制冷电路)制冷电路 使用微型冰箱实现。冰箱启动后制冷,冷水储存在冷胆中。单片机驱使用微型冰箱实现。冰箱启动后制冷,冷水储存在冷胆中。单片机驱动动220V的小电机,可以将冷胆中的冷水置换到冲洗箱中。的小电机,可以将冷胆中的冷水置换到冲洗箱中。4.4.程序设计程序设计u程序包括两部分组成,定时器中断程序和
44、主程序。程序包括两部分组成,定时器中断程序和主程序。u使用定时器使用定时器T0中断产生中断产生20ms的时间,对该的时间,对该20ms计数可以产生计数可以产生1秒、秒、2秒、秒、8秒等时间,而实现温度检测、控制搅拌、加热等。秒等时间,而实现温度检测、控制搅拌、加热等。10.6 10.6 单片机应用系统的抗干扰技术单片机应用系统的抗干扰技术10.6.1干扰及其危害干扰及其危害 干扰的来源有外部干扰和内部干扰。外部干扰包括自然干扰和人为干扰干扰的来源有外部干扰和内部干扰。外部干扰包括自然干扰和人为干扰 (1)接口电路的干扰接口电路的干扰在单片机应用系统中,数据传输需要接口电路和一定距离的导线,这会
45、在单片机应用系统中,数据传输需要接口电路和一定距离的导线,这会使信号产生延时、畸变、衰减,造成干扰,特别是输出通道中存在大的负载使信号产生延时、畸变、衰减,造成干扰,特别是输出通道中存在大的负载时,更会造成严重干扰。时,更会造成严重干扰。(2)电路板的干扰电路板的干扰印制电路板是电子元器件安装、连接的载体,电路板的地线、电源线、印制电路板是电子元器件安装、连接的载体,电路板的地线、电源线、信号线、元器件的布局不合理,包括焊接的质量都是各种干扰的因素。信号线、元器件的布局不合理,包括焊接的质量都是各种干扰的因素。 (3)元器件造成的干扰元器件造成的干扰在电路中,使用了大量的电阻、电容和集成电路,这些元器件质量的好在电路中,使用了大量的电阻、电容和集成电路,这些元器件质量的好坏,都会直接影响到系统的可靠性。坏,都会直接影响到系统的可靠性。 (4)供电系统的干扰供电系统的干扰 电压的欠压、过压、尖峰电压、浪涌射频等干扰,这些干扰源都会造成电压的欠压、过压、尖峰电压、浪涌射频等干扰,这些干扰源都会造成对单片机供电的不稳定,影响系统的正常工作。对单片机供电的不稳定,影响系统的正常工作。