Вы находитесь на странице: 1из 3

El número con el cual se activa el led es: 77 en binario

#include <p18f4550.h>

#include <xc.h>

#pragma config FOSC = XT_XT //datos del oscilador (cristal XT_XT)(para el 18f4550)(esto
para trabajar a altas frecuencias)//

#pragma config MCLRE = ON //boton de reset (masterclre) (on o off)//

#pragma config LVP = OFF //Low voltage Programming (3.3V)(apgado)(es decir trabajara
en alto voltaje (5V))

//codificando los datos que se quieren visualizer (Arreglo bidimecional que se le llamo tabla)//

unsigned char tabla[16] = {126,12,182,158,204,218,250,14,254,222,};


//238,248,114,188,242,22

int unidades, decenas; //varibales enteras


void main(void)

TRISD = 0XFF; //Configura puerto A para entradas (11111111)

ADCON1 = 0X0F; //Entradas/Salidas tipo digitales (00001111)

CMCON = 0X07;//Comparadores en OFF

TRISB = 0X00; // Puerto B para salidas (00000000)

TRISC = 0X00; //Configura puerto A para entradas (11111111)

for(;;) // ciclo infinito

while ( PORTD < 100 ) // fija límite de cuenta

if (PORTD == 77) PORTCbits.RC2 = 1; //condicionamos un dato especifico del puerto D

else PORTCbits.RC2 = 0;

decenas = PORTD/10; // Se divide el dato del puerto D y se guarda en la varibale decenas

unidades = PORTD%10; // Se obtiene el complemento del puerto D y se guarda en la


variable unidades

PORTB = tabla[decenas]; // Colocar en PORTB el valor correspondiente de la tabla

PORTCbits.RC1 = 1; _delay(10000);

PORTCbits.RC1 = 0; _delay(10000);

PORTB = tabla[unidades]; // Colocar en PORTB el valor correspondiente de la tabla

PORTCbits.RC0 = 1; _delay(10000);

PORTCbits.RC0 = 0; _delay(10000);

Вам также может понравиться