江苏大学单片机课程设计.docx
- 文档编号:24240261
- 上传时间:2023-05-25
- 格式:DOCX
- 页数:13
- 大小:133.08KB
江苏大学单片机课程设计.docx
《江苏大学单片机课程设计.docx》由会员分享,可在线阅读,更多相关《江苏大学单片机课程设计.docx(13页珍藏版)》请在冰豆网上搜索。
江苏大学单片机课程设计
江苏大学
单片机课程设计
姓名:
学号
班级:
电气
一、设计任务、原理、步骤
任务:
从键盘上输入正、反转命令,转速参数(16级)和转动步数显示在LED显示器上。
显示器上显示:
第一位为0表示正转,为1表示反转;第二位0~F为转速等级,第三到第六位设定步数。
单片机依显示器上显示的正、反转命令,转速级数和转动步数进行相应动作,转动步数减为零时停止转动。
原理:
如图,当有一相绕组被通电激励时,磁通从正相齿,经过软铁芯的转子,并以最短路径流向负相齿,为使磁通路径最短,在磁场力的作用下,转子被迫移动,使最近的一对齿与被激励的一相对准。
那么,通过对它每相线圈中电流的顺序切换可使电机作步进式旋转。
相数:
产生不同对极N、S磁场的激磁线圈对数。
拍数:
指电机转过一个齿距角所需脉冲数,以四相电机为例,有四相四拍运行方式即AB-BC-CD-DA-AB或A-B-C-D-A,四相八拍运行方式即A-AB-B-BC-C-CD-D-DA-A.
步距角:
对应一个脉冲信号电机转子转过的角位移.步距角=360/(转子齿数*拍数)
系统中使用20BY-0型号步进电机,它使用+5V直流电源,步距角为18度,电机线圈由A、B、C、D四相组成。
步进电机驱动原理是通过对它每相线圈中的电流的顺序切换来使电机作步进式旋转,驱动电路由脉冲信号来控制,所以调节脉冲信号的频率便可改变步进电机的转速。
BA、BB、BC、BD即为脉冲信号输入插孔,驱动器输出A、B、C、D接步进电机。
步骤:
先设计键盘显示程序,根据书本的键盘扫描程序与数码管显示程序,把二者整合到一起,成功后,再做驱动电机程序,在键盘显示程序的基础上,进行扩张,实现电机的正反转与调速控制。
二、硬件原理接线图
键盘显示原理图
连线图
⏹步进电机模块插头接实验系统J3插座,(顺接)
⏹把P1.0~P1.3分别接到BA~BD插孔。
三、流程图
按键流程图
数码管显示流程图
电机控制程序流程图
四、程序清单
ORG0000H
AJMPMAIN
ORG0050H
MAIN:
MOVSP,#40H
MOV79H,#00H
MOV7AH,#00H
MOV7BH,#00H
MOV7CH,#00H
MOV7DH,#00H
MOV7EH,#00H
MOVR1,#7EH
MAIN1:
ACALLKEY1
MOV@R1,A
CJNER1,#78H,KS
CJNEA,#16H,AGAIN
LJMPRUN
AGAIN:
LJMPMAIN
KS:
DECR1
LJMPMAIN1
RUN:
MOVA,7EH
JZZHEN
JNZFAN
SJMP$
ZHEN:
MOVP1,#03H
ACALLDELAY
MOVP1,#06H
ACALLDELAY
MOVP1,#0CH
ACALLDELAY
MOVP1,#09H
ACALLDELAY
ANL79H,#0FH
ANL7AH,#0FH
ANL7BH,#0FH
ANL7CH,#0FH
LCALLDIR
LCALLDIR
MOVR5,79H
CJNER5,#0,Z1
DEC79H
MOVR5,7AH
CJNER5,#0,Z2
DEC7AH
MOVR5,7BH
CJNER5,#0,Z3
DEC7BH
MOVR5,7CH
CJNER5,#0,Z4
LJMPMAIN
Z1:
DEC79H
LJMPZHEN
Z2:
DEC7AH
LJMPZHEN
Z3:
DEC7BH
LJMPZHEN
Z4:
DEC7CH
LJMPZHEN
FAN:
MOVP1,#09H
ACALLDELAY
MOVP1,#0CH
ACALLDELAY
MOVP1,#06H
ACALLDELAY
MOVP1,#03H
ACALLDELAY
ANL79H,#0FH
ANL7AH,#0FH
ANL7BH,#0FH
ANL7CH,#0FH
LCALLDIR
LCALLDIR
MOVR5,79H
CJNER5,#0,F1
DEC79H
MOVR5,7AH
CJNER5,#0,F2
DEC7AH
MOVR5,7BH
CJNER5,#0,F3
DEC7BH
MOVR5,7CH
CJNER5,#0,F4
LJMPMAIN
F1:
DEC79H
LJMPFAN
F2:
DEC7AH
LJMPFAN
F3:
DEC7BH
LJMPFAN
F4:
DEC7CH
LJMPFAN
DELAY:
MOVR1,7DH
DELAY10:
ACALLDIR
DELAY13:
DJNZR1,DELAY10
RET
DIR:
MOVR0,#79H
MOVR3,#01H
LD0:
MOVDPTR,#SEG
MOVA,@R0
MOVCA,@A+DPTR
CPLA
MOVDPTR,#0FFDCH
MOVX@DPTR,A
MOVA,R3
MOVDPTR,#0FFDDH
MOVX@DPTR,A
ACALLDL1
INCR0
MOVA,R3
JBACC.5,LD1
RLA
MOVR3,A
AJMPLD0
LD1:
RET
SEG:
DB3FH,06H,5BH,4FH,66H,6DH
DB7DH,07H,7FH,6FH,77H,7CH
DB39H,5EH,79H,71H,00H,73H
DL1:
MOVR7,#02H
DL:
MOVR6,#0FFH
DLA:
DJNZR6,DLA
DJNZR7,DL
RET
KEY1:
ACALLKS1
JNZLK1
ACALLDIR
AJMPKEY1
LK1:
ACALLDIR
ACALLT12ms
ACALLKS1
JNZLK2
AJMPKEY1
LK2:
MOVR2,#0FEH
MOVR4,#00H
LK4:
MOVDPTR,#0FFDDH
MOVA,R2
MOVX@DPTR,A
INCDPTR
MOVXA,@DPTR
JBACC.0,LONE
MOVA,#00H
AJMPLKP
LONE:
JBACC.1,LTOW
MOVA,#08H
AJMPLKP
LTOW:
JBACC.2,LTHR
MOVA,#10H
AJMPLKP
LTHR:
JBACC.3,NEXT
MOVA,#18H
LKP:
ADDA,R4
MOVDPTR,#TAB
MOVCA,@A+DPTR
PUSHACC
LK3:
ACALLDIR
ACALLKS1
JNZLK3
POPACC
RET
NEXT:
INCR4
MOVA,R2
JNBACC.7,KND
RLA
MOVR2,A
AJMPLK4
KND:
AJMPKEY1
KS1:
MOVDPTR,#0FFDDH
MOVA,#00H
MOVX@DPTR,A
INCDPTR
MOVXA,@DPTR
CPLA
ANLA,#0FH
RET
T12ms:
MOVR7,#18H
TM:
MOVR6,#0FFH
TM6:
DJNZR6,TM6
DJNZR7,TM
RET
TAB:
DB07H,04H,08H,05H,09H,06H,0AH,0BH,01H,00H,02H,0FH,03H,0EH
DB0CH,0DH,00H,00H,00H,00H,00H,00H,16H
END
五、设计心得体会
为期一周的单片机课程设计,我有很多心得体会,有关于单片机方面的,更多的是人与人之间的。
此次单片机课程设计意义非凡。
一开始,我们组出现了很多问题,例如,如何把键盘与显示程序整合到一起,但是在老师的悉心指导和同学的帮助下,各种问题都被解决了。
此次课程设计不仅增强了同学们的动手实践能力,而且更加丰富了同学们的理论知识,熟悉了汇编语言的编程方法。
除此之外,我还学到了如何与人合作,与人交流。
总而言之,单片机课程设计对于我们有很大的帮助,我们从中受益匪浅
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 江苏 大学 单片机 课程设计
![提示](https://static.bdocx.com/images/bang_tan.gif)