找回密码
 注册会员
更新自动建库工具PCB Footprint Expert 2024.04 Pro / Library Expert 破解版

请老师们帮我看看这个程序

[复制链接]
admin 发表于 2012-9-2 12:10:07 | 显示全部楼层 |阅读模式

本文包含原理图、PCB、源代码、封装库、中英文PDF等资源

您需要 登录 才可以下载或查看,没有账号?注册会员

×
#include <reg52.h>
unsigned char code F_Rotation[4]={0xf1,0xf2,0xf4,0xf8}; //正转表格
unsigned char code B_Rotation[4]={0xf8,0xf4,0xf2,0xf1}; //反转表格
/******************************************************************/
/* 延时函数 */
/******************************************************************/
void Delay(unsigned int i)//延时
{
while(--i);
}
/******************************************************************/
/* 主函数 */
/******************************************************************/
void Init_Timer0(void)
{
TMOD |= 0x01; //使用模式1,16位定时器,使用"|"符号可以在使用多个定时器时不受影响
TH0=0x00; //给定初值,这里使用定时器最大值从0开始计数一直到65535溢出
TL0=0x00;
EA=1; //总中断打开
ET0=1; //定时器中断打开
TR0=1; //定时器开关打开
}
main()
{
unsigned char i,k,l,m;
while(1)
{
P0=0x71;//显示 F 标示正转
for(k=0;k<4;k++) //4相
{
P1=F_Rotation[i]; //输出对应的相 可以自行换成反转表格
Delay(1000); //改变这个参数可以调整电机转速 ,数字越小,转速越大
}
for(l=0;l<3000;l++)
for(m=0;m<3000;m++)
Init_Timer0();

}
}
void Timer0_isr(void) interrupt 1 using 1
{
TH0=0x00; //重新赋值
TL0=0x00;
P1=0;
}

我想实现步进电机工作数分钟后停止数分钟再继续工作如此往复,现在语法上没错可载入程序后电机不转
*滑块验证:
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

QQ|手机版|MCU资讯论坛 ( 京ICP备18035221号-2 )|网站地图

GMT+8, 2024-11-24 22:51 , Processed in 0.054190 second(s), 10 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表