¿Cómo utilizar 8 tubos luminosos para demostrar el proceso de decremento de números binarios de 8 bits en un microcontrolador? (en lenguaje c)
#include?"reg51.h"
void?delay(unsigned?int?ms)
{
unsigned?char ?i;
mientras(ms--)?for(i?=?110;?i--?;?i?gt;?0);
} p>
//------------------------
void?main()
{
unsigned?char?abc?=?0;
while(1)?{ P1?=?abc;//Conecte 8 LED externos al puerto P1, bajo consumo Luz plana. abc;?//Agregar, la lógica negativa se mostrará como autodecremento(500);?//Retraso para la observación.
}}?
= =============================================
requiere el bit más alto P0^0 como el bit más alto del sistema binario.
Este nuevo requisito se puede ajustar a la hora de soldar dispositivos LED.
No es difícil cambiar el programa, de la siguiente manera:
#include?"reg51.h"
unsigned?char?bdata?abc?= ?0 ,?bbb;
sbit?a0?=?abc^0;
sbit?a1?=?abc^1;
sbit?a2 ?= ?abc^2;
sbit?a3?=?abc^3;
sbit?a4?=?abc^4;
sbit? a5? =?abc^5;
sbit?a6?=?abc^6;
sbit?a7?=?abc^7;
sbit ?b0 ?=?bbb^0;
sbit?b1?=?bbb^1;
sbit?b2?=?bbb^2;
sbit?b3?=?bbb^3;
sbit?b4?=?bbb^4;
sbit?b5?=?bbb^5;
sbit ?b6?=?bbb^6;
sbit?b7?=?bbb^7;
void?delay(unsigned?int?ms)
{
unsigned?char?i;
while(ms--)?for(i?=?110;?i--?;?i?gt;? 0) ;
}
void?main()
{
mientras(1)?{ b0?=?a7; b1?=?a6; b2?=?a5; b7?=?a0; p>
//?P1?=?abc;//Conecte 8 LED externos al puerto P1 y emita luz a bajo nivel. abc;?//Agregue, la lógica negativa se mostrará como retraso automático (. 500);?// Retraso de tiempo para la observación de fenómenos.
}}