- 1、本文档共9页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
.
.
.
.
.
.
嵌入式原理考查项目报告
题 目 通过串口控制电机转速
系 (部) 电子与信息工程系
班 级 12级电本(1)班
姓 名 吴赵崧林
学 号 2012020044
指导教师 邹圣雷
2014年12月
.
.
通过串口控制电机转速
吴赵崧林
1、项目要求:
串口发送 SPEED0,电机停止;
串口发送 SPEED1,电机低速运转;
串口发送 SPEED2,电机中等速度运转;
串口发送 SPEED3,电机高速运转;(通过串口接收的数据不同,发出不同的PWM波)
2、原理和涉及知识点(寄存器)
(1)寄存器是cpu的一部分,是计算机中速度最快的存储器,分为 通用寄存器、专用寄存器、段寄存器、其他寄存器,每个寄存器存储一种类型的变量,各司其职,这样说来,又分为累加器、源变址寄存器、基址寄存器、计数寄存器、状态寄存器等等寄存器变量,顾名思义,就是存贮在寄存器里的变量。
(2)步进电机控制的基本原理:?
步进电机的基本控制包括转向控制和速度控制2个方面。从结构上看,步进电机分为三相、四相、五相等类型,常用的则以三相为主。三相步进电机的工作方式有三相单三拍、三相双三拍和三相六拍3种,下面具体加以阐述。?
a换相顺序的控制?
步进电机通电换相这个过程称为脉冲分配。例如,三相步进电机在单三拍的工作方式下,其各相的通电顺序为A-B-C-A,通电控制脉冲必须按照这一顺序分别控制A、B、C相得通断。三相双三拍的通电顺序为AB-BC-CA-AB,三相六拍的通电顺序为A-AB-B-BC-C-CA-A?
b步进电机的转向控制?
如果给定工作方式正序换相通电,步进电机正转。若步进电机励磁方式为三相六拍,即A-AB-B-BC-C-CA-A。如果按反序通电换相,即A-AC-C-CB-B-BA-A,则电机就反转。其它方式的情况类似。?
c步进电机的速度控制?
如果给步进电机发一个控制脉冲,它就转一步,再发一个脉冲,它会再转一步。2个脉冲的间隔越短,步进电机就转得越快。调整输送给步进电机的脉冲频率,就可以对步进电机进行调速。
3、程序流程图
进行s3c2410初始化
ARMTargetInit()
进行电机初始化
init_MotorPort();
调用串口函数
usb();
等待
在串口输入数据
并接收数据存入table[8]中
将table[8]
清零
将table[8]
里面的字符串进行 否
对比
是
返回x的值
选择switch语句
来控制电机的转动
(例x=0,则电机停止)
结束
4、程序关键代码及注释
主函数代码:
int main(void)
{
ARMTargetInit(); //开发版初始化
init_MotorPort(); //电机初始化
for(;;) //进入死循环
{
usb(); //调用串口函数,并将发送的数据显示出来
switch(x)
文档评论(0)