直流电动机正反转proteus仿真设计_第1页
直流电动机正反转proteus仿真设计_第2页
直流电动机正反转proteus仿真设计_第3页
直流电动机正反转proteus仿真设计_第4页
直流电动机正反转proteus仿真设计_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

直流电动机正反转Proteus仿真设计引言随着人民生活水平的提高,产品质量、性能、自动化程度等已经是人们选择产品的主要因素。其中,直流电动机正反转自动控制在生活中起了很大的作用,比如洗衣机的工作、遥控汽车的操作、DVD的应用等等,它在实际生活中给人们需求上提供了很大的方便与乐趣。不只是生活,它还在工业、农业、交通运输等各方面得到了广泛的应用,实现电动机正反转的控制是很多产品设计的核心问题。直流电动机显示出交流电动机不能比拟的良好启动性能和调速性能,比较广泛应用于速度调节要求过高,正反转频繁或多元同步协调运转的机械生产。因此,学会电动机正反转控制的原理是极其重要的。然而,在本直流电动机正反转仿真设计中,要借助Proteus软件、Keil软件和C语言的辅助进行仿真设计,通过仿真设计,让我们更清楚了解电动机正反转的原理和电路图,增强对直流电动机的认知。在Proteus绘制好原理图后,调入已编译好的目标代码文件:*.HEX,可以在Proteus的原理图中看到模拟的实物运行状态和过程,Proteus还提供了一个图形显示功能,可以将线路上变化的信号,以图形的方式实时地显示出来,其作用与示波器相似,但功能更多。这些虚拟仪器仪表具有理想的参数指标,例如极高的输入阻抗、极低的输出阻抗。这些都尽可能减少了仪器对测量结果的影响。在本设计中,Proteus软件采用了电容、电阻、晶振、电动机、LED、开关、电动机等多种元件进行绘图,并基于80C51和ULN2003A进行电路图设计,充分展示Proteus软件元件库量大,掌握它的基本绘图操作。而对于Keil软件,采取创建工程,创建执行文件,利用C语言编写程序,生成hex文件,为Proteus仿真提供驱动控制,实现直流电动机正反转的设计。在本论文设计中,主要介绍直流电动机正反转原理,Proteus软件功能绘图、仿真调试,以及Keil软件功能、程序编写和仿真程序文件生成。让大家更清楚了解Proteus软件、Keil软件、C语言在直流电动机正反转仿真设计的应用。目录TOC\o"1-5"\h\z\o"CurrentDocument"第一章、直流电动机正反转原理3\o"CurrentDocument"第二章、Proteus软件介绍4\o"CurrentDocument"2.1、基本知识与功能概述4\o"CurrentDocument"2.2、基本操作概述7\o"CurrentDocument"2.3、模拟调试10\o"CurrentDocument"第三章、Keil软件介绍11\o"CurrentDocument"3.1、基本知识与功能概述12\o"CurrentDocument"3.2、基本操作概述12\o"CurrentDocument"第四章、直流电动机正反转Proteus仿真设计过程144.1、Proteus电路图设计15\o"CurrentDocument"4.2、Keil程序编写说明16\o"CurrentDocument"4.3、仿真调试情况记录19\o"CurrentDocument"第五章、设计总结20附录180C51引脚功能介绍21\o"CurrentDocument"附录2Proteus操作指令中英文对照表23\o"CurrentDocument"参考文献25\o"CurrentDocument"致谢26第一章、直流电动机正反转原理由直流电动机和发电机工作原理示意图可以看到,直流电机的结构应由定子和转子两大部分组成。直流电机运行时静止不动的部分称为定子,定子的主要作用是产生磁场,由机座、主磁极、换向极、端盖、轴承和电刷装置等组成。运行时转动的部分称为转子,其主要作用是产生电磁转矩和感应电动势,是直流电机进行能量转换的枢纽,所以通常又称为电枢,由转轴、电枢铁心、电枢绕组、换向器和风扇等组成。直流电机的结构:电机要实现机电能量变换,电路和磁路之间必须有相对运动。所以旋转电机具备静止的和旋转的两大部分。静止和旋转部分之间有一定大小的间隙,称为气隙。静止的部分称为定子,作用是产生磁场和作为电机的机械支撑。包括主磁极、换向极、机座、端盖、轴承、电刷装置等。旋转部分称为转子或电枢,作用是感应电势实现能量转换。包括电枢铁心,电枢绕组,换向器、轴和风扇等。定子部分:1、主磁极:也称为主极。作用是产生气隙磁场。2、换向极:也称为附加极或间极。作用是改善换向。装在主极之间。3、机座:由铸钢或厚钢板焊成。是电机的机械支撑。4、电刷装置:将直流电压、电流引入或引出的装置。其组数与主极极数相等。转动部分:(转子部分)1、电枢铁心:主磁路的主要部分及嵌放电枢绕组,由硅钢片迭压而成。2、电枢绕组:由许多按一定规律联接的线圈组成。用来感应电势和通过电流,是电路的主要部分。3、换向器:由许多彼此绝缘的换向片构成。第二章、Proteus软件介绍PROTEUS是英国Labcenterelectronics公司研发的多功能EDA软件,它具有功能很强的ISIS智能原理图输入系统,有非常友好的人机互动窗口界面;有丰富的操作菜单与工具。在ISIS编辑区中,能方便地完成单片机系统的硬件设计、软件设计、单片机源代码级调试与仿真。PROTEUS有三十多个元器件库,拥有数千种元器件仿真模型;有形象生动的动态器件库、外设库。特别是有从8051系列8位单片机直至ARM732位单片机的多种单片机类型库。支持的单片机类型有:68000系列、8051系列、AVR系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列以及各种外围芯片。它们是单片机系统设计与仿真的基础。PROTEUS有多达十余种的信号激励源,十余种虚拟仪器(如示波器、逻辑分析仪、信号发生器等);可提供软件调试功能,即具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统的仿真、RS232动态仿真、I2C调试器、SPI调试器、键盘和LCD系统仿真的功能;还有用来精确测量与分析的PROTEUS高级图表仿真(ASF)。它们构成了单片机系统设计与仿真的完整的虚拟实验室。PROTEUS同时支持第三方的软件编译和调试环境,如KeilC51uVision2等软件。PROTEUS还有使用极方便的印刷电路板高级布线编辑软件(PCB)。特别指出,PROTEUS库中数千种仿真模型是依据生产企业提供的数据来建模的。因此,PROTEUS设计与仿真极其接近实际。目前,PROTEUS已成为流行的单片机系统设计与仿真平台,应用于各种领域。实践证明:PROTEUS是单片机应用产品研发的灵活、高效、正确的设计与仿真平台,它明显提高了研发效率、缩短了研发周期,节约了研发成本。2・1、基本知识与功能概述Proteus软件具有其它EDAX具软件(例:multisim)的功能。这些功能是:(1)原理布图(2)PCB自动或人工布线(3)SPICE电路仿真革命性的特点(1)互动的电路仿真用户甚至可以实时采用诸如RAM,ROM,键盘,马达,LED,LCD,AD/DA,部分SPI器件,部分IIC器件。(2)仿真处理器及其外围电路可以仿真51系列、AVR、PIC、ARM、等常用主流单片机。还可以直接在基于原理图的虚拟原型上编程,再配合显示及输出,能看到运行后输入输出的效果。配合系统配置的虚拟逻辑分析仪、示波器等,Proteus建立了完备的电子设计开发环境。功能模块(1)智能原理图设计(ISIS)丰富的器件库:超过27000种元器件,可方便地创建新元件;智能的器件搜索:通过模糊搜索可以快速定位所需要的器件;智能化的连线功能:自动连线功能使连接导线简单快捷,大大缩短绘图时间;支持总线结构:使用总线器件和总线布线使电路设计简明清晰;可输出高质量图纸:通过个性化设置,可以生成印刷质量的BMP图纸,可以方便地供WORD、POWERPOINT等多种文档使用。(2)完善的电路仿真功能(Prospice)ProSPICE混合仿真:基于工业标准SPICE3F5,实现数字/模拟电路的混合仿真;超过27000个仿真器件:可以通过内部原型或使用厂家的SPICE文件自行设计仿真器件,Labcenter也在不断地发布新的仿真器件,还可导入第三方发布的仿真器件;多样的激励源:包括直流、正弦、脉冲、分段线性脉冲、音频(使用wav文件)、指数信号、单频FM、数字时钟和码流,还支持文件形式的信号输入;丰富的虚拟仪器:13种虚拟仪器,面板操作逼真,如示波器、逻辑分析仪、信号发生器、直流电压/电流表、交流电压/电流表、数字图案发生器、频率计/计数器、逻辑探头、虚拟终端、SPI调试器、I2C调试器等;生动的仿真显示:用色点显示引脚的数字电平,导线以不同颜色表示其对地电压大小,结合动态器件(如电机、显示器件、按钮)的使用可以使仿真更加直观、生动;高级图形仿真功能(ASF):基于图标的分析可以精确分析电路的多项指标,包括工作点、瞬态特性、频率特性、传输特性、噪声、失真、傅立叶频谱分析等,还可以进行一致性分析;(3)独特的单片机协同仿真功能(VSM)支持主流的CPU类型:如ARM7、8051/52、AVR、PIC10/12、PIC16、PIC18、PIC24、dsPIC33、HC11、BasicStamp、8086、MSP430等,CPU类型随着版本升级还在继续增加,如即将支持CORTEX、DSP处理器;支持通用外设模型:如字符LCD模块、图形LCD模块、LED点阵、LED七段显示模块、键盘/按键、直流/步进/伺服电机、RS232虚拟终端、电子温度计等等,其COMPIM(COM口物理接口模型)还可以使仿真电路通过PC机串口和外部电路实现双向异步串行通信;实时仿真:支持UART/USART/EUSARTs仿真、中断仿真、SPI/I2C仿真、MSSP仿真、PSP仿真、RTC仿真、ADC仿真、CCP/ECCP仿真;编译及调试:支持单片机汇编语言的编辑/编译/源码级仿真,内带8051、AVR、PIC的汇编编译器,也可以与第三方集成编译环境(如IAR、Keil和Hitech)结合,进行高级语言的源码级仿真和调试;(4)实用的PCB设计平台原理图到PCB的快速通道:原理图设计完成后,一键便可进入ARES的PCB设计环境,实现从概念到产品的完整设计;先进的自动布局/布线功能:支持器件的自动/人工布局;支持无网格自动布线或人工布线;支持引脚交换/门交换功能使PCB设计更为合理;完整的PCB设计功能:最多可设计16个铜箔层,2个丝印层,4个机械层(含板边),灵活的布线策略供用户设置,自动设计规则检查,3D可视化预览;多种输出格式的支持:可以输出多种格式文件,包括Gerber文件的导入或导出,便利与其它PCB设计工具的互转(如protel)和PCB板的设计和加工。

