云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 步进电机角度控制(1)

步进电机角度控制(1)

  • 62 次阅读
  • 3 次下载
  • 2025/5/6 11:40:59

课 程 设 计

课程名称 微型计算机控制技术 题目名称 步进电机角度控制(1) 学生学院 自动化学院 专业班级 自动化(4)班 学 号 学生姓名 指导教师

2012 年 6 月

26 日

一、 系统设计说明

1. 硬件设计

本次设计要求通过键盘按键实现对步进电机的转动次数和每次转动的角度的控制,并通

过数码管显示出来。

本方案中通过按键对步进电机的转动角度进行设定,给各个按键设置不同的键值。按下按键时,给8255A一个信号设定步进电机下一步的动作。8086通过8255A的数据总线读取该信号,并作出反应,通过给8255A一系列的指令驱动其工作,从而驱动步进电机和LED显示器

2. 软件设计

显示模块设计说明:

为使显示程序具有通用性和灵活性,在8086内设置一个显示缓冲区,显示缓冲区的每个单元与LED的各位一一对应。当主程序需要显示,只需将要显示的字符送入显示缓冲区,然后调用显示子程序。显示子程序的任务则是逐一取出显示缓冲区中的字符、查字形表转换成相应字型码,然后通过字段口输出显示。显示模块是用四位七段数码管来显示转动次数和每次转动的角度。给八个按键设置不同的子程序,当按下按键时,根据事先设定好的各个按键对应的转动角度的值输出到数码管进行显示。

步进电机模块设计说明:

在此设计中,采用的是八拍步进电机。步进电机控制程序就是完成环形分配器的任务,从而控制电动机的转动,以达到控制转动角度和位移的目的。控制模型可以以立即数的形式一一给出。对于步进电机模块的程序设计采用循环程序设计方法。先把转动的次数和角度的控制模型存放在内存单元中,然后再逐一从单元中取出控制模块并输出。首先启动,按下按键选择步进电机的角度,然后读入转动的控制模型驱动步进电机转动。

二、 程序设计流程图

开始 是否按键 实现键的功能 数码显示 结束

三、 心得体会

这是大学最后一次的单片机课程设计了,这一次我抽到的是86,用C语言去设计的。从中我发现相对汇编语言,C语言有很多优点。经过不断地去编程加载,我复习了C语言编程,同时懂得如何在单片机上实现C语言编程。数码管,键盘和异步电动机,是三个不一样的模块,从实现的过程中,巩固了很多知识。最重要的是,发现问题,去寻找问题的缘由,从而解决。

四、 主要参考文献

《计算机控制技术实验指导书》,李传芳等编。

《51单片机C语言教程》,郭天祥等编。电子工业出版社。 《微型计算机原理及应用》,何小敏等编。机械工业出版社。

任务一:

编程控制步进电机,顺时针方向行走180度(角度显示在七段LED上)3秒后行走45度(显示角度)3秒后行走90度(显示角度)3秒后再次进入循环。

程序代码:

STACK SEGMENT STACK DW 256 DUP(?)

STACK ENDS DATA SEGMENT TABLE1 DB 10H,30H,20H,60H,40H,0C0H,80H,90H DATA ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DATA START:MOV AX,DATA MOV DS,AX MAIN: MOV AL,81H, OUT 63H,AL MOV AH,30H MOV BX,0FF00H MOV DX,01H CALL DISP A0: MOV CX,0008H

MOV SI,OFFSET TABLE1 A1: MOV AL,[SI] OUT 60H,AL CALL DALLY INC SI DEC AH JNZ L1

CALL DALL CMP BX,0FFH JNZ A

MOV AH,30H XOR BX,0FFFFH MOV DX,01H JMP L1

A: CMP BX,OFFOOH JNZ A8

MOV AH,0CH XOR BX,0FF00H MOV DX,02H CALL DISP JMP L1

A8: MOV AH,18H XOR BX,0FFH MOV DX,03H CALL DISP L1: LOOP A1 JMP A0

DISP: CMP DX,01H

JNZ D1

MOV AL,0EFH OUT 62H,AL MOV AL,0FCH OUT 61H,AL CALL TIME MOV AL,0DFH OUT 62H,AL MOV AL,0FEH

OUT 61H,AL CALL TIME MOV AL,0BFH OUT 62H,AL MOV AL,60H OUT 61H,AL CALL TIME RET

D1: CMP DX,02H JNZ D2

MOV AL,0EFH OUT 62H,AL MOV AL,0B6H OUT 61H,AL CALL TIME MOV AL,0DFH OUT 62H,AL MOV AL,66H OUT 61H,AL CALL TIME RET

D2: MOV AL,0FEH

OUT 62H,AL MOV AL,0FCH OUT 61H,AL CALL TIME MOV AL,0DFH OUT 62H,AL MOV AL,0F6H OUT 61H,AL CALL TIME RET

TIME: PUSH AX PUSH CX

TIME1: MOV AX,0010H

TIME2 : DEC AX JNZ TIME2 LOOP TIME1 POP CX POP AX RET

DALLY: PUSH CX

MOV CX,0100H A4: PUSH AX POP AX LOOP A4 POP CX RET

DALLY1: PUSH AX PUSH CX

MOV CX,0002H T1: MOV AX,0010H T2: DEC AX JNZ T2 LOOP T1 POP CX POP AX RET

DALL: PUSH CX PUSH AX

MOV CX,0300H A6: MOV AX,056CH A7: DEC AX CALL DISP JNZ A7 LOOP A6 POP AX POP CX RET CODE ENDS

END START

任务二:

完成A/D转换实验并把转换结果显示在七段LED上显示出来。

程序代码:

STACK SEGMENT STACK DW 64 DUP(?)

搜索更多关于: 步进电机角度控制(1) 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

课 程 设 计 课程名称 微型计算机控制技术 题目名称 步进电机角度控制(1) 学生学院 自动化学院 专业班级 自动化(4)班 学 号 学生姓名 指导教师 2012 年 6 月 26 日 一、 系统设计说明 1. 硬件设计 本次设计要求通过键盘按键实现对步进电机的转动次数和每次转动的角度的控制,并通过数码管显示出来。 本方案中通过按键对步进电机的转动角度进行设定,给各个按键设置不同的键值。按下

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com