实用文档
//T0
产生双路
PWM
信号,
L298N
为直流电机调速,接
L298N
时相应的管脚上最好接上
10K
的上拉电阻。
/*
晶振采用
12M,
产生的
PWM
的频率约为
100Hz */
#include
#include
#define uchar unsigned char
#define uint unsigned int
sbit en1=P3^4; /* L298
的
Enable A */
sbit en2=P3^5; /* L298
的
Enable B */
sbit s1=P1^0; /* L298
的
Input 1 */
sbit s2=P1^1; /* L298
的
Input 2 */
sbit s3=P1^3; /* L298
的
Input 3 */
sbit s4=P1^2; /* L298
的
Input 4 */
sbit R=P2^0;
sbit C=P2^1;
sbit L=P2^2;
sbit key=P1^4;
uchar t=0; /*
中断计数器
*/
uchar m1=0; /*
电机
1
速度值
*/
uchar m2=0; /*
电机
2
速度值
*/
uchar tmp1,tmp2; /*
电机当前速度值
*/
/*
电机控制函数
index-
电机号
(1,2); speed-
电机速度
(0-100) */
void motor(uchar index, char speed)
{
if(speed<=100)
{
if(index==1) /*
电机
1
的处理
*/
{
m1=abs(speed); /*
取速度的绝对值
*/
s1=1;
s2=0;
}
if(index==2) /*
电机
2
的处理
*/
{
m2=abs(speed); /*
电机
2
的速度控制
*/
s3=1;
s4=0;
}
}
}
void Back(void)
{
版权声明:本文为weixin_39951112原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。