Escritura de código del coche para evitar obstáculos por infrarrojos

En los dos primeros blogs, monté el coche para evitar obstáculos por infrarrojos, y esta vez escribí el código.

#include <REG52.H>
sbit ENA=P0^0;
sbit IN1=P0^1;
sbit IN2=P0^2;
sbit ENB=P2^0;
sbit IN3=P2^1;
sbit IN4=P2^2;
sbit A1=P1^0;
sbit B2=P1^1;
void delay(int z) {
    
    
	int x,y;
	for(x=z;x>0;x--)
		for(y=110;y>0;y--);
}
void go() {
    
    
	ENA=1;
	IN1=1;
	IN2=0;
	ENB=1;
	IN3=1;
	IN4=0;
}
void back() {
    
    
	ENA=1;
	IN1=0;
	IN2=1;
	ENB=1;
	IN3=0;
	IN4=1;
}
void right() {
    
    
	ENA=1;
	IN1=0;
	IN2=1;
	ENB=1;
	IN3=1;
	IN4=0;
}
void left()
{
    
    
	ENA=1;
	IN1=0;
	IN2=1;
	ENB=1;
	IN3=1;
	IN4=0;
}
void main() {
    
    
	while(1) {
    
    
		go();
		if(B2==0) {
    
    
			back();
			delay(500);
			left();
			delay(700);
		}
		if(A1==0) {
    
    
			back();
			delay(500);
			right();
			delay(700);
		}
	}
}

Entre ellas, se definen respectivamente las funciones de retardo, girar a la izquierda, girar a la derecha, adelante y atrás, que se pueden llamar directamente en la función principal más adelante.
Después de la prueba, el automóvil puede funcionar normalmente después de instalar el banco de energía. En el próximo blog, conectaré la caja de la batería al dispositivo para facilitar la operación.
Si tiene alguna pregunta o encuentra errores, bienvenido a comunicarse conmigo.

Supongo que te gusta

Origin blog.csdn.net/qq_52556690/article/details/109960798
Recomendado
Clasificación