单片机原理及应用第2版张兰红第11章单片机应用系统的开发与设计.pptx

上传人:wj 文档编号:2484857 上传时间:2023-05-03 格式:PPTX 页数:32 大小:3.40MB
下载 相关 举报
单片机原理及应用第2版张兰红第11章单片机应用系统的开发与设计.pptx_第1页
第1页 / 共32页
单片机原理及应用第2版张兰红第11章单片机应用系统的开发与设计.pptx_第2页
第2页 / 共32页
单片机原理及应用第2版张兰红第11章单片机应用系统的开发与设计.pptx_第3页
第3页 / 共32页
单片机原理及应用第2版张兰红第11章单片机应用系统的开发与设计.pptx_第4页
第4页 / 共32页
单片机原理及应用第2版张兰红第11章单片机应用系统的开发与设计.pptx_第5页
第5页 / 共32页
单片机原理及应用第2版张兰红第11章单片机应用系统的开发与设计.pptx_第6页
第6页 / 共32页
单片机原理及应用第2版张兰红第11章单片机应用系统的开发与设计.pptx_第7页
第7页 / 共32页
单片机原理及应用第2版张兰红第11章单片机应用系统的开发与设计.pptx_第8页
第8页 / 共32页
单片机原理及应用第2版张兰红第11章单片机应用系统的开发与设计.pptx_第9页
第9页 / 共32页
单片机原理及应用第2版张兰红第11章单片机应用系统的开发与设计.pptx_第10页
第10页 / 共32页
单片机原理及应用第2版张兰红第11章单片机应用系统的开发与设计.pptx_第11页
第11页 / 共32页
单片机原理及应用第2版张兰红第11章单片机应用系统的开发与设计.pptx_第12页
第12页 / 共32页
单片机原理及应用第2版张兰红第11章单片机应用系统的开发与设计.pptx_第13页
第13页 / 共32页
单片机原理及应用第2版张兰红第11章单片机应用系统的开发与设计.pptx_第14页
第14页 / 共32页
单片机原理及应用第2版张兰红第11章单片机应用系统的开发与设计.pptx_第15页
第15页 / 共32页
单片机原理及应用第2版张兰红第11章单片机应用系统的开发与设计.pptx_第16页
第16页 / 共32页
单片机原理及应用第2版张兰红第11章单片机应用系统的开发与设计.pptx_第17页
第17页 / 共32页
单片机原理及应用第2版张兰红第11章单片机应用系统的开发与设计.pptx_第18页
第18页 / 共32页
单片机原理及应用第2版张兰红第11章单片机应用系统的开发与设计.pptx_第19页
第19页 / 共32页
单片机原理及应用第2版张兰红第11章单片机应用系统的开发与设计.pptx_第20页
第20页 / 共32页
亲,该文档总共32页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

单片机原理及应用第2版张兰红第11章单片机应用系统的开发与设计.pptx

《单片机原理及应用第2版张兰红第11章单片机应用系统的开发与设计.pptx》由会员分享,可在线阅读,更多相关《单片机原理及应用第2版张兰红第11章单片机应用系统的开发与设计.pptx(32页珍藏版)》请在冰点文库上搜索。

单片机原理及应用第2版张兰红第11章单片机应用系统的开发与设计.pptx

1,3.7,第11章单片机应用系统的开发与设计,单片机应用系统的开发过程,11.1,LED点阵显示屏设计,11.2,使用DS18B20温度传感器设计的温控系统,11.3,步进电动机控制系统设计,11.4,18:

32,2,11.1单片机应用系统的开发过程,11.1.1总体设计,单片机应用系统的开发过程包括总体设计、硬件设计、软件设计、在线仿真调试、程序固化等几个阶段。

1确定技术指标在开始设计前,必须明确应用系统的功能和技术要求,综合考虑系统的先进性、可靠性、可维护性、成本及经济效益等。

再参考国内外同类产品的资料,提出合理可行的技术指标,以达到最高的性能/价格比。

18:

32,3,2机型选择机型选择可根据市场情况,挑选成熟、稳定、货源充足的机型产品。

同时还应根据应用系统的要求,考虑所选的单片机应具有较高的性能价格比。

另一方面为提高经济效率,缩短研制周期,最好选用最熟悉的机种和器件,采用性能优良的单片机开发工具也能加快系统的研制过程。

3器件选择应用系统除单片机以外,通常还有传感器、模拟电路、输入/输出电路等器件和设备。

这些部件的选择应符合系统的精度、速度和可靠性等方面的要求。

4软、硬件功能划分系统硬件和软件的设计是紧密联系在一起的,在某些场合硬件和软件具有一定的互换性。

为了降低成本、简化硬件结构,某些可由软件来完成的工作尽量采用软件:

若为了提高工作速度、精度、减少软件研制的工作量、提高可靠性也可采用硬件来完成。

总之硬、软件两者是相辅相成的,可根据实际应用情况来合理选择。

18:

32,4,硬件设计的主要任务是根据总体设计要求,以及在所选机型的基础上,确定系统扩展所要用的存储器、IO电路、AD及有关外围电路等,然后设计出系统的电路原理图。

在硬件设计的各个环节所进行的工作为:

1程序存储器的设计:

外部扩展的程序存储器种类主要有EPROM、EEPROM和FlashEEPROM。

目前大多数单片机生产厂家都提供大容量FlashEEPROM型号的单片机,其存储单元数量都达到了64KB,能满足绝大多数用户的需要,且价格与片内无ROM的单片机不相上下,因此用户在大多数情况下没有必要再扩展外部程序存储器。

2数据存储器设计:

对于数据存储器的容量要求,各个系统之间差别比较大。

若要求的容量不大可以选用多功能的RAM、IO扩展芯片,如8155等。

若要求较大容量的RAM,原则上应选用容量较大的芯片,以减少RAM芯片数量而简化硬件线路。

11.1.2硬件设计,输入输出接口设计:

在选择IO接口电路时应从体积、价格、功能、负载等几个方面来考虑。

标准的可编程接口电路8255A、8155接口简单、使用方便、功能强、对总线负载小、因而应用很广泛。

但对于有些要求口线很少的应用系统,则可采用TTL电路,这样可提高口线的利用率,且驱动能力较大。

对于AD、DA电路芯片的选择原则应根据系统对它的速度、精度和价格的要求而确定。

除此之外还应考虑和系统中的传感器、放大器相匹配问题。

18:

32,5,3地址译码电路的设计:

80C5l系统有充足的存储器空间,包括64KB程序存储器和64KB数据存储器,在应用系统中一般不需要这么大的容量。

为了简化硬件线路,同时还要使所用到的存储器空间地址连续,通常采用译码法和线选法相结合的办法进行设计。

4总线驱动器的设计:

80C51系列单片机扩展功能比较强,但扩展总线负载能力有限。

若所扩展的电路负载超过总线负载能力时,系统便不能可靠地工作。

此情况下必须在总线上加驱动器。

总线驱动器不仅能提高位口总线的驱动能力,而且可提高系统抗干扰性。

常用的总线驱动器为单向8路三态缓冲器74LS244、双向8路三态缓冲器74LS245等。

5其它外围电路的设计:

单片机主要用于实时控制,应用系统具有一般计算机控制系统的典型特征,系统硬件设计包括与测量、控制有关的外围电路。

例如键盘、显示器、打印机、开关量输入输出设备、模拟量数字量的转换设备、采样、放大等外围电路。

18:

32,6,6可靠性设计:

单片机应用系统的可靠性是一项最重要最基本的技术指标,这是硬件设计时必须考虑的一个指标。

可靠性是指在规定的条件下,规定的时间内完成规定功能的能力。

规定的条件包括环境条件(如温度、湿度、振动等)、供电条件等;规定的时间一般指平均无故障时间、连续正常运转时间等;规定的功能随单片机的应用系统不同而不同。

单片机应用系统在实际工作中,可能会受到各种外部和内部的干扰,使系统工作产生错误或故障,为了减少这种错误和故障,就要采取各种提高可靠性的措施。

常用的措施有:

(1)提高元器件的可靠性:

在系统硬件设计和加工时应注意选用质量好的电子元器件、接插件,要进行严格的测试、筛选和老化,同时设计的技术参数应留有余量。

(2)提高印刷电路板和组装的质量,设计电路板时布线及接地方法要符合要求。

(3)对供电电源采取抗干扰措施。

例如用带屏蔽层的电源变压器、加电源低通滤波器、电源变压器的容量应留有余地等措施。

(4)输入输出通道抗干扰措施:

可采用光电隔离电路、双绞线等提高抗干扰能力。

18:

32,7,11.1.3软件设计,1系统定义系统定义是指在软件设计前,首先要进一步明确软件所要完成的任务,然后结合硬件结构,确定软件承担的任务细节。

软件定义内容有:

(1)定义各输入输出接口的功能、信号的类别、电平范围、与系统接口方式、占用端口地址、读取的输入方式等。

(2)定义并分配存储器空间,如系统主程序、功能子程序块的划分、常数表格、入口地址表等。

(3)若有断电保护措施,应定义数据暂存区标志单元等。

(4)面板开关、按键等控制输入量的定义、系统运行过程的显示、运算结果的显示、正常运行和出错显示的定义。

18:

32,8,2软件结构设计对于简单的单片机应用系统,可采用顺序结构设计方法,其系统软件由主程序和若干个中断服务程序构成,明确主程序和中断服务程序完成的操作,指定各中断的优先级。

对于复杂的实时控制系统,可采用实时多任务操作系统,此操作系统应具备任务调度、实时控制、实时时钟、输入输出和中断控制、系统调用、多个任务并行运行等功能,以提高系统的实时性和并行性。

在程序设计方法上,模块程序设计是单片机应用中最常用的程序设计方法。

这种模块化程序便于设计和调试、容易完成并可供多个程序共享,但各模块之间的连接有一定的难度。

根据需要也可采用自上而下的程序设计方法,此方法是先从主程序开始设计,然后再编制各从属的程序和子程序。

这种方法比较符合人们的日常思维。

缺点是上一级的程序错误会对整个程序产生影响。

软件结构设计和程序设计方法确定后,根据系统功能定义,可先画出程序粗框图,再对粗框图进行扩充和具体化,即对存储器、寄存器、标志位等工作单元作具体的分配和说明,再绘制出详细的程序流程图。

程序流程图设计出以后,便可着手编写程序,再经仿真调试,正常运行后,固化到EPROM中去,便完成了整个应用系统的设计。

18:

32,9,11.2LED点阵显示屏设计,11.2.1项目任务,使用80C51单片机与两片88点阵显示器,设计一个点阵显示屏,能显示汉字及简单的图形。

项目要求:

(1)显示稳定无闪烁。

(2)程序设计中,要使文字或图形运动。

11.2.2项目分析,LED点阵显示器有多种品种可供选择,以显示的颜色可分为单色、双色、三色等;以发光亮度可分为普通亮度、高亮度、超高亮度等。

一块LED点阵块的LED数量可有44(即4列4行)、57、58、88等规格;点阵中单个LED的直径常用的有1.9mm、3mm、3.7mm、4.8mm、5mm、7.62mm、10mm、20mm等。

18:

32,10,(a)外观(b)排列示意图图11-188LED点阵外观及排列示意图,图11-2LED点阵内部接线与引脚编号,18:

32,11,11.2.3项目硬件设计,1.电路设计,图11-3点阵显示屏电路图,18:

32,12,2.74HC595介绍,74HC595是8位串行输入/输出或者并行移位寄存器,具有高阻关断状态。

包括一个8位移位寄存器、一个8位D型锁存器和三态并行输出。

移位寄存器接收串行数据并提供串行输出,也提供并行数据输出和8位锁存器。

移位寄存器和锁存器都有独立的时钟输入,同时还具有异步复位的功能。

引脚如下:

图11-474HC595的引脚,74HC164和74HC595功能相仿,都是8位串行输入、并行输出的移位寄存器。

74HC164的驱动电流(25mA)比74HC595(35mA)的要小,14脚封装,体积也小一些。

74HC595的主要优点是具有数据存储寄存器,在移位的过程中,输出端的数据可以保持不变。

这在串行速度慢的场合很有用处,数码管没有闪烁感。

与74HC164只有数据清零端相比,74HC595尚有输出的使能/禁止控制端,可使输出为高阻态。

18:

32,13,11.2.4项目程序设计,通过单片机的串口向74HC595发送数据到2片88点阵显示屏,滚动显示,显示的内容包括一个“”图形和“天天向上”四个汉字,通过按键控制,显示可以向左方向移动,也可以向右方向移动。

18:

