c语言编写的直流电机调速程序,用pwm调速,不是无极调速,只是调速的级数比较多而已,可以看成是近似于无级调速而已。
#include #include
#define uchar unsigned char #define uint unsigned int
#define Count0 XBYTE[0x1fff] 计数器0
#define Count1 XBYTE[0x3fff] 计数器1
#define Con_word XBYTE[0x7fff] 控制字
#define Con_M P3 #define Pos_M1 0x02 #define Re_M1 0x01 #define Sto_M1 0x03 #define Pos_M2 0x08 #define Re_M2 0x04 #define Sto_M2 0x0c uint time1=10000,time2=10000; 计数器0、计数器1初值
uchar M1_flag=0,M2_flag=0; //电机运行标志位
/************************函数声明***********************/ void delay(uint n); void init_T0(void); uchar M_turn(uchar n); //读正反转设置函数 uchar key_scan(void); //键盘扫描函数
void motor_star(uchar num); //电机启动函数
void motor_stop(uchar num); //电机制动函数
void motor_inc(uchar num); //电机加速函数
void motor_dec(uchar num); //电机减速函数
void key_manage(uchar num); //键值处理函数
/************************主程序*************************/ main() { uchar keynum; init_T0(); while(1)
//8254//8254//8254
//8254
//电动机//电动机//电动机//电动机//电动机//电动机//电动机
//延时函//定时器
/