ImageVerifierCode 换一换
格式:DOCX , 页数:34 ,大小:279.97KB ,
资源ID:21802705      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/21802705.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(实时电机旋转系统的设计Word格式.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

实时电机旋转系统的设计Word格式.docx

1、12M晶振DS130232.768KHZ晶振ULN200330p电容24位数码管10p电容2位数码管220欧排阻步进机10K电阻按钮6位排针 (2)器件功能介绍步进电机(1)步进电机的结构:电机转子上分布着很多的小齿,定子尺上有三个励磁绕组,其几何轴线依次分别与转子齿轴线错开。相邻两转子齿轴线间的距离为齿距,用T表示,当A与齿1相对齐时,B与齿2向右错开1/3T,C与齿3向右错开2/3T。步进电机的结构(2)步进电机的工作过程当A相通电,B,C相不通电时,由于磁场作用,齿1与A对齐(转子不受任何力);当B相通电,A,C相不通电时,齿2应与B对齐,此时转子转过1/3T,齿3与C的偏移量变为1/3

2、T,齿4与第二个A的偏移为T-1/3=2/3T;当C相通电,A,B相不通电时,齿3应与C对齐,此时转子又向前转过1/3T,齿4与第二个A对齐,转子又向右移过1/3T;这样经过A,B,C,A分别通电状态,齿4移到第二个A相,电机转子向右移过一个齿距,如果不断地按0FEH-0FDH-0FBH-0F7H-的1相励磁法通电,电机就按每步18度,20步为一圈的方式正时针运行。反之,如果不断地按0F7H-0FBH-0FDH -0FEH-的1相励磁法通电,电机就按每步18度,20步为一圈的方式反时针运行。由此可知:电机的位置和速度与导电次数(脉冲数)和频率分别生成对应关系,而电机转动方向则由导电顺序决定。主

3、控制器P89C51P89C51管脚图89C51单片机 89C51RD2HBP型单片机(2)管脚介绍Vss(20脚):接地VCC(40脚): 主电源+5VXTAL1(19脚):接外部晶体的一端。在片内它是振荡电路反相放大器的输入端。在采用外部时钟时,对于HMOS单片机,该端引脚必须接地;对于CHMOS单片机,此引脚作为驱动端。XTAL2(18脚): 接外部晶体的另一端。在片内它是一个振荡电路反相放大器的输出端,振荡电路的频率是晶体振荡频率。若需采用外部时钟电路,对于HMOS单片机,该引脚输入外部时钟脉冲;对于CHMOS单片机,此引脚应悬浮。RST(9脚): 单片机刚接上电源时,其内部各寄存器处于

4、随机状态,在该脚输入24个时钟周期宽度以上的高电平将使单片机复位(RESET)PSEN(29脚): 在访问片外程序存储器时,此端输出负脉冲作为存储器读选通信号。CPU在向片外存储器取指令期间,PSEN信号在12个时钟周期中两次生效。不过,在访问片外数据存储器时,这两次有效PSEN信号不出现。PSEN端同样可驱动8个LSTTL负载。我们根据PSEN、ALE和XTAL2输出端是否有信号输出,可以判别80C51是否在工作。ALE/PROG(30脚):在访问片外程序存储器时,此端输出负脉冲作为存储器读选通信号。EA/VPP(31脚): 当EA端输入高电平时,CPU从片内程序存储器地址0000H单元开始

5、执行程序。当地址超出4KB时,将自动执行片外程序存储器的程序。当EA输入低电平时,CPU仅访问片外程序存储器。在对87C51EPROM编程时,此引脚用于施加编程电压VPP。输入/输出引脚:1)P0.0P0.7 (39脚32脚)2)P1.0P1.7 (1脚8脚)3)P2.0P2.7 (26脚21脚)4)P3.0P3.7 (10脚17脚)(3) 寄存器组介绍RS1RS0寄存器组片内PAM地址通用寄存器名称0组00H07HR0R71组08H0FH2组10H17H3组18H1FH实时时钟DS1302 实时时钟电路DS1302是DALLAS公司的一种具有涓细电流充电能力的电路,主要特点是采用串行数据传输

