基于单片机控制的数控x-y工作台系统设计插补设计内容摘要:

2计数溢出中断;ET2=0,禁止T2中断。 ES串行口中断控制位,ES=1,允许串行口发送/接受中断;ES=0,禁止串行口中断。 ET1定时器/计数器T1中断控制位,ET1=1,允许T1计数溢出中断;ET1=0,禁止T1中断。 EX1外部中断1控制位,EX1=1,允许中断;EX1=0,禁止外部中断1中断。 ET0定时器/计数器T0中断控制位,ET0=1,允许T0计数溢出中断;ET0=0,禁止T0中断。 EX0外部中断0控制位,EX0=1,允许中断;EX0=0,禁止外部中断0中断。 中断优先级控制寄存器IPPT2T2中的优先级控制位,PT2=1,设定定时器T2为高优先级中断;PT2=0为低优先级中断。 PS串行口中断优先级控制位。 PS=1设定串行口为高优先级中断;PS=0为低优先级中断PT1T1中断优先级控制位。 PT1=1设定定时器T1为高优先级中断;PT1=0为低优先级中断PX1外部中断1优先级控制位。 PX1=1设定定时器外部中断1为高优先级中断;PX1=0为低优先级中断。 PT0T0中断优先级控制位。 PT0=1设定定时器T0为高优先级中断;PT0=0为低优先级中断。 PX0外部中断0优先级控制位。 PX0=1设定定时器外部中断0为高优先级中断;PX0=0为低优先级中断。 表311 中断服务程序的入口地址符号名称中断引起原因C51对应中断源的编号INT0外部中断00INT1外部中断11T0定时器0中断定时器/计数器0计数回零溢出2T1定时器1中断定时器/计数器1计数回零溢出3TI/RI串行口中断串行通信完成一帧发送或接收引起中断4INT2定时器2中断定时器/计数器2计数回零溢出5 AT89C52单片机的各引脚功能AT89C52单片机的引脚图如图35所示,由于上述分析中以对I/O进行的系统性的介绍,下面只对其第二功能做具体的补充,详细见表312。 图35 PDIP封装形式的AT89C52单片机引脚排列VCC:电源电压GND:接地RST:复位输入。 当振荡器工作时,RST引脚出项两个机器周期以上高电平将使单片机复位。 ALE/ :当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8 位字节。 一般情况下,ALE 仍以时钟振荡频率的1/6 输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。 要注意的是:每当访问外部数据存储器时将跳过一个ALE 脉冲。 对Flash 存储器编程期间,该引脚还用于输入编程脉冲。 :程序储存允许输出是外部程序存储器的读选通信号,当AT89C52 由外部程序存储器取指令(或数据)时,每个机器周期两次有效,即输出两个脉冲。 在此期间,当访问外部数据存储器,将跳过两次信号。 /VPP:外部访问允许。 欲使CPU 仅访问外部程序存储器(地址为0000H—FFFFH),端必须保持低电平(接地)。 需注意的是:如果加密位LB1 被编程,复位时内部会锁存端状态。 如端为高电平(接Vcc端),CPU 则执行内部程序存储器中的指令。 Flash 存储器编程时,该引脚加上+12V 的编程允许电源Vpp,当然这必须是该器件是使用12V 编程电压Vpp。 本次设计因为接高电平。 XTAL1:振荡器反相放大器的及内部时钟发生器的输入端。 XTAL2:振荡器反相放大器的输出端。 表312 AT89C52单片机P0口和P3口引脚的第二功能口线第二功能信号名称T2定时器/计数器2的外部计数输入或时钟输出T2EX定时器/计数器2的捕捉/重载触发信号和方向控制RXD串行数据接收TXD串行数据发送外部中断0请求信号输入外部中断1请求信号输入T0定时器/计数器0计数输入T1定时器/计数器1计数输入外部RAM写选通外部RAM读选通 可编程并行接口芯片8255A8255A有24条I/O线,分为A、B、C共3个端口来使用;8条数据线,用于数据和控制命令传送;两条地址线,读/写时用于选择片内的控制寄存器或A、B、C口对应的3个端口寄存器PA、PB、PC;读/写信号控制线各一根;还有复位信号,片选信号、电源等引脚。 8255A的24条I/O线可编程分为两组,有3种工作方式,其中,方式0是最为简单和常用的一种,该方式下端口A、B、C仅作简单的出入/输出使用。 8255A的工作方式有其片内的控制寄存器选择。 8255A的内部结构8255A内部由PA、PB、PC这3个8位可编程双向I/O口,A组控制器和B组控制器,数据缓冲器及读/写控制逻辑4部分电路组成,其结构如图36[5] 梁景凯,[M].北京:机械工业出版社,2006,第108页.所示。 PA、PB、PC口:PA、PB、PC口均为8位I/O数据口,但结构上略有差别。 A口由一个8位数据输出缓冲/锁存器和一个8位数据输入缓冲/锁存器组成,B口和C口各由一个8位数据输出缓冲/锁存器和一个8位数据输入缓冲器(无输入数据缓冲器,故B口不能在模式2下工作)组成。 A组控制器和B组控制器:A、B组控制器对应的控制字寄存器接受CPU送来的控制字,用于决定8255A的工作方式。 A组控制器控制A口和C口上半部(PC4~PC7),B组控制器控制B口和C口下半部(PC0~PC3)。 数据总线缓冲器:这是一个8位双向三态驱动器,用于8255A和单片机的数据总线相连,以实现8255A与单片机的数据发送。 读/写控制逻辑:接收CPU送来的读/写信号和选口地址,用于控制对8255A的读/写。 图36 8255A逻辑结构图 8255A的引脚功能8255A有40条引脚,采用双列直插式封装。 图37 8255A引脚图① 数据总线(8条):D0~D7,用于传送CPU和8255A间的数据、命令和状态字。 ② 控制总线(6条): RESRT:复位线,高电平有效。 :片选线,低电平有效。 若为高电平,则8255A不被选中;若为低电平,则8255A选中。 为读命令线,为写命令线,皆为低电平有效。 若为低电平(必为高电平),则所选8255A处于读状态;若为低电平(必为高电平),则所选8255A处于写状态。 A0、A1:地址输入线,用于选中PA、PB、PC口和控制寄存器中哪一个工作。 上述控制线的功能如表312所列。 表312 8255A控制线功能A1A0功能00010读端口A数据01010读端口B数据10010读端口C数据00100写数据到端口A01100写数据到端口B10100写数据到端口C11100写命令到控制寄存器————1数据总线呈高阻状态11010非法条件——110数据总线呈高阻状态③ 并行I/O总线(24条):这些总线用于和外设相连,共分3组。 PA7~PA0:双向I/O总线。 PA7为最高位,用于传送I/O数据,可以设定为输入或输出方式,也可设定为输入/输出双向方式。 PB7~PB0:双向I/O总线。 PB7为最高位,用于传送I/O数据,可以设定为输入或输出方式。 PC7~PC0:双向数据/控制总线。 PC7为最高位,用于传送I/O数据或控制/状态信息,可以设定为输入或输出方式,也可设定为控制/状态方式。 ④ 电源线(2条):Vcc为+5V电源线,GND为地线。 8255A的工作方式8255A有3种工作方式:方式0、方式方式2。 方式0:基本输入/输出方式。 这种方式中3个端口被设置成输入或输出口,但不能既作输入又作输出。 PC口分成两部分:上半口(PC4~PC7)、下半口(PC0~PC3),两部分可分别设置传动方向。 各端口均可用于无条件数据传送,也可通过人为指定PC口的某些位作为PA口、PB口的状态信号,进行查询方式传送。 方式1:选通输入/输出方式。 这种方式下PA口、PB口通过编程设定为输入口或输出口,而PC口则分成两部分,分别用作PA口和PB口的控制和同步信号,以便于8255A和CPU之间传送信息和中断请求。 这种联络信号时由8155A内部规定的,不是由使用者指定的。 PC口的高4位服务于A口,称A组。 PC口的低4位服务于B口,称B组。 方式2:双向总线方式。 只有PA口可工作于此方式,这时PA口既可输入又可输出,PC口的PC3~PC7用作输入/输出的同步控制信号。 此时,PB口可以工作于方式0,但不能工作于方式1。 8255A控制字8255A方式控制字如图38,分为两种类型控制字:。 方式控制字图38 方式选择控制字格式C口置位/复位控制字图39C口控制字格式4 基于PROTEUS仿真电路分析 XY数控工作台控制系统仿真电路图图41 XY数控工作台控制系统仿真电路图 XY数控工作台控制系统硬件资源及其分配XY数控工作台控制系统硬件资源主要包括有:AT89C52单片机、锁存器74LS37可编程控制器8255A、8位8段共阴数码管、四行四列矩阵键盘、限位/急停按钮、晶振电路、复位电路、以及六线制的四相八拍工作制的X和Y向步进电动机各一个。 控制系统硬件资源的分配如表41所列。 表41 XY数控工作台控制系统硬件资源分配硬件芯片端口(引脚)用途(功能)AT89C528位P0口地址总线:输出电平信号到74LS373送到8255A的A0和A1口,控制8255A的工作方式数据总线:扩展可编程控制器8255A,完成AT89C52单片机与8255A的数据输入和输出XTAL1连接晶振电路XTAL2连接晶振电路RST复位电路接线口ALE地址锁存允许,与74LS373的LE口连接,ALE为高电平时,74LS373送数,低电平时,锁存。 ~四行四列矩阵式键盘行扫描输入输出线~四行四列矩阵式键盘列扫描输入输出线8255A连接8255A片选端限位信号输入口,低地平时请求外部中断0可编程控制器8255A写选通信号端口可编程控制器8255A读选通信号端口D0~D7连接AT89C52的P0口,负责数据的输入与输出PA口连接8位8端数码管的段驱动端口PB口连接8位8端数码管的位选端口PC0~PC3向X向步进电动机输入脉冲数和脉冲相序PC4~PC7向Y向步进电动机输入脉冲数和脉冲相序 电路模块图分析 XY向步进电机控制电路分析图42 X/Y向步进电机控制电路模拟图图42为X/Y向步进电机控制电路模拟图,从图从我们可以看到仿真选用的是6线制的四相八拍步进电机,通过8255A的PC0~PC3口分别向X向步进电机输入脉冲信号,PC4~PC7则分别向Y向步进电机输入脉冲信号。 四相八拍步进电机的正转相序是A→AB→B→BC→C→CD→D→DA,反转相序是DA→D→CD→C→BC→B→BA→A;表23将给出X向步进电动机正转时PC口各引脚输出电平与X向电机相位关系;表44将给出Y向步进电动机正转时PC口各引脚输出电平与Y向电机相位关系;而反转时,控制的方式只需把从上往下循环改为从下往上循环即可。 表42 X向步进电动机正转时PC口各引脚输出电平与Y向电机相位关系X向步进电机相位可编程控制器8255A的PC口各引脚的电平PC口输出的16进制数PC0PC1PC2PC3PC4PC5PC6PC7A100000000x01AB110000000x03B010000000x02BC011000000x06C001000000x04CD001100000x0cD000100000x08DA100100000x09表43 Y向步进电动机正转时PC口各引脚输出电平与Y向电机相位关系Y向步进电机相位可编程控制器8255A的PC口各引脚的电平PC口输出的16进制数PC0PC1PC2PC3PC4PC5PC6PC7A000010000x10AB000011000x30B000001000x20BC000001100x60C000000100x40CD000000110xc0D000000010x80DA000010010x90 四行四列矩阵式键盘控制电路分析图43为四行四列矩阵式键盘控制电路原理图,原理图的设计上,在键盘的行扫描线上设置了上拉电阻,~,~。 键盘上设有了0~9共10个数字键、X坐标键、Y左边键、G代码按键、数字符号—负号键、ENTER(确认)键以及START(开始)按键。 通过这些按键能我们能直接向AT89C52单片机输入指令、X坐标和Y坐标。 图43 键盘硬件电路接线图 XY数控工作台显示电路分析图44 XY数控工作台仿真显示电路数控XY。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。