Diseño simple de simulación de cuenta regresiva de anotador de baloncesto de 51 microcontroladores (simulación proteus + programa + diagrama esquemático + informe + video explicativo)
Diseño simple de simulación de cuenta regresiva de anotador de baloncesto de 51 microcontroladores (simulación proteus + programa + diagrama esquemático + informe + video explicativo)
Diagrama de simulación proteus7.8 y superior
Compilador de programas: keil 4/keil 5
Lenguaje de programación: lenguaje C
Número de diseño: S0048
1. Funciones principales:
Este diseño tiene como objetivo diseñar un diseño de simulación de anotador de un juego de baloncesto basado en el microcontrolador 51. Los siguientes son los requisitos funcionales del diseño.
1. Las puntuaciones de los equipos A y B se pueden actualizar en cualquier momento durante el partido.
2. Durante el descanso, se cambia la sede y se intercambian las posiciones del Equipo A y del Equipo B.
3. Al agregar puntuaciones de juegos, si hay errores, puede cambiar manualmente las puntuaciones de juegos.
4. Tiene una cuenta atrás de tiempo de ataque de 24 segundos de baloncesto, con una precisión de 0,01 segundos, y puede activar una alarma cuando termina el tiempo de ataque.
Cabe señalar que el chip del microcontrolador 51 en la simulación es universal, AT89C51 y AT89C52 son modelos específicos del microcontrolador 51 y los núcleos son compatibles. Independientemente de stc o at, las funciones del pin son las mismas y el programa es el mismo. El chip se puede reemplazar con 51 chips de microcontrolador como STC89C52/STC89C51/AT89C52/AT89C51.
El siguiente es un diagrama de visualización de esta información de diseño:
2. Simulación
Iniciar simulación
Abra el proyecto de simulación, haga doble clic en el microcontrolador en proteus, seleccione la ruta del archivo hexadecimal y luego inicie la simulación. Después de iniciar la simulación, el tubo digital muestra 0 y debe presionar el botón de inicio/pausa para comenzar a cronometrar.
Cuando se inicia el sistema, el tubo digital LED se enciende de acuerdo con el flujo del programa, mostrando la cuenta regresiva de 24 segundos del juego y la puntuación del juego. El tiempo de cuenta regresiva de 24 segundos antes de comenzar muestra 00.00. La puntuación del juego es 00:00. Después de presionar el botón de inicio, el tubo digital de cuenta atrás de 24 segundos comienza la cuenta atrás con una precisión de 0,01. La luz indicadora de estado del juego comienza a encenderse. Si el equipo A anota, puedes presionar el botón A+ para agregar uno. Si hay errores que deben corregirse, puede presionar A- y presionar una vez para reducir uno. El equipo B puntúa de la misma manera. Si hay una falta u otra necesidad de pausar el juego después de que comienza, puedes presionar el botón de inicio/pausa para pausar el juego. Si necesitas reiniciar, presiónalo nuevamente. El timbre sonará como recordatorio después de la cuenta regresiva del ataque de 24 segundos.
La siguiente imagen muestra que el equipo A anotó 26 puntos y el equipo B anotó 26 puntos en el medio campo. Si necesita cambiar de lugar y luego anotar, simplemente toque el botón de intercambio de lugar. La puntuación se invertirá.
Después del intercambio:
3. Código de programa
Utilice keil4 o keil5 para compilar, el código tiene comentarios y puede comprender el significado del código junto con el informe.
void main()//主函数
{
uchar k=0;
beep=0;
TMOD|=0X11;//定时器设置
TH0=0XD8;
TL0=0XEF;
TH1=(65536-1000)/256;
TL1=(65536-1000)%256;
ET1=1;
ET0=1;//打开定时器0中断允许
EA=1;//打开总中断
TR0=1;//打开定时器
while(1)
{
//点亮LED
if(start==0)
{
led1=1;
led2=1;
}
if(start==1)
{
led1=0;
led2=1;
}
if(start==2)
{
led1=1;
led2=0;
}
//显示时间
P0=smgduan[fen/10];
smg1=0;
delay(50);
smg1=1;
P0=smgduan[fen%10]+0x80;
smg2=0;
delay(50);
smg2=1;
P0=smgduan[miao/10];
smg3=0;
delay(50);
smg3=1;
P0=smgduan[miao%10];
smg4=0;
delay(50);
smg4=1;
//显示分数
if(flag==0)
P0=smgduan[fena/10];
else
P0=smgduan[fenb/10];
smg5=0;
delay(50);
smg5=1;
if(flag==0)
P0=smgduan[fena%10];
else
P0=smgduan[fenb%10];
smg6=0;
delay(50);
smg6=1;
if(flag==1)
P0=smgduan[fena/10];
else
P0=smgduan[fenb/10];
smg7=0;
delay(50);
smg7=1;
if(flag==1)
P0=smgduan[fena%10];
else
P0=smgduan[fenb%10];
smg8=0;
delay(50);
smg8=1;
//按键检测
if(start>=0)//调分数
{
if(!k1 &&(k!=1))
{
k=1;
if(fena<99)
fena++;
}
if(!k2 &&(k!=2))
{
k=2;
if(fena>0)
fena--;
}
if(!k3 &&(k!=3))
{
k=3;
if(fenb<99)
fenb++;
}
if(!k4 &&(k!=4))
{
k=4;
if(fenb>0)
fenb--;
}
}
//启动暂停
if(!k7 &&(k!=7))
{
k=7;
if(start==0)
{
start=1;
fen=24;
miao=0;
}
else
{
if(start==1)
start=2;
else
start=1;
}
}
//交换场地
if(start==0)
{
if(!k6 &&(k!=6))
{
k=6;
flag=!flag;
}
}
//清零
if(start==0)
{
if(!k5 &&(k!=5))
{
k=5;
fena=0;
miao=0;
fen=0;
fenb=0;
}
}
//24s
if(start>0)
{
if(!k8 &&(k!=8))
{
k=8;
start=1;
fen=24;
miao=0;
}
}
if(k1 && k2 && k3 && k4 && k5 && k6 && k7&& k8)
k=0;
}
}
4. Diagrama esquemático
El diagrama esquemático está dibujado con AD, que puede usarse como referencia para lo real. La simulación es diferente de lo real. Si no tiene experiencia, no se lo ponga fácil.
La diferencia entre la simulación Proteus y los trabajos físicos:
1. Entorno de ejecución: la simulación de Proteus se ejecuta en la computadora, mientras que la simulación real se ejecuta en la placa de circuito del hardware.
2. Método de depuración: en la simulación de Proteus, puede realizar fácilmente una depuración en un solo paso y observar cambios en los valores de las variables, mientras que en objetos reales, debe depurar a través de un depurador o una salida de puerto serie.
Método de conexión del circuito: en la simulación de Proteus, la conexión del circuito se puede modificar mediante la configuración del software, pero en la realidad, debe modificarse a través de la placa de circuito del hardware y los cables de conexión.
3. Velocidad de ejecución: la simulación de Proteus generalmente se ejecuta más rápido que la real, porque la simulación se basa en la operación de la computadora, mientras que la real debe considerar factores como las limitaciones físicas de la placa de circuito y el tiempo de respuesta del dispositivo.
4. Realización de funciones: en la simulación de Proteus, se pueden realizar diferentes funciones a través de la configuración del software, pero en objetos reales, deben realizarse de acuerdo con el diseño del circuito y el rendimiento del dispositivo.
5. Informe de diseño
Informe de diseño de más de 8554 palabras
6. Lista de contenido de información de diseño y enlace de descarga
Los materiales de diseño de materiales incluyen simulación, código de programa, videos explicativos, requisitos funcionales, informes de diseño, diagramas de bloques de diseño de software y hardware, etc.
0. Problemas de uso comunes y soluciones: ¡una lectura obligada! ! ! !
1. Diagrama de simulación
2. Código fuente del programa
3. Informe de propuesta
4. Diagrama esquemático
5. Requisitos funcionales
6. Informe de diseño
7. Diagrama de flujo de software y hardware
8. Vídeo explicativo
Información del software de diseño Altium
Información del software KEIL
Información del software Proteo
Materiales de aprendizaje sobre microcontroladores.
Habilidades de defensa
Descripciones comunes para informes de diseño
Haga doble clic con el mouse para abrir y encontrar más Proyecto de graduación del curso de microcontrolador 51 STM32.url
Enlace de descarga de datos (en el que se puede hacer clic):