6、,可为掉电保护电源提供可编程的充电功能,并且可以关闭充电功能。采用普通32.768kHz晶振。(1) DS1302的结构及工作原理 DS1302 是美国DALLAS公司推出的一种高性能、低功耗、带RAM的实时时钟 电路,它可以对年、月、日、周日、时、分、秒进行计时,具有闰年补偿功能,工作电压为2.5V5.5V。采用三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据。DS1302内部有一个318的用于临时性存放数据的RAM寄存器。DS1302是DS1202的升级产品,与DS1202兼容,但增加了主电源/后背电源双电源引脚,同时提供了对后背电源进行涓细电流充电的能

7、力。 (2)引脚功能及结构 图1示出DS1302的引脚排列,其中Vcc1为后备电源,VCC2为主电源。在主电源关闭的情况下,也能保持时钟的连续运行。DS1302由Vcc1或Vcc2两者中的较大者供电。当Vcc2大于Vcc10.2V时,Vcc2给DS1302供电。当Vcc2小于Vcc1时,DS1302由Vcc1供电。X1和X2是振荡源,外接32.768kHz晶振。RST是复位/片选线,通过把RST输入驱动置高电平来启动所有的数据传送。RST输入有两种功能:首先,RST接通控制逻辑,允许地址/命令序列送入移位寄存器;其次,RST提供终止单字节或多字节数据的传送手段。当RST为高电平时,所有的数据传

8、送被初始化,允许对DS1302进行操作。如果在传送过程中RST置为低电平,则会终止此次数据传送,I/O引脚变为高阻态。上电运行时,在Vcc2.5V之前,RST必须保持低电平。只有在SCLK为低电平时,才能将RST置为高电平。I/O为串行数据输入输出端(双向),后面有详细说明。SCLK始终是输入端。 (3)DS1302的控制字节 DS1302 的控制字如图2所示。控制字节的最高有效位(位7)必须是逻辑1,如果它为0,则不能把数据写入DS1302中,位6如果为0,则表示存取日历时钟数据,为1表示存取RAM数据;位5至位1指示操作单元的地址;最低有效位(位0)如为0表示要进行写操作,为1表示进行读操

9、作,控制字节总是从最低位开始输出。 (4)数据输入输出(I/O) 在控制指令字输入后的下一个SCLK时钟的上升沿时,数据被写入DS1302,数据输入从低位即位0开始。同样,在紧跟8位的控制指令字后的下一个SCLK脉冲的下降沿读出DS1302的数据,读出数据时从低位0位到高位7。 (5)DS1302的寄存器 DS1302有12个寄存器,其中有7个寄存器与日历、时钟相关,存放的数据位为BCD码形式,其日历、时间寄存器及其控制字见表1。 此外,DS1302 还有年份寄存器、控制寄存器、充电寄存器、时钟突发寄存器及与RAM相关的寄存器等。时钟突发寄存器可一次性顺序读写除充电寄存器外的所有寄存器内容。

10、DS1302与RAM相关的寄存器分为两类:一类是单个RAM单元,共31个,每个单元组态为一个8位的字节,其命令控制字为C0HFDH,其中奇数为读操作,偶数为写操作;另一类为突发方式下的RAM寄存器,此方式下可一次性读写所有的RAM的31个字节,命令控制字为FEH(写)、FFH(读)。(6)3DS1302实时显示时间的软硬件 DS1302与CPU的连接需要三条线,即SCLK(7)、I/O(6)、RST(5)。图3示出DS1302与89C2051的连接图,其中,时钟的显示用LCD。(7)DS1302与CPU的连接 实际上,在调试程序时可以不加电容器,只加一个32.768kHz 的晶振即可。只是选择

11、晶振时,不同的晶振,误差也较大。另外,还可以在上面的电路中加入DS18B20,同时显示实时温度。只要占用CPU一个口线即可。 LCD还可以换成LED,还可以使用北京卫信杰科技发展有限公司生产的10位多功能8段液晶显示模块LCM101,内含看门狗(WDT)/时钟发生器及两种频率的蜂鸣器驱动电路,并有内置显示RAM,可显示任意字段笔划,具有34线串行接口,可与任何单片机、IC接口。功耗低,显示状态时电流为2A (典型值),省电模式时小于1A,工作电压为2.4V3.3V,显示清晰。 若在调试中遇到的下列问题,可作如下处理: DS1302 与微处理器进行数据交换时,首先由微处理器向电路发送命令字节,命

