资源简介
步进电机大打包,介绍步进电机的原理,调试方法。。。。。

代码片段和文件信息
#include
#define uint unsigned int;
#define uchar unsigned char
//以下定义LED片选信号
sbit LED_1 = P3^0;
sbit LED_2 = P3^1;
sbit LED_3 = P1^6;
sbit LED_4 = P1^7;
//以下定义M1驱动信号
sbit M1_1 = P2^0;
sbit M1_2 = P2^1;
sbit M1_3 = P2^2;
sbit M1_4 = P2^3;
//以下定义M2驱动信号
sbit M2_1 = P2^4;
sbit M2_2 = P2^5;
sbit M2_3 = P2^6;
sbit M2_4 = P2^7;
//以下定义M3驱动信号
sbit M3_1 = P3^4;
sbit M3_2 = P3^5;
sbit M3_3 = P3^6;
sbit M3_4 = P3^7;
//定义输入按键的序号
sbit K_1 = P1^0;
sbit K_2 = P1^1;
sbit K_3 = P1^2;
sbit K_4 = P1^3;
sbit K_5 = P1^4;
sbit K_6 = P1^5;
//以下定义共阴极LED的显示代码,0~9
uchar code tab[10] =
{ 0x3f0x060x5b0x4f0x660x6d0x7d0x070x7f0x6f };
//以下定义电机正转代码
uchar code zheng[9] =
{ 0x000x030x020x060x040x0c0x080x090x01 };
//以下定义电机反转代码
uchar code fan[9] =
{ 0x010x090x080x0c0x040x060x020x030x00 };
//下面定义全局变量
uchar m1_zheng = 0;//主轴正转,用1表示停止用0表示
uchar m1_zheng_val = 0;//正转的步进
uchar m1_fan = 0;//主轴反转用2表示,停止用0表示
uchar m1_fan_val = 0;//反转步进
uchar m2_mode = 0;//m2状态 X轴增加时用0,递减时用1
uchar m2_zheng_val = 0;//m2 X轴递增时的位置
uchar m2_fan_val = 0;//m2 X轴递减时的位置
uchar m2_pre_mode = 0;//存储m2前一次的状态,递增为0,递减为1
uchar m3_mode = 0;//m3状态 Y轴增加时用0,递减时用1
uchar m3_zheng_val = 0;//m3 Y轴递增时的位置
uchar m3_fan_val = 0;//m3 Y轴递减时的位置
uchar m3_pre_mode = 0;//存储m3前一次的状态,递增为0,递减为1
uchar inc_dec = 0;//递增为0,递减为1
uchar choose_motor = 0;//电机驱动选择,1为驱动M1,2为驱动M2,3为驱动M3
//下面是 函数声明
extern void delay(uchar time);//延时程序
void init_cpu(void);//初始化51单片机
void led_show(void);//LED显示程序
void int0_isr();//中断处理程序
void motor_driver();//电机控制程序
void key_1();//KEY_1处理程序,既主轴正转程序
void key_2();//主轴反转程序
void key_3();//M2处理程序,既X轴电机
void key_4();//M3处理程序,既Y轴电机
void key_5();//设置X轴或Y轴位置递增或递减程序
void key_6();//未定义,留待功能扩展
//主函数开始
void main()
{
init_cpu();//初始化单片机
while(1)
{
led_show(); //显示当前电机状态
}
}
void init_cpu()
{
EA = 0;//关所有中断
IT0 = 0;//下降沿触发
EX0 = 1;//允许INT0中断
EA = 1;//开所有中断
}
void led_show()
{
uchar i;
LED_1 = 0;//显示第一个LED,既M1的状态
if(m1_zheng == 1) //如果是正传,i = 1
i = 1;
else if (m1_fan == 2)//如果是反转,i = 2
i = 2;
else
i = 0; //如果是停止i = 0
P0 = tab[i];
delay(20);//延时20ms
LED_1 = 1;
LED_2 = 0;//显示第二个LED,既M2的状态
i = m2_mode;
P0 = tab[i];
delay(20);//延时20ms
LED_2 = 1;
LED_3 = 0;//显示第三个LED,既M3的状态
i = m3_mode;
P0 = tab[i];
delay(20);
LED_3 = 1;
}
void int0_isr() interrupt 0 using 0
{ EX0 = 0;
K_1 = 1;//读数前先置1
if (K_1 == 0) key_1();//key_1按下,则调用key_1()
K_2 = 1;//读数前先置1
if (K_2 == 0) key_2();//key_2按下,则调用key_2()
K_3 = 1;//读数前先置1
if (K_3 == 0) key_3();//key_3按下,则调用key_3()
K_4 = 1;//读数前先置1
if (K_4 == 0) key_4();//key_4按下,则调用key_4()
K_1 = 1;//读数前先置1
if (K_5 == 0) key_5();//key_5按下,则调用key_5()
K_6 = 1;//读数前先置1
if (K_6 == 0) key_6();//key_6按下,则调用key_6()
EX0 = 1;
}
void key_1()
{
m1_zheng = 1;//表示主轴正转
m1_fan = 0;//清除反转标志
while( K
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 65769 2008-10-08 22:59 步进电机\19227_1_0802013116.gif
文件 92234 2008-10-08 22:39 步进电机\2008-10-08_223909.jpg
文件 270336 2008-11-10 14:42 步进电机\51单片机控制四相步进电机(详细).doc
文件 87040 2008-08-30 12:57 步进电机\51单片机驱动步进电机电路及程序.doc
文件 10726 2008-10-08 22:55 步进电机\armok01149983.GIF
文件 12439 2008-10-08 22:59 步进电机\image009.jpg
文件 12917 2008-10-08 22:59 步进电机\image013.jpg
文件 2363 2008-10-08 22:59 步进电机\image015.gif
文件 131969 2008-04-03 23:52 步进电机\一种步进电机驱动控制方案的实现.pdf
文件 71168 2008-07-07 20:46 步进电机\典型驱动原理图.doc
文件 146753 2008-04-03 23:50 步进电机\单片机在步进电机驱动控制中的应用.pdf
文件 130395 2008-06-13 14:49 步进电机\单片机控制步进电机.pdf
文件 143872 2008-08-23 15:47 步进电机\单片机控制步进电机驱动器工作原理.doc
文件 39936 2008-10-01 23:07 步进电机\四相 .doc
文件 108433 2008-04-03 23:50 步进电机\基于功率放大器的步进电机驱动控制.pdf
文件 131072 2008-07-07 23:32 步进电机\基于单片机的步进电机开环控制系统设计.doc
文件 232193 2008-08-20 15:58 步进电机\基于的两相步进电机驱动器.pdf
文件 284870 2008-07-07 20:45 步进电机\步进电动机高精度细分方法及其控制系统.PDF
文件 29184 2008-07-07 23:04 步进电机\步进电机参考程序框架.doc
文件 6027846 2008-08-25 11:24 步进电机\步进电机及其驱动控制系统.pdf
文件 91648 2008-07-07 20:45 步进电机\步进电机基本原理.doc
文件 6631 2008-08-30 12:51 步进电机\步进电机常见问题.txt
文件 23040 2008-07-08 12:33 步进电机\步进电机的选用计算方法.doc
文件 257921 2008-07-10 16:10 步进电机\步进电机程序控制.pdf
文件 109614 2008-04-03 23:50 步进电机\步进电机驱动器的设计与实现.pdf
文件 187588 2009-09-23 23:02 步进电机\仪表步进马达驱动芯片VID66-08.pdf
文件 898426 2009-08-21 10:20 步进电机\TA8435H1.pdf
文件 576342 2009-08-21 10:21 步进电机\TA8435H+Datasheet.pdf
文件 136611 2009-08-21 10:20 步进电机\TA8435H+Testing+Board.SCHDOC
文件 927700 2009-07-14 10:28 步进电机\电机\ta8435h中文资料.pdf
............此处省略46个文件信息
相关资源
- 基于STM32RCT6的步进电机驱动程序
- 步进电机课程设计(个人设计)
- FPGA在步进电机驱动上的应用实例及代
- 步进电机protues仿真
- 单片机控制的步进电机正反转和加速
- 6相12拍步进电机控制器
- LabVIEW步进电机控制.vi
- 单片机控制步进电机PMW的驱动与放大
- 单片机驱动4相步进电机proteus仿真
- 循迹小车51程序(超声波 颜色识别 舵
- Proteus仿真的单片机控制步进电机及液
- 步进电机控制文件 s型、梯形加减速算
- x-y数控工作台
- 非常详细步进电机控制原理图,和完
- stm32步进电机基本旋转控制
- 51单片机控制步进电机软硬件实现
- 鸣志 步进电机选型手册
- STM32F407. 基于PID速度环的步进电机速度
- STM32F407 基于232或485的57&42;步进电机旋
- stm32f4控制步进电机程序
- 倒立摆调试,使用步进电机,完全成
- STM32F1指南者步进电机驱动
- 用stm32精确控制步进电机角度的程序
- 五相步进电机.ppt
- STM32F103的4轴步进电机加减速控制工程
- 28BYJ-48步进电机(STM32F1)
- 步进电机pid控制
- 步进电机控制机械臂源码 代码
- 51单片机遥控器控制步进电机程序+论
- 滚珠丝杠、步进电机的扭矩值及轴承
评论
共有 条评论