220 [Diseño de recorrido completo] Diseño de sistema de semáforo inteligente basado en 51 Microcomputadora de un solo chip-LED-Infrarrojos para evitar obstáculos

[Descarga de recursos] La dirección de descarga es la siguiente:
https://docs.qq.com/doc/DTlRSd01BZXNpRUxl

51 Diseño de sistema de semáforo inteligente-LED-Infrarrojos para evitar obstáculos-Voz-LCD1602

Este diseño está compuesto por un circuito de un solo chip STC89C52 + circuito de lámpara LED + circuito de sensor de evitación de obstáculos infrarrojos + circuito de pantalla de cristal líquido LCD1602 + circuito de módulo de voz + circuito de fuente de alimentación.

1. Cuando el sensor infrarrojo para evitar obstáculos detecta un obstáculo, después de 15 segundos, el LED1 rojo se encenderá y el LED1 verde no se encenderá. El LED2 rojo está apagado y el LED2 verde está encendido Al mismo tiempo, la voz solo se transmite: preste atención a la seguridad cuando los peatones crucen la calle. Después de 15 segundos, el LED1 rojo está apagado y el LED1 verde está encendido. El LED2 rojo está encendido, el LED2 verde está apagado y la voz solo se transmite: espere pacientemente. Y ciclo a su vez.

2. La pantalla LCD muestra el tiempo de cuenta atrás en tiempo real.

3. Cuando el sensor infrarrojo para evitar obstáculos no detecta un obstáculo, el LED1 rojo está apagado y el LED1 verde está encendido. El LED2 rojo está encendido y el LED2 verde está apagado.

4. De forma predeterminada, el LED1 rojo está apagado y el LED1 verde está encendido. El LED2 rojo está encendido y el LED2 verde está apagado.

#include<reg52.h> //包含头文件,一般情况不需要改动,头文件包含特殊功能寄存器的定义
#include<stdio.h>
#include "delay.h"
#include "1602.h"

sbit led_red1 =P1^0;  //引脚定义
sbit led_gre1 =P1^1;  
sbit led_red2 =P1^3;  
sbit led_gre2 =P1^2;  
sbit yy1 =P1^4; 
sbit yy2 =P1^5;

sbit hotm = P3^2;

char dis0[16];			   //打印数组初始化
char dis1[16];			   //打印数组初始化

unsigned long time_20ms=0;		   //定时器计数

unsigned int yunTime = 0;   //运行时间
unsigned char runStep = 1; //运行步骤

bit disFlag  = 0; //定时更新显示

void Init_Timer0(void);
void uartSendStr(unsigned char *s,unsigned char length);
void UART_Init(void);
void uartSendByte(unsigned char dat);

void main (void)

 

Supongo que te gusta

Origin blog.csdn.net/theroadon/article/details/109232079
Recomendado
Clasificación