单片机课程设计步进电机控制设计.doc
步进电机控制设计 摘要步进电机是一种将电脉冲转化为角位移的执行机构。当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度(称为“步距角”),它的旋转是以固定的角度一步一步运行的。可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。结合对步进电机的了解,然后对步进电机的控制原理包括步进电机的控制方式和驱动方式作了系统的说明,采用8051单片机来控制步进电机,并给出了步进电机的双相三拍控制单片机控制和三相六拍的单片机控制的具体实现方法,用汇编程序进行控制运行。控制系统通过单片机存储器、I/O接口、中断、键盘、LED显示器的扩展、步进电机的环形分频器、驱动及保护电路、人机接口电路、中断系统及复位电路、单电压驱动电路等的设计,实现了四相步进电机的正反转,急停等功能。电机的控制系统由AT80C51单片机控制,具有抗干扰能力强,可靠性高而且系统扩展容易等优势。本次课程设计中着重于通过控制脉冲数来控制位移,实现准确定位。基于步进电机本身的优越性和应用的广泛性,这正是用单片机控制步进电机课程设计的实际意义。关键字:步进电机 ,角位移,单片机 ,脉冲 目 录1 课题描述12总体实现原理13 步进电机原理及硬件设计23.1 单片机电路23.1.1 AT89C51单片机的组成结构23.1.2 AT89C51单片机的引脚及功能43.2步进电机63.2.1 步进电机的工作原理63.2.2控制原理73.2.3步进电机的驱动方式83.2.4最小系统93.3输入显示部分103.4 电源114 软件程序设计114.1 主程序的设计124.2 定时中断设计134.3 外部中断设计134.4 系统软件程序14总结19致谢20参考文献211 课题描述 传统的步进电机控制方法是由触发器产生控制脉冲来进行的,此种方法工作方式单一且难于实现人机交互,当步进电机的参数发生变化是,需要重新进行控制器的设计。而且由传统的触发器构成的控制系统具有控制电路复杂、控制精度低、生产成本高等缺点。由单片机控制的步进电机克服了以上缺点。它具有很高的精度,一般用在精确定位方面。步进电机是一种将数字信号直接转换成角位移或线位移的控制驱动元件,具有快速起动和停止的特点。其驱动速度和指令脉冲能严格同步,具有较高的重复定位精度,并能实现正反转和平滑速度调节。它的运行速度和步距不受电源电压的波动及负载的影响,因而被广泛应用于数模转换、速度控制和位置控制系统。步进电动机以其显著的特点,在数字化制造时代发挥着重大的用途。常见的步进电机分三种:永磁式(PM)、反应式(VR)、混合式(HB),永磁式步进一般分为两相,转矩和体积较小,步进角一般为7.5度或15度;反应式步进一般为三相,可实现大转矩输出,步进角一般为1.5度,但噪声和振动都很大。在欧美等发达国家早已被淘汰;混合式步进是指混合了永磁式和反应式的优点。它又分为两相和五相:两相步进角一般为1.8度而五相步进角一般为0.72度,这种步进机应用最为广泛。目前使用单片机控制,单片机为微控制器的下位机和以计算机为上位机的步进电机控制系统,用软件代替步进控制器,使得线路简单,成本低,可靠性大大增加,灵活改变步进电机的控制方案,无需逻辑电路组成时序发生器,软件编程可灵活产生步进电机励磁序列来控制步进电机的运行方式。用此方式设计步进电机控制系统顺应了目前国内外控制系统微机化发展的趋势,充分利用了单片机的优点,使得通用性得到了提高。伴随不同的数字化技术的发展以及步进电机本身技术的提高,步进电机将会在更多的领域得到应用。2总体实现原理步进电机的系统总体框图如图1,在系统中采用AT89C51单片机产生A、B、C、D四相信号(更具实际需要,可以扩充更多相信好)。当采用单片机控制时,需要在单片机和步进电机之间设置隔离电路以使强弱分开。由于步进电机的驱动电流相对较大,可增设放大电路来提供步进电机的工作电流。系统电路由5部分组成,即:输入显示部分;AT89C51 单片机;直流电压和步进电机。 图1 系统总体框图 3 步进电机原理及硬件设计3.1 单片机电路本系统采用A89C51单片机产生控制信号单片机内部的内存即可满足要求。如需要扩展较多的外部RAM和ROM可加上数据缓冲器。步进电机控制信号通过AT89C51单片机其中一个口进行扩充。为了增加步进电机工作的灵活性,在启动步进电机工作之后,当有键按下,设置产生外部中断,达到灵活控制电机的目的。下面介绍一下AT89C51单片机。3.1.1 AT89C51单片机的组成结构AT89C51单片机内部硬件结构框图如图2所示。它由一个8位中央处理器(CPU)、一个256B片内RAM及4KBFlashROM、21个特殊功能寄存器、4个8为并行I/O口以及中断系统等部分组成,各功能部件通过片内单一总线连成一个整体,集成在一块芯片上。(1) CPU CPU是单片机的核心部分,CPU包括两个基本部分:运算器和控制器。运算器运算器即算术逻辑单元ALU,是进行算术或逻辑运算的部件。可实现算术运算和逻辑运算。操作的结果一般送回累加器ACC,而其状态信息送至程序状态寄存器PSW。控制器控制器是用来控制计算机工作的部件。控制器接收来自存储器的指令,使各部件协调工作,完成指令所规定的操作。 图2 AT89C51单片机内部结构示意图(2)内部存储器内部数据存储器AT89C51芯片内共有256B(地址为00H-FFH)的数据存储器,其中高128B(地址为:80H-FFH)被专用寄存器占用,能作为寄存器供用户使用的只是低128B(地址为:00H-7FH),用于存放可读写的数据,如程序执行过程中的变量。内部程序存储器AT89C51共有(地址为:0000H-0FFFH)的flash程序存储器,用于存放程序、原始数据或表格常数。(3)定时/计数器 AT89C51共有两个16位的定时/计数器都可以设置成计数方式,用于对外部事件进行计数;也可设置成定时方式,并可以根据计数或定时的结果实现对单片机运行的控制。(4)并行I/O口 用于进行单片机内外的传输,4个8位的I/O口(P0、P1、P2、P3)。每个8位的口,既可用作输入口,也可用作输出口,每个口即可以8位同步读写,又可对每一位进行单独的操作。标准I/O口的主要功能相当于一个8位锁存器,能存储一个字节的二进制数据,以保持与之相连接的8条口线各自电位的高低状态。3.1.2 AT89C51单片机的引脚及功能AT89C51共有40个引脚,下面介绍一下它们的主要功能。(1)P0口P0口某一位的结构图如图3所示,一个输出锁存器、两个三态缓冲器、一 图3 P0口的结构示意图个转换开关MUX、一个输出驱动电路(T1和T2)和一个与门及一个非门组成。(2)P1,P2,P3口 P1口是唯一的单功能口,位结构图如图4所示,仅能作为通用I/O口使用,P1口是8位准双向口,作通用输入输出口使用, Pl口有别于P0口,它接有内部上拉电阻。P1口的每以一位可以独立地定义为输人或者输出,因此,P1口既可作为8位并行输入输出口,又可作为8位输入输出端。CPU既可以对P1口进行字节操作,又可以进行位操作。当作输入方式时,该位的锁存器必须顶写1。P2口是8位准双向输入输出接口,当外接程序存储据时,P2口给出地址的高8位,此时不能用作通用,IO口。当外按数据存储器时,若RAM小于256KB,用R0、R1作间址寄存器,只需要P0口送出地址低8位,P2口可以用 图4 P1口的位结构图作通用IO ;若RAM大于256KB,必须用16位寄存器DPTR作间址寄存器则P2口只能在一定限度内作一股IO 口使用。 P3口是多功能口,同P0口一样,当做输入口时,必须先向锁存器写“1”,使场效应管T截止。(3)主电源引脚GND和VccGND(20):接地;Vcc(40):正常操作时接十5V电源(4)外接晶体引脚XTAL1和XTAL2当外接晶体振荡器时,XTAL1和XTAL2分别接在外接晶体两端,当采用外部时钟方式时,XTAL1接地,XTAL2接外来振荡信号。(5)控制引脚 RST/Vpp(9):当振荡器正常运行时,在此引脚上出现二个机器周期以上的高电平使单片机复位。Vcc掉电期间,此引脚可接备用电源,以保持内部RAM的数据。当Vcc下降掉到低于规定的水平,而VPD在其规定的电压范围内,VPD就向内部RAM提供备用电源。ALE(30):当访问外部存储器时,由单片机的P2口送出地址的高8位,P0口送出地址的低8位,数据也是通过P0口传送。作为P0口某时选出的信息到底是低8位地址还是传送的数据,需要有一信号同步地进行分别。当ALE信号(允许地址锁存)为高电平(有效)P0口送出低8位地址,通过ALE信号锁存低8位地址。 PSEN(29):程序存储器读选通信号,低电平有效。EAVpp(31):当EA保持高电平时,访问内部程序存储器(4K8),但当PC(程序计数器)值超过OFFFH时,将自动转向执行外部程序存储器内的程序当EA保持低电平时,则只访问外部程序存储器(从0000H地址开始),不管单片机内部是否有程序存储器。3.2 步进电机3.2.1 步进电机的工作原理步进电机是将电脉冲信号转变为角位移或线位移的开环控制元件。它将脉冲信号转变成角位移,在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,即给电机加一个脉冲信号,电机则转过一个步距角。步进电机的驱动电路根据控制信号工作,控制信号由单片机产生。 设计中采用了 20BY-0 型步进电机,该电机为四相步进电机,采用单极性直流电源供电。只要对步进电机的各相绕组按合适的时序通电,就能使步进电机转动。当某一相绕组通电时,对应的磁极产生磁场,并与转子形成磁路,这时,如果定子和转子的小齿没有对齐,在磁场的作用下,由于磁通具有力图走磁阻最小路径的特点,则转子将转动一定的角度,使转子与定子的齿相互对齐。 其中步进电机的静态指标及术语如下。(1) 相数:产生不同队N、S磁场的激磁线圈对数,常用 m表示。 (2)拍数:完成一个磁场周期性变化所需脉冲用n 表示,或指电机转过一个齿距角所需脉冲数,以四相电机为例,有四相四拍运行方式即ABBCCDDAAB,四相八拍运行方式即 AABBBCCCDDDAA。(3)步距角:对应一个脉冲信号,电机转子转过的角位移用 表示。(4)定位转矩:电机在不通电的状态下,电机转子自身的锁定力矩(由磁场齿的谐波以及机械误差造成的 )。 (5)静转矩:电机在额定静态作业下,电机不做旋转运动时,电机转轴的锁定力矩。此力矩是衡量电机体积的标准,与驱动电压及驱动电源等无关。虽然静态转矩与电磁激磁匝数成正比,与定子和转子间的气隙有关。3.2.2 控制原理根据系统的控制要求,控制输入部分设置了启动控制,换向控制,加速控制和减速控制按钮,分别是K1、K2、S2、S3,控制电路如图 5 所示。通过 K1、K2 状态变化来实现电机的启动和换向功能。当 K1、K2 的状态变化时,内部程序检测P1.0 和 P1.1 的状态来调用相应的启动和换向程序,发现系统的电机的启动和正反转控制。 图5 控制电路原理图根据步进电机的工作原理可以知道,步进电机转速的控制主要是通过控制通入电机的脉冲频率,从而控制电机的转速。对于单片机而言,主要的方法有:软件延时和定时中断在此电路中电机的转速控制主要是通过定时器的中断来实现的,该电路控制电机加速度主要是通过S2、S3 的断开和闭合,从而控制外部中断根据按键次数,改变速度值存储区中的数据(该数据为定时器的中断次数),这样就改变了步进电机的输出脉冲频率,从而改变了电机的转速。3.2.3 步进电机的驱动方式步进电机常用的驱动方式是全电压驱动,即在电机移步与锁步时都加载额定电压。为了防止电机过流及改善驱动特性,需加限流电阻。由于步进电机锁步时,限流电阻要消耗掉大量的功率,故限流电阻要有较大的功率容量,并且开关管也要有较高的负载能力。 图6 步进电机驱动电路通过 ULN2803 构成比较多的驱动电路,电路图如图6所示。通过单片机的P1.0-P1.3 输出脉冲到ULN2803 的 1B-4B口,经信号放大后从 1C-4C 口分别输出到电机的A、B、C、D相。步进电机的另一种驱动方式是高低压驱动,即在电机移步时,加额定或超过额定值的电压,以便在较大的电流驱动下,使电机快速移步;而在锁步时,则加低于额定值的电压,只让电机绕组流过锁步所需的电流值。这样,既可以减少限流电阻的功率消耗,又可以提高电机的运行速度,但这种驱动方式的电路要复杂一些。驱动脉冲的分配可以使用硬件方法,即用脉冲分配器实现。3.2.4 最小系统 单片机最小系统或者称为最小应用系统,即用最少的元件组成的单片机可以工作的系统,对单片机来说,最小系统一般应该包括:单片机、复位电路、晶振电路。 复位电路:使用了独立式键盘,单片机的 P1 口键盘的接口。该设计要求只需4 个键对步进电机的状态进行控制,但考虑到对控制功能的扩展,使用了6路独立式键盘。复位电路采用手动复位,所谓手动复位,是指通过接通一按钮开关,使单片机进入复位状态,晶振电路用 30PF 的电容和一 12M 晶体振荡器组成为整个电路提供时钟频率。如图7所示。 图7 复位及时钟振荡电路晶振电路:89C51 单片机的时钟信号通常用两种电路形式电路得到:内部震荡方式和外部中断方式。在引脚 XTAL1 和 XTAL2 外部接晶振电路器(简称晶振)或陶瓷晶振器,就构成了内部晶振方式。由于单片机内部有一个高增益反相放大器,当外接晶振后,就构成了自激振荡器并产生振荡时钟脉冲。内部振荡方式的外部电路如图7所示。其电容值一般在 5-30pf,晶振频率的典型值为 12MHz,采用6MHz 的情况也比较多。内部振荡方式所得的时钟信号比较稳定,实用电路实用较多。3.3 输入显示部分 本系统是基于提高智能机灵活性而设计的,对于步进电机的频率、步数、位置和停止等通过键盘输入相应指令,由单片机输出步进电机控制信号来实现控制,用数码管显示输入的参数并在工作时动态显示剩下的步数。显然,要显示一个字型就应该使此字型的相应发光二极管点亮,实际上就是送一个不同电平的组合代表的数据到数码管。在该步进电机的控制器中,电机可以正反转,可以加速、减速,其中电机转速的等级分为七级,为了方便知道电机的运行状态和电机的转速的等级,这里设计了电机转速和电机的工作状态的显示电路。在显示电路中,主要是利用了单片机的 P0 口和 P2 口。采用两个共阳数码管作显示。显示电路如图8所示。 图8 显示电路第一个数码管接的 a、b、c、d、e、f、g、h 分别接 P0.0P0.7 口,用于显示电机正反转状态,正转时显示“1” ,反转时显示“一”,不转时显示“0”。第二个数码管的 a、b、c、d、e、f、g、h分别接 P2.0P2.7口,用于显示电机的转速级别,共七级,即从 17 转速依次递增,“0”表示转速为零。3.4 电源系统中包含弱电和强电两部分,需要提供两种电源电压。这里采用集成稳压器CW7805和输出电压可变的LM317来分别提供5V和1.25V-37V电压,两电压不共地。其中一路给单片机供电,另一路给步进电机供电。将各部分合在一起总体电路如图9所示 图9 总体电路4 软件程序设计 在步进电机系统中,相应的控制信号由单片机来产生,根据需要通过键盘输入电机的转动方向、转动速率和转动步数,在工作使用数码管来动态显示剩下的步数。所以,软件部分由4大模块组成: 主程序部分、定时器中断部分、外部中断 0 和外部中断1 部分,其中主程序的主要功能是系统初始参数的设置及启动开关的检测,若启动开关合上则系统开始工作,反之系统停止工作;定时器部分控制脉冲频率,它决定了步进电机转速的快慢;两个外部中断程序要做的工作都是为了完成改变速度这一功能。下面分析主程序与定时器中断程序及外部中断程序。4.1 主程序的设计主程序中要完成的工作主要有系统初始值的设置、系统状态的显示以及各种开关状态的检测判断等。其中系统初始状态的设置内容较多,该系统中,需要初始化定时器、外部中断;对 P1 口送初值以决定脉冲分配方式,速度值存储区送初值决定步进电机的启动速度,对方向值存储区送初值决定步进电机旋转方向等内容。若初始化 P1=11H、速度和方向初始值均设为 0,就意味着步进电机按相单四拍运行,系统上电后在没有操作的情况下,步进电机不旋转,方向值显示“0”,速度值显示“0”,主程序流程图如图10所示 图10 主程序流程图4.2 定时中断设计步进电机的转动主要是给电机各绕组按一定的时间间隔连续不断地按规律通入电流,步进电机才会旋转,时间间隔越短,速度就越快。在这个系统中,这个时间间隔是用定时器重复中断一定次数产生的,即调节时间间隔就是调节定时器的中断次数,因而在定时器中断程序中,要做的工作主要是判断电机的运行方向发下一个脉冲,以及保存当前的各种状态。程序流程图如图11所示。图11 定时中断程序流程4.3 外部中断设计外部中断所要完成的工作是根据按键次数,改变速度值存储区中的数据(该数据为定时器的中断次数),这样就改变了步进电机的输出脉冲频率,也就是改变了电机的转速。速度增加按钮 S2 为 INT0 中断,其程序流程为原数据,当值等于7 时,不改变原数值返回,小于 7 时,数据加 1 后返回;速度减少按钮 S3,当原数据不为 0,减 1 保存数据,原数据为 0 则保持不变。程序流程图如图 12所示。 图12 外部中断程序流程图4.4 系统软件程序 SPEED EQU 10H ;SPEED为转速等级标志,共 7 级,即1-7 FX EQU 11H ;FX 为方向标志 COUNT EQU 12H ;COUNT 中断次数标志 ORG 0000H AJMP MAIN ORG 0003H ;外部中断0入口地址,加速子程序 AJMP UP ORG 0013H ;外部中断1入口地址,减速子程序 AJMP DOWN ORG 000BH ;定时器0 中断入口地址,控制中断次数来达到控制转速 AJMP ZDT0 ORG 0030H MAIN: MOV SP,#60H MOV TMOD,#01H ;工作于定时、软件置位启动!模式 1(16 位计时器) MOV TH0,#0CFH MOV TL0,#2CH MOV COUNT,#01H SETB ET0 ;定时/计数器允许中断 CLR IT0 ;外部中断为电平触发方式,低电平有效 CLR IT1 SETB EX0 ;外部允许中断 SETB EX1 SETB EA ;开总中断 MOV R1,#11H ; 四相单四拍运行,共阳数码管方向显示 8,速度值显示 0 MOV SPEED,#00H MOV FX,#00H XIANS: MOV A,SPEED MOV DPTR,#LED MOVC A,A+DPTR ;查表获取等级对应数码管代码 MOV P2,A ;第二个数码管显示转速等级 MOV A,FX ;准备判断转向 CJNE A,#11H,ELS MOV P0, #0F9H ;第一个数码管显示 1,表示正转 AJMP QD ELS: CJNE A,#00H,ZHENG MOV P0,#0C0H ;第一个数码管显示 0,表示不转 AJMP QD ZHENG: MOV P0,#0BFH ;第一个数码管显示-,表示反转 QD: JB P3.4,DD ;P3.4 接启动开关 K1,P3.4=1 时启动 CLR TR0 ;停止定时/计数器 MOV P0,#0C0H ;第一个数码管显示 0,表示不转 MOV P2,#0C0H ;第二个数码管显示 0,表示转速为 0 MOV SPEED,#00H ;重新赋初值 MOV FX,#00H AJMP QD DD: MOV A,SPEED JNZ GO ;A 不等于 0,即初始速度不为零,则转移到 GO CLR TR0 ;停止定时/计数器 AJMP QD GO: SETB TR0 ;开启定时/计数器 ACALL DELAY AJMP XIANS DELAY: MOV R6,#10 ;延时子程序 DEL1: MOV R7,#250 HERE1: DJNZ R7, HERE1 DJNZ R6,DEL1 RET ;以下 ZDT0为定时器中断程序 ZDT0: PUSH ACC PUSH DPH PUSH DPL MOV TH0,#0D8H MOV TL0,#0F0H DJNZ COUNT,EXIT JB P3.5,NIZHUAN ;查询方向标志,P3.5 接换向开关 K2 MOV FX,#11H NIZHUAN:MOV A,FX CJNE A,#11H,FZ ;若 A不等于 11,即正转,则转移到 FZ MOV A,R1 ;R1 记录上一次电机脉冲状态 MOV P1,A RR A ;循环右一位 MOV R1,A MOV P1,A AJMP RE FZ: MOV A,R1 MOV P1,A RL A ;循环左移一位 MOV P1,A MOV R1,A RE: MOV A,SPEED MOV DPTR,#TAB MOVC A,A+DPTR MOV COUNT,A ;把转速级别赋给 COUNT JB P3.5 ,FFX ; P3.5 接换向开关 K2, 即换向位,若 P3.5=1,则跳到 FFX MOV FX,#11H AJMP EXIT FFX: MOV FX,#0FEH ;只要 FX不等于 11H,就可以通过循环左移或右移进行换向 EXIT: POP DPL POP DPH POP ACC RETI ;以下 UP 为加速中断程序 UP: PUSH ACC ACALL DELAY ;延时防抖动 JB P3.2,UPEX ;P3.2 为外部中断 0 位,接增速开关 S2,低电平有效,若 P3.2=1,则退出 MOV A,SPEED CJNE A,#7,SZ ;最大等级为 7,若 A不等于 7,则转移到SZ AJMP UPEX ;若A=7,则退出 SZ: INC SPEED ;SPEED= SPEED+1 UPEX: POP ACC HERE2: JNB P3.2,HERE2 ;本条指令为防止开关 S2 按下去后弹不起,导致一直产生中断 RETI 以下 DOWN为减速中断程序 DOWN: PUSH ACC ACALL DELAY JB P3.3,DEX ; P3.3 为外部中断 1 位,接减速开关 S3,低电平有效,若 P3.3=1,则退出 MOV A,SPEED CJNE A,#0,SJ AJMP DEX SJ: DEC SPEED ;SPEED= SPEED-1 DEX: POP ACC HERE3: JNB P3.3,HERE3 RETI TAB: DB 0,60,40,35,30,28,25,21; 0 1 2 3 4 5 6 7 8 9 LED: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,98H END 总结本设计通过分析步进电机结构、工作原理,查阅步进电机控制系统的相关科技文献,遵循实用、简单、可靠和低成本的原则,设计了一种既可用于精度要求不高,但控制需完备的场合。对本次设计,采用单片机为控制核心,利用其强大的功能,把键盘和显示电路有机的结合起来,组成一个操作方便、交互性强的控制系统。采用键盘电路和显示电路采用了动态扫描技术,节约了单片机资源。 系统软件采用结构化设计,具有易维护性,根据用户新的要求,对软件系统进行少量的修改,使系统功能得到一定程度的提高。使用单片机以软件方式驱动步进电机,不但可以通过编程方法,在一定范围内自由设定步进电机的转速、往返转动的角度以及转动次数等,而且还可以方便灵活地控制步进电机的运行状态,以满足不同用户的要求。因此,常把单片机步进电机控制电路称之为可编程步进电机控制驱动器。步进电机控制(包括控制脉冲的产生和分配)使用软件方法,即用单片机实现,这样既简化了电路,也降低了成本。这次的课程设计更注重于对我们所学的综合知识的运用,同时培养我们运用所学着知识来发现问题、提出和解决问题的能力。这次的硬件设计中主要运用了AT89C51单片机,通过查阅资料了解更多关于单片机的知识和功能,进一步巩固了所学的单片机课程。特别是对程序的编写更加巩固了汇编语言的编程方法。回顾此次单片机课程设计,从选题到确定任务书,在接近两个星期的日子里,可以说是苦多于甜,但是我确实从中学到很多实用的东西,设计中自由的发散不仅巩固了以前所学过的知识,更重要的是通过查资料请教老师同学等各种学习途径掌握了许多书本上所没有学到过的知识,尤其是用PROTEL画原理图,可以说在这短短的半个月时间里获益匪浅。 致谢在这次步进电机的设计中,使我对单片机有了更深的了解,单片机的种类多,而型号杂,也是学习中的困难。单片机编程是用汇编语言进行编程,也就需要我们对电路的分析,然后总结,查阅相关资料才能变成好的程序,编程讲究的是多动手写,自己写,用自己的思路,在这次的编程中再一次复习了单片机编程的特点和用法。在这次单片机应用系统设计中遇到到很大的困难,主要原因是平时的知识掌握的不够,通过查阅很多资料和类似的论文,才做成的。以前都没有做过单片机设计,一开始都不知道如何下手,多亏了李老师之前的讲解并举例加以说明。在设计过程中,李老师所传授给我们的设计理念和思想起了很重要的作用。由于时间的仓促,经验的少,知识的局限,设计有一定的不足之处。这次的设计中,用到了PROTEL的画图方法,由于自己之前对这方面的知识的欠缺,不能灵活的运用其画图,不过在同学的帮助下了解了关于它的一些知识和用法,并完成了原理图的设计,再次对帮助过我的老师和同学表示忠诚的感谢。参考文献1 张鑫, 华臻, 陈书谦 .单片机原理及应用 电子工业出版社 2005.82 梅丽凤 ,王艳秋 , 张军 .单片机原理及接口技术 清华大学出版社2004.63 胡汉才单片机原理与接口技术M北京:清华大学出版社,1995.64 楼然苗等51系列单片机设计实例M北京:北京航空航天出版社,2003.3 5 何立民. 单片机高级教程M北京:北京航空航天大学出版社,20016 张迎新,等.单片机微型计算机原理、应用及接口技术M.修订版.北京:·国防工业出版社,2004.7 丁志刚,李刚民.单片微型计算机原理与应用M.北京:电子工业出版社,1990.8 孙传友,等.测控电路及装置M.北京:北京航天航空大学出版社,2000.9马淑华,王凤文,张美金. 单片机原理与接口技术M.北京:北京邮电大学出版社,2007.10张靖武,周灵彬. 单片机系统的 PROTEUS 设计与仿真M. 北京:电子工业出版社,2007