首页>问题汇总>创新性实验入门篇-赵敏杰
赵敏杰-创新性实验入门篇

如何通过AVR单片控制步进电机?由电路图可知,只需要控制单片机的PA0~PA3口的高低电平即可,其理论知识参考课本:冯清秀,邓星钟等主编的《电机传动控制》,华中科技大学出版社出版,已经给大家拍照插入到此文档(点击参看PDF)。文档后面有我自己编写的电机实验小程序,供大家参考,程序是用ICCAVR编写的,使用方法见杨绿老师分享的视频。 另一个软件CVAVR的使用方法闫磊主编的《手把手教你学会AVR单片机》上有介绍,见> PDF:CVAVR编程应用。 大家学会使用CVAVR可以直接打开群里面提供的测试程序test文件(在老师提供开发板资料\AVR-001\测试程序\Test文件目录下),里面有键盘的,显示屏的实验程序。 控制键盘、电机、显示屏等都是通过给单片机不同端口高低电平,大家在编程之前一定要看懂电路图。




再次提醒理论知识的,参考教材部分见此PDF。

 

电机实验程序:

#include <iom64v.h>
#include <macros.h>
#define uchar unsigned char
#define uint unsigned int
void delay(uint ms)//延时程序
{
uint i,j;
for(i=0;i<ms;i++)
{
for(j=0;j<1141;j++);
}
}

void main()
{
uint m,p;
for(p=0;p<=200;p++)
{
DDRA=0XFF;//设置A口输出
PORTA=0X00;//A置0,低电平

DDRA=0XFF;//设置A口输出
PORTA=0X0D;//A1为低电平
delay(10);

DDRA=0XFF;
PORTA=0X0E;//A0为低电平
delay(10);

DDRA=0XFF;
PORTA=0X07;//A3为低电平
delay(10);

DDRA=0XFF;
PORTA=0X0B;//A2为低电平
delay(10);
}
for(m=1;m<=500;m++)
{
delay(500);p=0;
}
}


Copyright © 2019 作者:张泽zzhang1@gzu.edu.cn. 大学教师. 网站备案号:黔ICP备18012493号