stc15w4058as寻迹小车代码
时间: 2024-06-17 14:04:56 浏览: 10
STC15W4058AS是一款常用的单片机,可以用来控制各种类型的小车。要实现寻迹小车的功能,需要连接红外线传感器和电机,然后通过单片机控制电机运转,从而实现小车的寻迹功能。
以下是一份STC15W4058AS寻迹小车代码的示例:
```
#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
uchar left=0,right=0;
uchar code Table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};//数码管显示0-9
void delayms(uint xms)
{
uint i,j;
for(i=xms;i>0;i--)
for(j=110;j>0;j--);
}
void TurnLeft()
{
P1=0x00;
P2=0x01;
}
void TurnRight()
{
P1=0x01;
P2=0x00;
}
void Forward()
{
P1=0x00;
P2=0x00;
}
void Stop()
{
P1=0x01;
P2=0x01;
}
void init()
{
TMOD=0x01;
TH0=(65536-10000)/256;
TL0=(65536-10000)%256;
EA=1;
ET0=1;
TR0=1;
}
void main()
{
init();
while(1)
{
if(left==1 && right==1)
Forward();
else if(left==1 && right==0)
TurnRight();
else if(left==0 && right==1)
TurnLeft();
else if(left==0 && right==0)
Stop();
delayms(10);
}
}
void Timer() interrupt 1
{
TH0=(65536-10000)/256;
TL0=(65536-10000)%256;
left=P3&0x01;
right=P3&0x02;
}
```
这份代码使用了红外线传感器来检测小车是否偏离轨道,当小车偏离轨道时,根据传感器输出的信号控制电机的运转方向,使小车重新回到轨道上行驶。在代码中,使用了定时器中断来实现对红外线传感器数据的读取,并通过控制P1和P2口的电平状态来控制电机的运转。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)