2・2、基本操作概述ProteusISIS的工作界面是一种标准的Windows界面,如下图所示,包括:标题栏、主菜单、标准工具栏、绘图工具栏、状态栏、对象选择按钮、预览对象方位控制按钮、仿真进程控制按钮、预览窗口、对象选择器窗口、图形编辑窗口。殁图工具栏寺*唯毒MTT7X殁图工具栏寺*唯毒MTT7X==容匝还#*l^/Llg%AIE预览窗口图莎编辑窗口isisUbTITLfD-ISISPruft^iuiuDesignG^apJ~iSourceDet<ugTernplateSystemHelp■|-中荚单=|甘兰1|D|勰喝|昌」三1申1+毁w瓯以giIS昭码|同岛1衿瑟隹:■。八田由1国标渣—具柱◎O一*|>|I*|H[■|Raolehaet17V|j|/+130C-200Dth仿真进程控制搜钮状态栏预览对彖方位控制按钮|2.2.1、图形编辑窗口坐标系统(CO-ORDINATESYSTEM)点状栅格(TheDotGrid)与捕捉到栅格(SnappingtoaGrid):编辑窗口内有点状的栅格,可以通过View菜单的Grid命令在打开和关闭间切换。点与点之间的间距由当前捕捉的设置决定。(3)实时捕捉(RealTimeSnap):当鼠标指针指向管脚末端或者导线时,鼠标指针将会被捕捉到这些物体,这种功能被称为实时捕捉,该功能可以方便地实现导线和管脚的连接。(4)视图的缩放与移动:用鼠标左键点击预览窗口中想要显示的位置,这将使编辑窗口显示以鼠标点击处为中心的内容。或者用鼠标指向编辑窗口并按缩放键或者操作鼠标的滚动键,会以鼠标指针位置为中心重新显示。2.2.2、预览窗口(TheOverviewWindow):该窗口通常显示整个电路图的缩略图。在预览窗口上点击鼠标左键,将会有一个矩形蓝绿框标示出在编辑窗口中显示的区域。其他情况下,预览窗口显示将要放置的对象的预览。2.2.3、对象选择器窗口:通过对象选择按钮,从元件库中选择对象,并置入对象选择器窗口,供今后绘图时使用。显示对象的类型包括:设备,终端,管脚,图形符号,标注和图形。2.2.4、图形编辑的基本操作对象放M(ObjectPlacement)选中对象(TagginganObject)删除对象(DeletinganObject):用鼠标指向选中的对象并点击右键可以删除该对象,同时删除该对象的所有连线。拖动对象(DragginganObject):用鼠标指向选中的对象并用左键拖曳可以拖动该对象。拖动对象标签(DragginganObjectLabel):①选中对象;②用鼠标指向标签,按下鼠标左键;③拖动标签到所需要的位置。如果想要定位的更精确的话,可以在拖动时改变捕捉的精度(使用F4、F3、F2、CTRL+F1键);④释放鼠标。调整对象大小(ResizinganObject):当选中对象时,对象周围会出现黑色小方块叫做“手柄”,可以通过拖动这些“手柄”来调整对象的大小。调整对象大小的步骤如下(Toresizeanobject):选中对象如果对象可以调整大小,对象周围会出现黑色小方块,叫做“手柄”。用鼠标左键拖动这些“手柄”到新的位置,可以改变对象的大小。在拖动的过程中手柄会消失以便不和对象的显示混叠。调整对象的朝向(ReorientinganObject):①选中对象;②用鼠标左