32,14,#include#include#include#defineucharunsignedchar#defineuintunsignedintsbitRCK_Pin=P32;/74HC595输出锁存器控制sbitk1=P11;sbitk2=P13;ucharflag=1;ucharcodeDSY_CONTENT_8x8_0=/向左移动的图形点阵0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xF7,0xE3,0x81,0x00,0xC3,0xC3,0xC3,0xC3,0xC3,0xC3,0xC3,0xE7,0xE7,0xFF,0xEE,0xAD,0xAB,0x87,0xA3,0xAD,0xEE,0xFF,/*天*/0xEE,0xAD,0xAB,0x87,0xA3,0xAD,0xEE,0xFF,/*天*/0xFF,0xC0,0xB7,0xD3,0xD3,0xDF,0xC0,0xFF,/*向*/0xFF,0xFD,0xFD,0x81,0xED,0xED,0xFD,0xFF,/*上*/0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,;,18:

32,15,ucharcodeDSY_CONTENT_8x8_1=/向右移动的图形点阵0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xF7,0xE3,0x81,0x00,0xC3,0xC3,0xC3,0xC3,0xC3,0xC3,0xC3,0xE7,0xE7,0xFF,0xEE,0xAD,0xAB,0x87,0xA3,0xAD,0xEE,0xFF,/*天*/0xEE,0xAD,0xAB,0x87,0xA3,0xAD,0xEE,0xFF,/*天*/0xFF,0xC0,0xDF,0xD3,0xD3,0xB7,0xC0,0xFF,/*向*/0xFF,0xFD,0xED,0xED,0x81,0xFD,0xFD,0xFF,/*上*/0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,;ucharScan_BIT=0x01,Scan_BIT1=0x80;ucharOffset,Data_Index=0,Offset1,Data_Index1=0;voidDelay(uintt)/延时程序uchari;while(t-)for(i=0;i120;i+);,18:

32,16,/*T0定时器中断控制点阵显示*/voidT0_Led_Display_Control()interrupt1TH0=(65536-1000)/256;/重新装入定时时间常数TL0=(65536-1000)%256;if(flag=0)/左移Scan_BIT1=0x80;Data_Index1=0;Scan_BIT=_cror_(Scan_BIT,1);/先通过串口发送列选通码putchar(Scan_BIT);while(TI=0);putchar(DSY_CONTENT_8x8_0Offset+Data_Index+8);/发送两字节的点阵编码while(TI=0);putchar(DSY_CONTENT_8x8_0Offset+Data_Index);while(TI=0);Data_Index=(Data_Index+1)%8;RCK_Pin=1;/上升沿将数据送到输出锁存器RCK_Pin=0;/锁存显示数据,18:

32,17,if(flag=1)/右移Scan_BIT=0x01;Data_Index=0;Scan_BIT1=_crol_(Scan_BIT1,1);putchar(Scan_BIT1);while(TI=0);putchar(DSY_CONTENT_8x8_1Offset1+Data_Index1);while(TI=0);putchar(DSY_CONTENT_8x8_1Offset1+Data_Index1+8);while(TI=0);Data_Index1=(Data_Index1+1)%8;RCK_Pin=1;RCK_Pin=0;,18:

32,18,/*主程序*/voidmain()uchari;TMOD=0x01;TH0=(65536-1000)/256;TL0=(65536-1000)%256;IE=0x82;TCON=0x00;TI=1;while

(1)for(i=0;i64;i+)if(k1=0)flag=1;/k1开关合上,图形向右边移动if(k2=0)flag=0;/k2开关合上,图形向左边移动Offset=i;Offset1=i;TR0=1;Delay(50);TR0=0;,18:

32,19,11.2.5仿真与实验结果,图11-5点阵显示屏仿真电路,18:

32,20,11.2.5仿真与实验结果,图11-6点阵显示屏仿真电路,18:

32,21,18:

32,22,(a)仿真结果(b)实验结果图11-8显示“向上”的仿真与实验结果,18:

32,23,11.4步进电机控制系统设计,步进电机是工业过程中一种能够快速启动、反转和制动的执行元件,其功能是将电脉冲转换为相应的角位移或直线位移。

作为一种数字伺服执行元件,它具有结构简单、运行可靠、控制方便、控制性能好等优点,广泛应用在数控机床、机器人、自动化仪表等领域。

11.4.1项目任务,使用80C51单片机对四相步进电机进行控制,使其能够顺时针或逆时针旋转。

项目要求:

(1)电机运行平稳,正反转控制自如。

(2)根据要求改变运行圈数和运行速度。

18:

32,24,11.4.2项目分析,步进电机驱动原理如下:

单片机发出脉冲信号,控制步进电机定子的各相绕组以适当的时序通、断电,使其作步进式旋转。

四相步进电机各相绕组的通电顺序可以单4拍(ABCD)、双4拍(ABBCCDDA)和单双八拍(AABBBCCCDDDA)的方式进行。