12、令字节最高位MSB(D7)必须为逻辑1,如果D7=0,则禁止写DS1302,即写保护;D6=0,指定时钟数据,D6=1,指定RAM数据;D5D1指定输入或输出的特定寄存器;最低位LSB(D0)为逻辑0,指定写操作(输入), D0=1,指定读操作(输出)。 在DS1302的时钟日历或RAM进行数据传送时,DS1302必须首先发送命令字节。若进行单字节传送,8位命令字节传送结束之后,在下2个SCLK周期的上升沿输入数据字节,或在下8个SCLK周期的下降沿输出数据字节。 DS1302与RAM相关的寄存器分为两类:再一类为突发方式下的RAM寄存器,在此方式下可一次性读、写所有的RAM的31个字节。 要

13、特别说明的是备用电源B1,可以用电池或者超级电容器(0.1F以上)。虽然DS1302在主电源掉电后的耗电很小,但是,如果要长时间保证时钟正常,最好选用小型充电电池。可以用老式电脑主板上的3.6V充电电池。如果断电时间较短(几小时或几天)时,就可以用漏电较小的普通电解电容器代替。100 F就可以保证1小时的正常走时。DS1302在第一次加电后,必须进行初始化操作。初始化后就可以按正常方法调整时间。(8)DS1302总结 DS1302 存在时钟精度不高,易受环境影响,出现时钟混乱等缺点。DS1302可以用于数据记录,特别是对某些具有特殊意义的数据点的记录,能实现数据与出现该数据的时间同时记录。这种

14、记录对长时间的连续测控系统结果的分析及对异常数据出现的原因的查找具有重要意义。传统的数据记录方式是隔时采样或定时采样,没有具体的时间记录,因此,只能记录数据而无法准确记录其出现的时间;若采用单片机计时,一方面需要采用计数器,占用硬件资源,另一方面需要设置中断、查询等,同样耗费单片机的资源,而且,某些测控系统可能不允许。但是,如果在系统中采用时钟芯片DS1302,则能很好地解决这个问题。我们使用ULN2003作为电路的驱动,ULN2003 是高耐压、大电流达林顿陈列,由七个硅NPN 达林顿管组成。该电路的特点如下: ULN2003 的每一对达林顿都串联一个2.7K 的基极电阻,在5V 的工作电压

15、下它 能与TTL 和CMOS 电路直接相连,可以直接处理原先需要标准逻辑缓冲器来处理的数据。ULN2003 工作电压高,工作电流大,灌电流可达500mA,并且能够在关态时承受50V 的电压,输出还可以在高负载电流并行运行。(三)系统硬件电路设计图四、系统程序设计:(一)主程序流程图(二)时间调整:(1)按键控制时间调整调时原理:调整时间用了两个按钮,一个作为移位,控制用,另一个作为加用,分别定义为控制按钮,加按钮。在调整时间过程中,要调整的位与别的位有区别,所以增加了闪烁功能,即调整的位一直在闪烁,直到调整下一位。闪烁原理是,让要调整的一位每隔一定时间熄灭一次,比如说50ms。利用定时器计时,

16、当达到50ms溢出时,就送给该位熄灭符,在下次溢出时,再送正常显示的值,不断交替,直到调整该位结束。此时送正常显示值给该位,再进入下一位调整闪烁程序。(2)上下课时间电机转动流程图 (3)电机正反转子程序流程图步进电机正转时序步进P0.3P0.2P0.1P0.00FEH0FDH0FBH30F7H4步进电机反转时序0FE7H五控制源程序清单;时:75H74H分:73H72H秒:71H70H*SCLK EQU p3.2IO EQU P3.3RST EQU P3.4HOUR DATA 62HMINTUE DATA 61HSECOND DATA 60HDS1302_ADDR DATA 32HDS130

