51单片机小车直行程序
时间: 2023-12-23 21:04:37 浏览: 76
以下是一个简单的51单片机小车直行程序,可供参考:
```c
#include <reg51.h>
sbit en_A = P1^0; //定义左轮电机使能引脚
sbit in1_A = P1^1; //定义左轮电机控制引脚1
sbit in2_A = P1^2; //定义左轮电机控制引脚2
sbit en_B = P1^3; //定义右轮电机使能引脚
sbit in1_B = P1^4; //定义右轮电机控制引脚1
sbit in2_B = P1^5; //定义右轮电机控制引脚2
void delay(unsigned int xms) //延时函数
{
unsigned int i, j;
for(i = xms; i > 0; i--)
for(j = 110; j > 0; j--);
}
void car_forward() //小车前进函数
{
en_A = 1; //左轮电机使能
en_B = 1; //右轮电机使能
in1_A = 1; //左轮电机正转
in2_A = 0;
in1_B = 1; //右轮电机正转
in2_B = 0;
}
void main()
{
while(1)
{
car_forward(); //小车前进
delay(1000); //延时1秒
}
}
```
以上程序中,我们定义了左右轮电机的使能引脚和控制引脚1、2,然后编写了小车前进的函数,最后在主函数中循环调用小车前进函数并延时1秒。请注意,以上程序仅供参考,实际应用需要根据具体情况进行修改。
阅读全文