按上述顺序切换,步进电机转子按顺时针方向旋转。

若通电顺序相反,则电机转子按逆时针方向旋转。

11.4.3项目硬件设计,1.电路设计步进电机控制系统电路原理图如图11-17所示。

图中除单片机、晶振电路、复位电路外,还包括步进电机驱动电路,另外使用了3个按键K1K3与三个发光二极管D1D3,用来控制与指示电机的正转、反转与停止,还使用了四个发光二极管D4D7,作为步进电机转动步数的指示。

图11-17步进电机控制系统电路原理图,18:

32,25,2.步进电机驱动电路,普通电动玩具内的小电机只需1.5V的电池就能驱动,而单片机的数字信号即使有5V的电位差也不能驱动小电机,原因是单片机I/O口输出的电流太小,不足以使电机动作,因此单片机I/O口必须接驱动电路才能驱动步进电机。

一般步进电机的驱动电路如图11-18所示。

在实际应用中驱动路数一般有多路,用图11-18所示的分立电路体积大,很多场合用现成的集成电路作为多路驱动电路。

(a)内部结构(b)等效电路图11-19ULN2003的内部结构,图11-18一般的步进电机驱动电路,常用的小型步进电机集成驱动电路为ULN2003。

ULN2003是高压大电流达林顿晶体管阵列产品,具有电流增益高、工作电压高、温度范围宽、带负载能力强等特点,可用于采用单片机控制的各类小型电机的驱动。

ULN2003内部结构及等效电路如图11-19所示。

管脚17作为输入,1610作为输出,8脚接地,9脚接+5V电源,如果1脚接高电平1,则16脚输出低电平0。

ULN2003的驱动电流可达500mA。

图11-17中用P1.0P1.3作为步进电机驱动信号输出口,输出信号经ULN2003达林顿管进行电流放大后,驱动步进电机运行。

18:

32,26,P3.0P3.2作为按键K1K3的输入接口,K1K3分别是正转、反转和停止按键。

P0.0P0.2接了三个LED发光二极管D1D3,用来指示当前步进电机的正转、反转和停止运行状况。

3.按键与指示电路,18:

32,27,11.4.4项目程序设计,18:

32,28,#include#defineuintunsignedint#defineucharunsignedcharucharcodeFFW=0x01,0x03,0x02,0x06,0x04,0x0c,0x08,0x09/步进电机正转八拍A-AB-B-BC-C-CD-D-DA;ucharcodeREV=0x09,0x08,0x0c,0x04,0x06,0x02,0x03,0x01/步进电机反转八拍AD-D-DC-C-CB-B-BA-A;sbitK1=P30;/正转按键sbitK2=P31;/反转按键sbitK3=P32;/停止按键voidDelayMS(uintms)/延时程序uchari;while(ms-)for(i=0;i120;i+);,选择让4相步进电机工作于单双8拍方式,按下正转键实现正转三圈,按下反转键实现反转三圈,按下停止键,立即停止。

设步进电机的步进角为每拍9o,程序设计如下:

18:

32,29,voidSETP_MOTOR_FFW(ucharn)/步进电机正转uchari,j;for(i=0;i5*n;i+)/步进电机的步距角为每拍9o,八拍为72o,转一圈需要5个八拍for(j=0;j8;j+)if(K3=0)break;/按下停止按键则跳出循环P1=FFWj;DelayMS(25);voidSETP_MOTOR_REV(ucharn)/步进电机反转uchari,j;for(i=0;i5*n;i+)/步进电机的步距角为每拍9o,八拍为72o,转一圈需要5个八拍for(j=0;j8;j+)if(K3=0)break;./按下停止按键,则跳出循环P1=REVj;DelayMS(25);,18:

32,30,voidmain()ucharN=3;while

(1)if(K1=0)/当按键K1按下时,步进电机开始正转三圈P0=0xfe;SETP_MOTOR_FFW(N);if(K3=0)break;elseif(K2=0)/当按键K2按下时,步进电机开始反转三圈P0=0xfd;SETP_MOTOR_REV(N);if(K3=0)break;/当按键K3按下时,步进电机停转elseP0=0xfb;/待机状态时,停止指示灯亮P1=0x03;/P1.0和P1.1口处于高电平,18:

32,31,11.4.5仿真与实验结果,图11-20步进电机控制系统Proteus仿真电路,18:

32,32,图11-21步进电机控制系统实物,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2