📄 serial_initial.c
字号:
#include "p89v51rx2.h"
#define SPEET_ 60
void serial_initial(void)
{
SCON = 0X52;
TMOD = 0X20;
TH1 = 0XF3;
TR1 = 1; //PRINTE函数必须
}
// for(n=0;n<60;n++);
void tim0_initial(void)
{
serial_initial();
TMOD |= 0X02;
TL0=TH0=255-SPEET_;//初始化时间常数 大约每x us中断一次
EA = 1; //总中断容许
ET0= 1; //定时器/计数器0容许中断
TR0=0; //启动定时器/计数器0工作
}
sbit LS = P2^1; //限位控制
#define _LS_ 0x0200
sbit Pluse = P2^4; //电机脉冲
sbit Direction = P2^5; //电机方向
//extern unsigned char _D;
extern unsigned long old_Step, _Step;
void tim0_int (void) interrupt 1
{
if(_Step>old_Step)
{
if(!Pluse ) old_Step++;
Pluse = !Pluse;//电机脉冲
}
else if(_Step<old_Step)
{
if(LS)//接近开关到位,不可正转。
{
_Step=0;
old_Step=0;
}
else
{
if(!Pluse )old_Step--;
Pluse = !Pluse;//电机脉冲
}
}
else TR0=0; //启动定时器/计数器0不工作
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -