- 1、本文档共7页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
单片机实训实验报告_2
课设实习报告
题目: 步进电机
姓名: 杨帅
班级:
专业: 机电一体化
学号: 23号
目的
设计一个可以用单片机控制的步进电机正反转。
二、内容
1、单片机采用AT89C51。
2、步进电机。
3、要求电路设计合理,系统功能可靠、稳定。
功能介绍
按下开始按钮后,步进电机正转后自动反转。
四、步进电机的工作原理
步进电机是机电控制中一种常用的执行机构,它的用途是将电脉冲转化为角位移,它的的驱动电路根据控制信号工作,控制信号由单片机产生。当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度,控制换相顺序,即通电控制脉冲必须严格按照一定顺序分别控制各相的通断。通过控制脉冲个数即可以控制角位移量,从而达到准确定位的目的。控制步进电机的转向,即给定工作方式正序换相通电,步进电机正转,若按反序通电换相,则电机就反转。控制步进电机的速度,即给步进电机发一个控制脉冲,它就转一步,再发一个脉冲,它会再转一步,两个脉冲的间隔越短,步进电机就转得越快。同时通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。
五、硬件结构图
六、硬件电路图
七、程序流程图
八、程序编程
#include at89x51.h
#define TIME0H 0xfc
#define TIME0L 0xff //定时器0溢出时间:1ms
//*************************************************************************************************
//**
//*******************************全局变量**********************************
//**
//*************************************************************************************************unsigned char uc_StepSelect=0; //励磁电流选择序号。
unsigned int ui_ChangeCount=0; //改变励磁电流,定时器计数。
unsigned char uca_MotorStep[]={0x03,0x02,0x06,0x04,0x0C,0x08,0x09,0x01,0x03,0x01,0x09,0x08,0x0c,0x04,0x06,0x02,0x03};
//励磁电流数组。
//*************************************************************************************************
//**
//*********************************主函数*******************************
//**
//*************************************************************************************************
void main()
{
TMOD=0x01;
TH0=TIME0H;
TL0=TIME0L;
TR0=1;
ET0=1;
EA=1;
while(1);
}
//*************************************************************************************************
//**
//*******************************定时器0,用于电机励磁*******************
//**
//*************************************************************************************************
void vTimer0() interrupt 1
{
if(ui_ChangeCount==500) //可通过此句改变速度。
{
P1=uca_MotorStep[uc_StepSelect];
if(uc_StepSelect16)
uc_StepSelect++;
else
uc_StepSelect=0;
ui_ChangeCount=0;
}
else
ui_ChangeCount++;
TH0=TIME0H;
TL
您可能关注的文档
- 北京市第四十四中学2013-2014学年度第一学期期中测试高三政治试卷最终定稿.doc
- 北京市装饰装修合同范本(最新).docx
- 北京市西城区2008-2009学年第二学期期末测试八年级英语试卷(B卷).doc
- 北京市统计六五普法测试题及答案.doc
- 北京市西城区2009-2010学年第二学期期末测试八年级英语试卷(B卷)及答案.doc
- 北京市统一装修(公装)合同范本.doc
- 北京市龙文教育人教版英语八年级上册Unit12知识总结与练习.doc
- 北京市重点产业发展现状及展望20100823格式修改版.doc
- 北京师范大学全日制教育硕士考研复试分数线整理.doc
- 北京建设学习之都高层次专家研讨会综述.doc
最近下载
- ACD奥的斯内部资料GECB及GDCB服务器使用.pdf
- 初中七年级地理上册期末试卷(含答案).pdf VIP
- 《工程建设标准强制性条文 电力工程部分 2016版》.docx
- 大学毕业论文-基于pid算法的锅炉恒温控制系统正文.doc VIP
- 南华大学《自动控制原理B》2023-2024学年第一学期期末试卷.doc VIP
- 南华大学《自动控制原理B》2022-2023学年第一学期期末试卷.doc VIP
- 南华大学船山学院《自动控制原理》2021-2022学年第一学期期末试卷.doc VIP
- 金融学(中央财经)中国大学MOOC慕课 章节测验期末考试答案.docx
- 12.2 人生价值贵在奉献(教学课件)-【中职专用】中职思想政治《哲学与人生》同步教学示范课课件+教案(高教版2023·基础模块).pptx VIP
- 2024华医网继续教育心血管病预防与康复题库答案.docx VIP
文档评论(0)