键点击Rotation图标可以使对象逆时针旋转,用鼠标右键点击Rotation图标可以使对象顺时针旋转;③用鼠标左键点击Mirror图标可以使对象按x轴镜象,用鼠标右键点击Mirror图标可以使对象按y轴镜象。编辑对象(EditinganObject):①编辑单个对象的步骤是(Toeditasingleobjectusingthemouse)a.选中对象b.用鼠标左键点击对象;②连续编辑多个对象的步骤是(Toeditasuccessionofobjectsusingthemouse)a.选择MainMode图标,再选择InstantEdit图标b.依次用鼠标左键点击各个对象;③以特定的编辑模式编辑对象的步骤是(Toeditanobjectandaccessspecialeditmodes)a.指向对象b.使用键盘CTRL+'E,画线(WIRINGUP)PROTEUSISIS没有画线的图标按钮,因为ISIS的智能化足以在画线时能自动检测,在画错的时候可以按ESC来放弃画线。2.2.5、对象的放置和编辑(1)对象的添加和放置:点击工具箱的元器件按钮,使其选中,再点击IsIs对象选择器左边中间的置P按钮,出现“PickDevices”对话框,如下图所示,然后选择相应的元器件,在本设计中将在附录中展示元器件中英文对照表,以便快速查阅。CEVEtSKejwadf:Hatch曲lieWqi岫麟I缚叫|MC^BQDflB:||UnspBcilEd|Lnflhgl&[^pacloisMS皿i品Cot皿侦DalaCunve(ter$DebugghgTo^ECEVEtSKejwadf:Hatch曲lieWqi岫麟I缚叫|MC^BQDflB:||UnspBcilEd|Lnflhgl&[^pacloisMS皿i品Cot皿侦DalaCunve(ter$DebugghgTo^EDrdcsECL11X01SeriesESinnech丽洞hijdnigLaqteeRnrriii1®3郁刈1匚£Hinqjixc加|后HlECSN-Ef'^DU:MoJelingRinnilivet[Ijje舟蛔如跖DptdKtncri^FLD$4FP&A$RissijtajSulrcdeooip:ISE9X0S岐1椅的阍MR响,即FiFe勤BA5IC知mhlKkiHHCI1F晒F'rirJriiikMeflulstLverBl_—AristuMEKchdAHM|±ATHELSub-ciML岫Devict|LbrayDe^iiplicr'i微9D51Mhf>xailaler|G4LBcnife,■ICMHz.Vj.atehdDgrrft=t3k1G9D51Mhf>xailaler|G4tBcnife,ICWHz.WdtehdDgrirfF=t3«1G的RMiaBEl口也|BkB伽也滋也成阳Hi.ld1BblTi-i>、R疝闻tATB9L51Pre>«w.A二|vJ.-Ti;—_一,.•.BK^B.BUSBIU52BKL11BKL4HIBE庶的蹈如BM7G脉54Br?400^749Hr?5DBK7516J::?52flWBlB3L51FAB3L51FBB顽0H7C52BH7C552跄5?arasqAfiMTTDhlAT0931051Ar09Z2fl51AFB9C4H51MICROaDSla^rrkKcanlrolleiROP.1..25BFWH.4惭棣MMICRO9D51海血lucomdMCiH底泣5EBFWHJ^WI^ZmIMICRO9D51gMKincoriidBrHON-IkjJFW%U胡「MICRO9D510甜前或心肯曰训福小?口FWWJ2CinlafMMICROSingle邛币UARTm!BailR曲G的的心(EF:G|MICROBogarmifePripherdIrWg面h241归LinwMICRO8051curMcioKriiolcrwlh1&:BRDM.SEERAM.Sc16-biMICROSD51McMKiDmtihdlcfwIhOGkBRDM.2KBRM.2k1MFMICRO3051海MKiDcomderwlh3kBRDM.2SBRAM..SCC5I国MICRO9U51次血lucoriidEf网hOERDM.斑RAN.eOESlbiMICRO9D51海■MKiDCorMderwilh2kBRDM.G(BFWH/19IEin&sMICRO9D51mW前mid』心IhhBRDM.618RAH..21I/O而的MICRO9D51cae竹山口顼心应Wlh1kBRDM.6iBRAH..19I/Om前MICRO8051MtMnoKddnwIh^BRDM.G<8FWW.19|rl]fnwMICRO6H51HTtMicioronhdlcfwlh2hflROM.6*0RA|r|„21IrBinwMICRO9051oreMsiDcodidlB-wlhiGkBRDM.短ERAM..WbH/MICRO9U51次血lucoriidEf网h4kBRDM,1福RAMJ^ttl/QMICRO9D51gMKmcorMdBr而h4kBRDM.1SBRAMJ^t*I/OMICRO3D51areMiciDComdB(wilhOEEPRDM.512ERAM4u&biMICRO9D51cae竹山口顼心应Wlh32fcBEPRDM.512ERAM.4*&biMICRO9D51ixteMcio^niiijlffuAlhEPRDM2KBRAM.6x&ttMICRO9051me㈱dEi血洲郁EPROM.2930RAM.MICRO9051areMmcodrc如wlhiGkBEPRDM.RAM..4t£biMICROGercicAfiM?TDMIcoremcdcl/moddhupnmtivieMICRO9bArrkfH:DrferollBinlfiIKadsflashard&kHsiMICRO8-bkrri^KDfUollBi囚出术axleR丽aid138-bkr-amMICRO9-bkrri^KDfUollBi囚出哗.cedeR时aid138-bktarnMICRO9D51MicrccailofeiMkBcude.33MHz..M&biHrreit.LKFiTnAfBKSIBUSMICROAD51M&csliifei|4kBcnde.TMHi..2k1&|]iHmei^UtfiTjTF1T?8051Hi:jo顽迎I161JBcode.4fWHr.VdchdogTi™..3k1GArBS^1RB20USMICROBD51Mk^xoilaler|1GliJ9entfe.4£MMz..'W'dbchd[>aFmer..3k1GMICROQD51MhfixailalefI32UBcntte.4€MHz..Wdbchd[>aFmerjKlEATBS^IRCZBUSMICRO3D51M方ixslulerI32UB叩坷4株1也Wetehd四Fmet加&AF0t51RD2MICROAFBKSIRDZBUSMICROAKHK52MICRO⑵放置电源及接地符号:单击工具箱的终端按钮,对象选择器中将出现一些接线端,如图所示,在器件选择器里分别点击下图左侧的“TERMNALS”栏下的POWER”与“GROUND”,再将鼠标移到原理图编辑区,左键点击一下即可放置电源符号;同样也可以把接地符号放到原理图编辑区。■a=l>TERMINALS口臣19|勰履|昌口国耳|帝1+纹或苫脂庭POWERGROUNDBUSDEFAULTINPUTOUTPUTBIDIR2・3、模拟调试2.3.1、一般电路的模拟调试■a=l>TERMINALSPOWERGROUNDBUS绘好线路图后,点击菜单栏“Debug(调试)”下的按钮或者点击模拟调试按钮的运行按钮,也可以按下快捷键"Ctrl+F12”进入模拟调试状态。2.3.2、单片机电路的模拟调试该软件有自带编译器,有ASM的、PIC的、AVR的汇编器等。在ISIS添加上编写好的程序,方法如下.点击菜单栏"Source”,在下拉菜单点击"Add/RemoveSourceFiles(添加或删除源程序)”弹出一个对话框,点击对话框的"NEW”按钮,在出现的对话框找到设计好的huayang.Asm文件,点击打开;在“CodeGenerationTool”的下面找到“ASEM51”,然后点击“OK”按钮,设置完毕后就可以编译了。点击菜单栏的"Source”,在下拉菜单点击"BuildAll”,过一会,编译结果的对话框就会出现。如果有错误,对话框会指明:哪一行出现了问题,点击出错的提示,就能显示出错的行号。Ilb-三匝工辽iZ模拟调试按钮(位于软件左下角)选中单片机并双击,在出现的对话框里点击ProgramFile按钮,装入经过编译得到的HEX文件,然后点击“OK”按钮;点击模拟调试按钮的运行按钮,进人调试状态;在单步模拟调试状态下,点击菜单栏的“Debug”,在下拉菜单的最下面可以看到语句运行的情形。点击SimulationLog会出现和模拟调试有关的信息;点击8051CPUSFRMemory会出现特殊功能寄存器(SFR)窗口;点击8051CPUInternal(IDATA)Memory会出现数据寄存器窗口;点击WatchWindow窗口,会出现一个下拉窗口,在这里可以添加常用的寄存器。在WatchWindow窗口里点击右键,并在出现的菜单中点击AddItem(Byname)就会出现常用的寄存器,如选择P1,则可双击P1,这时,P1就会出现在WatchWindow窗口。无论在单步调试状态还是在全速调试状态,WatchWindow的内容都会随着寄存器的变化而变化。第三章、Keil软件介绍Keil是德国知名软件公司Keil(现已并入ARM公司)开发的微控制器软件开发平台,是目前ARM内核单片机开发的主流工具。Keil提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器在内的完整开发方案,通过一个集成开发环境(uVision)将这些功能组合在一起。uVision当前最高版本是uVision3,它的界面和常用的微软VC++的界面相似,界面友好,易学易用,在调试程序,软件仿真方面也有很强大的功能。单片机开发中除必要的硬件外,同样离不开软件,我们写的汇编语言源程序要变为CPU可以执行的机器码有两种方法,一种是手工汇编,另一种是机器汇编,目前已极少使用手工汇编的方法了。机器汇编是通过汇编软件将源程序变为机器码,用于MCS-51单片机的汇编软件有早期的A51,随着单片机开发技术的不断发展,从普遍使用汇编语言到逐渐使用高级语言开发,单片机的开发软件也在不断发展,Keil软件是目前最流行开发MCS-51系列单片机的软件,这从近年来各仿真机厂商纷纷宣布全面支持Keil即可看出。Keil提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(uVision)将这些部份组合在一起。运行Keil软件需要Pentium或以上的CPU,16MB或更多RAM、20M以上空闲的硬盘空间、WIN98、NT、WIN2000、WINXP等操作系统。3.1、基本知识与功能概述Keil软件工具包的整体结构,如图(1)所示,其中uVision与Ishell分别是C51forWindows和forDos的集成开发环境(IDE),可以完成编辑、编译、连接、调试、仿真等整个开发流程。开发人员可用IDE本身或其它编辑器编辑C或汇编源文件。然后分别由C51及A51编译器编译生成目标文件(.OBJ)。目标文件可由LIB51创建生成库文件,也可以与库文件一起经L51连接定位生成绝对目标文件(.ABS)。ABS文件由OH51转换成标准的Hex文件,以供调试器dScope51或tScope51使用进行源代码级调试,也可由仿真器使用直接对目标板进行调试,也可以直接写入程序存贮器如EPROM中。使用独立的Keil仿真器时,注意事项:仿真器标配11.0592MHz的晶振,但用户可以在仿真器上的晶振插孔中换插其他频率的晶振。仿真器上的复位按钮只复位仿真芯片,不复位目标系统。仿真芯片的31脚(/EA)已接至高电平,所以仿真时只能使用片内ROM,不能使用片外ROM;但仿真器外引插针中的31脚并不与仿真芯片的31脚相连,故该仿真器仍可插入到扩展有外部ROM(其CPU的/EA引脚接至低电平)的目标系统中使用。本设计主要针对它的调试功能进行程序分析,通过调试程序找出问题并解决,是本设计仿真成功关键所在。3.2、基本操作概述应用Keil进行软件仿真开发的主要步骤为:编写源程序并保存一建立工程并添加源文件一设置工程一编译/汇编、连接,产生目标文件一程序调试。Keil使用“工程”(Project)的概念,对工程(而不能对单一的源程序)进行编译/汇编、连接等操作。工程的建立、设置、编译/汇编及连接产生目标文件的方法非常易于掌握。首先选择菜单File-New…,在源程序编辑器中输入汇编语言或C语言源程序(或选择File-Open…,直接打开已用其它编辑器编辑好的源程序文档)并保存,注意保存时必须在文件名后加上扩展名.asm(.a51)或.c;然后选择菜单Project-NewProject…,建立新工程并保存(保存时无需加扩展名,也可加上扩展名.uv2);工程保存后会立即弹出一个设备选择对话框,选择CPU后点确定返回主界面。这时工程管理窗口的文件页(Files)会出现“Target1”,将其前面+号展开,接着选择SourceGroup1,右击鼠标弹出快捷菜单,选择“AddFiletoGroup‘SourceGroup1’”,出现一个对话框,要求寻找并加入源文件(在加入一个源文件后,该对话框不会消失,而是等待继续加入其它文件)。加入文件后点close返回主界面,展开“SourceGroup1”前面+号,就会看到所加入的文件,双击文件名,即可打开该源程序文件。紧接着对工程进行设置,选择工程管理窗口的Target1,再选择Project-OptionforTarget‘Target1’(或点右键弹出快捷菜单再选择该选项),打开工程属性设置对话框,共有8个选项卡,主要设置工作包括在Target选项卡中设置晶振频率、在Debug选项卡中设置实验仿真板等,如要写片,还必须在Output选项卡中选中“CreatHexFi”;其它选项卡内容一般可取默认值。工程设置后按F7键(或点击编译工具栏上相应图标)进行编译/汇编、连接以及产生目标文件。成功编译/汇编、连接后,选择菜单Debug-Start/StopDebugSession(或按Ctrl+F5键)进入程序调试状态,Keil提供对程序的模拟调试功能,内建一个功能强大的仿真CPU以模拟执行程序。Keil能以单步执行(按F11或选择Debug-Step)、过程单步执行(按F10或选择Debug-StepOver)、全速执行等多种运行方式进行程序调试。如果发现程序有错,可采用在线汇编功能对程序进行在线修改(Debug-InlineAssambly…),不必执行先退出调试环境、修改源程序、对工程重新进行编译/汇编和连接、然后再次进入调试状态的步骤。对于一些必须满足一定条件(如按键被按下等)才能被执行的、难以用单步执行方式进行调试的程序行,可采用断点设置的方法处理(Debug-Insert/RemoveBreakpoint或Debug-Breakpoints…等)。在模拟调试程序后,还须通过编程器将.hex目标文件烧写入单片机中才能观察目标样机真实的运行状况。这里要生成.hex目标文件,可通过下图进行设置。Hex文件在Proteus仿真时起到关键作用,因此一定要检查好程序调试正确情况。opttwisforisrueriT把P]tltf;和」出]列去]CEl]|BL5L:二二§为尊H孵唾莅二二二二|嫩行苗件.P顶月试M息P邸蜘•'希.13IZ削谆节二+件ME}:格式.|hE!I-B0j第四章、直流电动机正反转Proteus仿真设计过程设计方案提出Proteus绘图Keil的C程序编写程序调试程序仿真师生讨论完善论文结语通过采取80C51单片机和ULN2003A,来对直流电动机正反转进行设计。其中,ULN2003A是一个7路反向器电路,即当输入端为高电平时ULN2003A输出端为低电平,当输入端为低电平时ULN2003A输出端为高电平。下图的设计目的是:当直流电动机停止时LED3就亮;当按下K1时,直流电动机就会正转3圈,同时LED1发亮;当按下K2时,直流电动机就会反转3圈,同时LED2发亮,可以随时按K3进行制动。C1C2'Tl-□为—I—I2|.J--<TEtr>--UlD1正■E22PF町RO*l〕kI、•$•/二,.%.••C1C2'Tl-□为—I—I2|.J--<TEtr>--UlD1正■E22PF町RO*l〕kI、•$•/二,.%.••Tl—Jl-...f二,.、•U2.:二•—COM1C2C3C4C5CGC7C1B2B3BAG5B6B7B__22jj■j-j闵PO.O^ADOP0.1WD1P0.2WD2PD.3M3PD.J||^D4PD.51^5pd.g™RSTPD.7^7P2.0^P2.1^P2.2/A10I、P23/A11ALEre4JA12EAre6JA13田刖wP2T/A15P1.0RZ3/RXDP1.1田」顽PI.2P3.2flhm]PI.3P3.3IW1PI.4P3.VTDPI.5P3.57T1PI.6P3.EWRPI.7P3-/RDR122:-.ED~z2...匚.■>D2辰工J:二二J33Fri==-.:己xi>.晓停•m二R2.R3■00—K2.00—•.K3.j~i*叩昨f[<.?_l_—4.2、Keil程序编写说明#include<reg52.h>#defineuintunsignedint#defineucharunsignedchar//8拍ucharcodezz[]=(0x01,0x03,0x02,0x06,0x04,0x0c,0x08,0x09);〃正转ucharcodefz□={0x09,0x08,0x0c,0x04,0x06,0x02,0x03,0x01};〃反转voiddelay(uintms)(uintt;while(ms--)延迟120msfor(t=0;t<120;t++);}voidmotor_zz(uintn)(uinti,j;for(i=0;i<5*n;i++)(for(j=0;j<8;j++)直流电动机正转3圈(if(P3==0xfb)break;P1=zz[j];delay(20);}}voidmotor_fz(uintn)(uinti,j;for(i=0;i<5*n;i++)(for(j=0;j<8;j++)直流电动机反转3圈(if(P3==0xfb)break;P1=fz[j];delay(20);}}}voidmain()(uintN=3;while(1)(P3=0xff;if(P3==0xfe)(while(P3==0xfe);主程序,设置引脚P0、P1、P3P0=0xfe;motor_zz(N);if(P3==0xfb)break;}elseif(P3==0xfd)(while(P3==0xfd);P0=0xfd;motor_fz(N);if(P3==0xfb)break;}else(P0=0xfb;P1=0x03;}}}4.3、仿真调试情况记录(1)按下开关K1时,直流电动机正转3圈,同时LED1亮:22PF<7E?d>O.OZi□X1—I—12ML=U119■SHTAL2DI正22PF..弗WRQ■■■10k■■■02•<te轮•皿.IL金U2COMIVID2C2E3C3BJC4B605BGC6B7C7BULN2EO3A<TE:<T>']1吧Id13"11»y-:RSTPQ-QiMDR]UADIPCD串JUR13四弟PJJ/ADlRJ泗SPa.GiMBR]7.'AD7■39■E|_1R1—L-:LLLC・.UEClrED..<TEXT>..R2-233-•-<TE:<T>31・PSEMALEP2.W站P2.1/ABP2.2ZA1DR2物IR2.4ZA12P2.5$m3P2SW14P27,W15:1■26D3停R3lJ:—L-:L-l:t>・K1P1.5Pl.EP1.7Pl.DP1.1PI.2Pl.3P3.0jR:<DP3」jRDR3jiiraTpj-ifimTP5T0P3.&T1_P3.&枣P37jPD■1l"i■科■if■13F5■iE80C51<TE>.T>••l::T(2)按下开关K2时,直流电动机反转3圈,同时LED2亮:C122R|—IX1i_I.旦k."00U191正・WAL1PD.E^AMP0J/AD1PD.2/AD2JCTAL2PD.W6PD.4/AD*PD.5/AD5P0B/AE6RSTP07WP21MP2.2/A1DPSENP2•洲1^LEP2.4/A12EKP2.6JA13P2.6/A14P2*J5PIOP3.WRXDPI1R3.VWP12P3.2I1MWP13raaiiMfi-PI.4ra.vnPI5ra.&riPI.6P3卮瓯P17P37/RD.39■37■10■11■13aacE-i<IEXT>R1__“U..E二三[|LV>...:?--••92反R2__顼••-E-囚二〔.IE~>...3C・D3fr——iI—』•一E=z[...d=...>■••cTEXT::/|■■:■<2■L.--<3<停]|(2)按下开关K3时,直流电动机停止,同时LED3亮:Cl二-.■K-,•日!••匚TECTn•"nC01C2C3C4C5C6C7CJ2mmw1C2止22PF.邪郛0<TFKT>1B击田4s50Ee70SXTAL1印伽1FO.2/AD2FO.3/AD3FO.5/AD5FO.G/ADGRSIFO.7/AD7PW.姬P2.1/A9Cl二-.■K-,•日!••匚TECTn•"nC01C2C3C4C5C6C7CJ2mmw1C2止22PF.邪郛0<TFKT>1B击田4s50Ee70SXTAL1印伽1FO.2/AD2FO.3/AD3FO.5/AD5FO.G/ADGRSIFO.7/AD7PW.姬P2.1/A9ra.2ftioPEENP23伯11ALEP2.AfM2EAP2.fi/ft13P2£fMAP2.7ft15P1□P3DJRXDP11P3imDP12F3Z/INTUP1JP3出INTIP1』P15P3.smPteP3.6MRP1.7P37/RD19iaLTMC51[?正•祯R3J~~!.、..VI.■,ij-j.LII.-1:..<TEKT>m反UI-1:..<TEKT>D3停=「.>F-...te"L;K1■11K2..1—1■Il■13.—.<--l■-K3__L・■■'X=L虹E:<T>..:.£:<!>.•:F;:•第五章、设计总结本设计主要应用单片机80C51控制,通过七路反相器件ULN2003A进行搭桥,进行仿真设计,利用晶振进行变换,通过LED灯来显示直流电动机正反转的情况,利用点动开关进行控制,实现直流电动机正反转的Proteus仿真,在利用Keil软件编写控制程序时,要灵活调用其库函数,掌握C语言编程的细节,在程序调试过程中善于发现错误并快速改正,通过一系列严谨措施之后,快速把该程序生成Hex代码,以便进行仿真,在这过程熟悉keil软件程序设计过程。从中悟出简便的方法。而由于本设计采取C语言编程,还需掌握一些C程序控制指令。当遇到比较大的问题时,及时与指导老师交流讨论,进行快速检测出问题所在并予以解决。在利用Proteus软件调用Hex代码程序进行仿真时,要注意记录直流电动机正反转,并与设计方案目的是否一致,这是最关键的一步。通过这一系列仿真设计流程,成功的达到了设计的目的,主要以软件设计模型来展现直流电动机正反转的原理,并了解到在这个信息高速发展的时代里,学会直流电动机正反转原理是进一步了解大型转动机械的最基础最基本的,所以本软件仿真设计就是为了让大家熟悉直流电动机正反转而存在。