17、2_DATA DATA 31HORG 0000HAJMP STARTORG 0003HRETIORG 000BHORG 0013HORG 001BHLJMP INT1ORG 0023HORG 002BH*主程序START:SETB EAMOV TMOD,#10HMOV TL1,#00HMOV TH1,#00HMOV DS1302_ADDR,#8EHMOV DS1302_DATA,#00HLCALL WRITEMOV DS1302_ADDR,#90HMOV DS1302_DATA,#0A6H ;1302充电,充电电流1.1MAMAIN1:MOV DS1302_ADDR,#85H;读小时LCALL

18、 READMOV HOUR,DS1302_DATAMOV DS1302_ADDR,#83H;读分钟MOV MINTUE,DS1302_DATAMOV DS1302_ADDR,#81H;读秒MOV SECOND,DS1302_DATALCALL ZCOMP1LCALL FCOMP1MOV R0,HOURLCALL DIVIDEMOV 74H,R1MOV 44H,R1MOV 75H,R2MOV 45H,R2MOV R0,MINTUEMOV 72H,R1MOV 42H,R1MOV 73H,R2MOV 43H,R2MOV R0,SECONDMOV 70H,R1MOV 40H,R1MOV 71H,R2M

19、OV 41H,R2LCALL DISPLAYJNB P3.6,SETGLJMP MAIN1*调时程序SETG:SETB TR1SETB ET1CLR 0DHCLR 0EHMOV DS1302_DATA,#00H ;允许写1302MOV DS1302_ADDR,#80HMOV DS1302_DATA,#80H ;1302停止震荡GWAIT:JNB P3.6,GWAITSETG1:JNB P3.6,SETG2JNB P3.7,GADDHOURAJMP SETG1GADDHOUR:MOV R7,62H ;小时加1LCALL ADD1MOV 62H,ACJNE A,#24H,GADDHOUR1MOV

20、62H,#00HGADDHOUR1:MOV DS1302_ADDR,#84H ;小时值送1302MOV DS1302_DATA,62HMOV R0,62HMOV 74H,R1 ;小时值送显示缓存WAITT1:JNB P3.7,WAITT1SETG2:SETB 0EH ;调分闪标志GWAIT1:JNB P3.6,GWAIT1SETG3:JNB P3.6,SETGOUTJNB P3.7,GADDMINTUEAJMP SETG3GADDMINTUE:MOV R7,61H ;分加1MOV 61H,ACJNE A,#60H,GADDMINTUE1MOV 61H,#00HGADDMINTUE1:MOV D

21、S1302_ADDR,#82H ;分送1302MOV DS1302_DATA,61HMOV R0,61HWAITT2:JNB P3.7,WAITT2SETGOUT: ;结束调整1302开始振荡MOV DS1302_ADDR,#8EH ;禁止写入1302MOV DS1302_DATA,#80HCLR ET1CLR TR1*闪动中断程序INT1:PUSH ACCPUSH PSWGFLASH:CPL 0DHJB 0DH,GFLASH1MOV 75H,45HMOV 74H,44HMOV 73H,43HMOV 72H,42HMOV 71H,41HMOV 70H,40HGFLASHOUT:出中断POP P

22、SWPOP ACCGFLASH1:闪时JB 0EH,GFLASH2MOV 75H,#0AHMOV 74H,#0AHAJMP GFLASHOUTGFLASH2:闪分MOV 73H,#0AHMOV 72H,#0AH加1程序ADD1:MOV A,R7ADD A,#01HDA ARET分离程序DIVIDE:MOV A,R0ANL A,#0FHMOV R1,ASWAP AMOV R2,A*读1302程序READ: CLR SCLK NOP SETB RST MOV A,32H MOV R4,#8READ1: RRC A ;送地址给1302 MOV IO,C SETB SCLK DJNZ R4,READ1READ2: NOP ;从1302中读出数据 MOV C,IO RRC A DJNZ R4,READ2 MOV 31H,A CLR RST RET写程序WRITE:WRITE1: DJNZ R4,WRITE1 MOV A,31HWRITE2:送数据给1302 DJNZ R4,WRITE2*显示程序 DISPLAY: MOV

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1