

下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、4 * fJ IA AN G S U U N I V E R S I T Y单片机课程设计- 步进电机控制所属学院:电气信息工程学院_专业班级:电气卓越_姓名:_学号:_指导教师:孙_ 日期:20152015 年6 6 月 2626 日. .设计任务1.从键盘上输入正、反转命令,转速参数(16级)和转动步数显示在LED显示器上。显示器上显示:第一位为0表示正转,为1表示反转;第二位0F为转速等级,第三到第六位设定步数。2.单片机依显示器上显示的正、反转命令,转速级数和转动步数进行相应 动作,转动步数减为零时停止转动。1.步进电机原理如图,当有一相绕组被通电激励时,磁通从正相齿,经过软铁芯的转子
2、,并 以最短路径流向负相齿,为使磁通路径最短,在磁场力的作用下,转子被迫移动, 使最近的一对齿与被激励的一相对准。那么,通过对它每相线圈中电流的顺序切换可使电机作步进式旋转。相数:产生不同对极N、S磁场的激磁线圈对数。拍数:指电机转过一个齿距角所需脉冲数,以四相电机为例,有四相四拍运 行方式即AB-BC-CD-DA-AB或A-B-C-D-A,四相八拍运行方式即A-AB-B-BC-C-CD-D-DA-A.步距角:对应一个脉冲信号电机转子转过的角位移步距角=360/(转子齿数*拍数)=18度2.LED显示器原理LED数码管实际上是由七个发光管组成8字形构成的,这些段分别由字母a,b,c,d,e,f
3、,g,dp来表示。LED显示器有共阳极和共阴极两种接法,共阴极显示器的发光二极管阴极LED连接在一起,通常此公共阴极接地,当某个发光二极管 的阳极为高电平时,发光二极管点亮,相应的段被显示;同样,共阳极显示器的 发光二极管LED阳极连接在一起,通常此公共阳极接正电压,当某个发光二极管 的阴极为低电平时,发光二极管点亮,相应的字段被点亮。3.键盘接口原理键盘实际上是由排列成矩阵形式的一系列按键开关组成, 用户通过键盘可以 向CPU俞入数据,地址和命令。我们主要需要解决键的识别与键的抖动消除和键 的保护等问题。采用8255A接口芯片构成的4*8键盘的接口电路,其中A口为输 入,作为列线;C口为输入
4、作为行线。当所有的键没有被按下时,C口输入均为高;若某列线为低时,恰好该列上有键被按下,则键所在的行线为低。三设计原理及步骤系统中使用20BY-0型号步进电机,它使用+5V直流电源,步距角为18度, 电机线圈由A AB C、D四相组成。步进电机控制原理是通过对它每相线圈中的 电流的顺序切换来使电机作步进式旋转,驱动电路由脉冲信号来控制,所以调 节脉冲信号的频率便可改变步进电机的转速。BA BB BC BD即为脉冲信号输入插孔,驱动器输出A B、C、D接步进电机。步骤:先根据书本的键盘扫描程序与数码管显示程序, 设计了键盘显示程序, 然后 是数码管显示程序,把二者整合到一起,调试成功后,再设计了
5、驱动电机程序, 实现电机的正反转与调速控制。四硬件原理接线图步进电机模块插头接实验系统J3插座,(顺接)把P1.0P1.3分别接到BAB插孔。VccFvcc80324.7kX4ls,PI.OBAP1.1 BB3P1.2BC5P1.3BD 974LS04275452亠3J3BCD五.设计说明及流程图1.数码管显示字形LED显示器是由发光二极管构成的字段组成的显示器显示程序任务:设置显示缓冲区(7EH79 H),存放待显示数据和字符(位置码)。显示译码:程序存储器中建立字形码常数表,查表得出对应数据和字符的字 形码。a匚ooL: !ooo ooo _00 QQOQQQQQooooooooooooo
6、ooaE -39 ClOOQOa 6,8.8. ft s.afbgcT “hDfDf% % D D牙 必D D2 2DD D Do ohsfedcbahsfedcbaLED的字形码(字段码)显示字符01&灭FUF 输出显示:输出字形码到显示端口衣I I六进制数屋空白字符与P的显不段码字型共阳极段匹共冊槻段码字毁奘阳极段码共阴碾段码0COH3FH9GH6FHIF9HO6HA88H77H2A4H5BMb83H7CH3BOH4FHcC6H39H49&H钿HdA1H5EH5眈H6DHEB6H79H6S2H7DHFB4H71H7F8HO7H空白FFHOOH880H7FHPBCH73H2.
7、字位口表(从高位起)龍人口QFFUEHDIDIQIQI:G G ThTh7 7Q2in ;DEDER5财肓07IDSIDSQSCLKCLKCLRCLRDIDIQIQID2D2D2D22 2G3G3D4D4Q4Q4応CSCSD6D6Q6Q6D7D7D7D7DSDSQSQSCLKCLKCLRCLR律B9AlAlBlBlPi2Pi2B2B2A3A3B3B3抽RWRWAEBEA&A&B6B6A A 7 7B7B7DIR038Fa2衣I I六进制数屋空白字符与P的显不段码位rtG5CMG3G2G1数值2OH1OHOSH04H02HO1H958HS扫呈示胃理圉(1)显示子程序模块采用动态显
8、示方式,即一位一位地轮流点亮(扫描)6位显示器。在8032RAM存储器中设置六个显示缓冲区单元7EH-79H分别存放6位显示器的显示数据(由 咼到低)。丘干子程序程序眶图(2)键盘输入模块1.实验系统有4X8的键盘结构(见键扫显示原理图)。2.键盘的行线通过电阻接+5V,当键盘上没有键闭合时所有的行线和列线都 断开,行线都为高电平。当键盘上某一键闭合时,则该键所对应的行线和列线都 短路。3. CPU逐行逐列地检查键盘的状态,可判断键盘上有无键闭合。CPU对键盘 上闭合键的键号确定,可根据行线和列线的状态计算求得, 也可以根据行线和列 线的状态查表求得。键号=行首键号+列号。键输入流程图下图是实
9、际的4*8键盘的分布图,每个方框代表一个键,中间的数字代表键 值,即键盘上印的数值,每个键上方的小数字代表键在扫描时的键号。- J-E-立-789A0IO10110il0斗5! .6B-UI 11匸心11117 13C1 77-T!LU7十70H1FED3rJr$r 3.步进电机控制步进电机工作时序波形图根据表格得出控制步进电机正反转的控制字RM: DB 03H,06H,0CH,09H,00H;正转控制字LM: DB 03H,09H,0CH,06H,00H;反转控制字步进电机采用四相四拍运行方式,即AB-BC-CD-DA-AB或A-B-C-D-A;程序 中,控制对应激励一相即对该相置“1”,即
10、置相应P1口为1;通过控制每一 拍的间隔时间用延时子程序实现步进电机转速的控制。如果给步进电机发一个控制脉冲,它就转一步,再发一个脉冲,它会转出一 步。两个脉冲的时间间隔越短,步进电机就转的越快。调整送给步进电机的脉冲 频率,就可以对步进电机转速进行控制。I数53示1虾汕一IY緩伸区(7E的吗N vp-1郦囲1101511木雕显示綴枢(7D同内容计理时算延时IABCDN1100N+10110N+20011N+31001八拍牆沖JirLAAAArLnJUUVL对目PI_n_n_理冃_n n n d目n n nJLTUVLTLTlJlJmJirLrLm_nvrLjvrn_nLrnTJTLTLJ单四
11、拍双四拍四相双四拍脉冲分配表jinjviruvvvuuuvv 11 1应斶口送5沐緩冲区1拥動0吗N见示那瞰知吗讪IV停止丨内存使用分配表步序控制位工作 状态控制 模型P1. 7PL6PL5P1.4P1.3D相PL2C相Pl. 1B相PL0Ata100000011AB03H200000110BC06H300001100CDOCH4 00001001DA09H六.程序清单ORG 0000HAJMP MAINORG 001BHLJMP T1INTORG 0300HMAIN: ACALL SHURUMOV R1,79HMOV R2,7AHMOV R3,7BHMOV R4,7CHMOV R5,#00H
12、MOV A,7DHMOV R6,#4N1: RL ADJNZ R6,N1MOV TMOD,#10HMOV TH1,AMOV TL1,#00HSETB EASETB ET1SETB TR1WAIT: ACALL XSJNB ET1,N5SJMP WAITN5 : AJMP MAINRM: DB 03H,06H,0CH,09H,00H;主程序入口;调用输入子程序,等待确认后返回 ;设置显示缓冲区;读取设定的速度等级;循环左移四位;T1模式1,16位计数;将左移后的速度等级存放到TH1按此装载,则0等级的定时时间最长,转速 最慢,F转速最快;开中断;调用显示子程序,并等待T1中断;若中断关闭则步数已
13、减为零,重新执行主程 序;正转控制字LM: DB 03H,09H,0CH,06H,00HT1INT:PUSH ACCPUSH PSWPUSH DPHPUSH DPLMOV A,7EHJNZ LEFTMOV DPTR,#RMAJMP N2LEFT: MOV DPTR,#LMN2: MOV A,R5MOVC A,A+DPTRMOV P1,AINC DPTRMOV A,R5MOVC A,A+DPTRJNZ NEXT1则清零MOV R5,#00HAJMP N3 NEXT1:INC R5N3: CJNE R1,#00H,M1CJNE R2,#00H,M2CJNE R3,#00H,M3CJNE R4,#0
14、0H,M4CLR ET1CLR EAM4: DEC R4MOV R3,#09HMOV 7CH,R4AJMP M43M3: DEC R3M43: MOV R2,#09HMOV 7BH,R3AJMP M32M2:DEC R2M32: MOV R1,#09HMOV 7AH,R2AJMP M21M1: DEC R1M21: MOV 79H,R1MOV A,7DHMOV R6,#4;反转控制字;T1中断服务子程序,保护现场;读取转向;如果A中的内容不为0,则转向left,转反 转;如果A中的内容为0,则转正转;设置R5作为RM或LM的偏移量;取下一步控制字;如果A不为0,贝孵专NEXT1 R5自增一,否
15、;执行步数减一,并判断是否为0;步数减为0,关闭中断N4: RL ADJNZ R6,N4MOV TH1,AMOV TL1,#00HPOP DPL;恢复现场POP DPHPOP PSWPOP ACCRETISHURU:MOV R0,#7EHMOV R1,#7EHMOV 79H,#00HMOV 7AH,#00HMOV 7BH,#00HMOV 7CH,#00HMOV 7DH,#00HMOV 7EH,#00HMOV R3,#06HSHURU1:ACALL KS1JZ XYACALL XDCJNE A,#16H,XYRETXY: ACALL XS AJMPSHURU1XD: ACALL T12ms;中断
16、返回;置显示缓冲器指针初值;置键入缓冲指针初值;初始化设定值,使数码管“灭”;存放未设置数码管个数;判断是否有键闭合;A=0,表明无键闭合,调显示延时;A不为0,表明有键闭合,进行消抖延时ACALL KS1JNZ N0RETN0: ACALL SAOM1RETSAOM1: MOV R2,#0FEHMOV R4,#0H;R2记列的扫描字;R4记列号SAOM2: MOV DPTR,#0FFDDH将扫描字送列MOV A,R2MOVX DPTR,AINC DPTRMOVX A,DPTRJB ACC.0,LONEMOV A,#00HAJMP QJHLONE:JB ACC.1,LTW0MOV A,#08H
17、AJMP QJH;指向行地址;读取行值;第0行无键按下,转查第二行;第0行有键按下,置0行首键号00h;转向求键号程序LTW0: JB ACC.2,LTHRMOV A,#10H AJMPQJHLTHR: JB ACC.3,NEXTMOV A,#18H AJMPQJHQJH: ADD A,R4 PUSH ACCSAOM3: ACALL KS1 JNZSAOM3 POP ACCCJNE A,#16H,AAAAJMP CHSAAA: ACALL QJZ MOVR1,A DEC R1DJNZ R3,CHS MOVR3,#06H MOVR1,#7EHCHS: RETNEXT: INC R4 MOV A,
18、R2JNB ACC.7,CHS RLAMOV R2,A AJMPSAOM2QJZ: MOV DPTR,#TAB1MOVC A,A+DPTRRET;键号=行首键号+列号;键号进栈保护;等待键释放;释放后返回A中所存的键号;根据键号判断是否确认键;根据键号求键值,返回A中为待显示值;如果按键值超过6位,则重新设置设定值;增加列号值;第8列是否已经扫描 ;如果没扫描,就转下一列扫描;求键值的子程序TAB1:DB 7,4,8,5,9,6,0AH,0BH;按顺序为键号0-31,表中为对应键值DB 1,0,2,0FH,3,0EH,0CH,0DHDB 0,1,0,1,0,1,0,1DB 2,3,2,3,2,
19、3,2,3XS: MOV 30H,#20H; 30H单元存放字位码XS1: MOV DPTR,#TABMOV A,R0MOVC A,A+DPTRMOV DPTR,#0FFDCHMOVX DPTR,AMOV DPTR,#0FFDDHMOV A,30HMOVX DPTR,AACALL T1ms;R0指向7E-79H单元;查表得R0所指单元值的字形码;送字形口地址;送子位码地址;延时1msDEC R0JB ACC.0,XS2RR AMOV 30H,AAJMP XS1XS2: MOV R0,#7EHRET;判断是否已显示最右边的数码管,是则重置指针R0TAB: DB 0C0H,0F9H,0A4H,0B0H,99H
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 湖南食品药品职业学院《食品加工工艺学》2023-2024学年第二学期期末试卷
- JavaWeb应用程序开发教程(任务驱动式)模块9填空题
- 2025年红河州“优师计划”毕业生专项招聘考试笔试试题(含答案)
- 2025年安全员之C证(专职安全员)考试练习试题(含答案)
- 共享办公空间与商务中心行业跨境出海项目商业计划书
- 书报刊印刷废水处理创新创业项目商业计划书
- 个性化艺术投资组合企业制定与实施新质生产力项目商业计划书
- 传统文化夏令营行业深度调研及发展项目商业计划书
- 休闲船艇无钥匙启动技术创新创业项目商业计划书
- 书报刊创意图案设计创新创业项目商业计划书
- 2024年安徽省《辅警招聘考试必刷500题》考试题库及完整答案(必背)
- 2024北京海淀区初一(下)期末道法试题和答案
- 2025年部编版新教材语文一年级下册期末测试题及答案(一)
- 农村调解培训课件
- 2025年标准房产共有份额转让协议书样本
- 机器人柔性控制系统-深度研究
- DBJ-T13-144-2019 福建省建设工程监理文件管理规程
- 手术部感染防控监测
- 【MOOC】文化创意产品设计-湘潭大学 中国大学慕课MOOC答案
- 浙江省工贸企业电气隐患排查技术服务规范
- 安全生产法律法规注册安全工程师考试(初级)试题与参考答案(2024年)一
评论
0/150
提交评论