U119mALiP0.0/AD0P0.1/AD1P0.2/AD2XTAL2P0.3/AD3P0.4/AD4P0.5/AD6P0.6/AD6RSTP0.7/AD7P2.0/ZJ8U119mALiP0.0/AD0P0.1/AD1P0.2/AD2XTAL2P0.3/AD3P0.4/AD4P0.5/AD6P0.6/AD6RSTP0.7/AD7P2.0/ZJ8P2.1/A9PSENP2.2/A10P2.3/A11ALEP2.4/A12EAP2.6/A13P2.6/A14P2.7/A15P1.0P3.0/RXDP1.1P3.1HXDP1.2P3.2/INTDP1.3P3.3/INT1P1.4P3.4/7I]P1.5P3.5/T1P1.6P17P3.6/WRP37/RD189a60C61<TEXT>29303?〔4393S3736353433322124花10H121314151617电源:⑴VCC-芯片电源,接+5V;⑵VSS-接地端;时钟:XTAL1、XTAL2-晶体振荡电路反相输入端和输出端。控制线:控制线共有4根,⑴ALE/PROG:地址锁存允许/片内EPROM编程脉冲ALE功能:用来锁存P0口送出的低8位地址PROG功能:片内有EPROM的芯片,在EPROM编程期间,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论