Professional Documents
Culture Documents
Diagramas de Flujo
Main
pantallazo
Inicializar
contaCol = 0
pantallazo( )
contaSegm = 0
enviarByte(char)
apagar columnas;
actualizar salidas driver;
k=0
enviarByte(dato[ ][ ])
seleccionar columna;
contaSegm++ contaCol++
pin = bit[ k ]; generar flanco;
k++
retornar
k< 8
retornar
Declaraciones de constantes, smbolos y variables. Codificacin en lenguaje C, compilador mikroC PRO para PIC
//************************ #define SEGM 6 // #define COLS 8 constants declarations *************************
//********************** symbols declarations ***************************** sbit DATA_PIN at RC0_bit; //bit serialpulso para reconocimiento de dato sbit CLOCK_PIN at RC5_bit; //pulso para reconocimiento de dato sbit LATCH_PIN at RC2_bit; sbit ENABLE_PIN at RE0_bit; char MUX_COL at PORTB; //********************** variables declarations *************************** //Segmento de la RAM Imagen char pantalla[SEGM][COLS] = {{0x3E,0x51,0x49,0x45,0x3E,0x00,0x00,0x00}, {0x42,0x7F,0x40,0x00,0x00,0x00,0x00,0x00}, {0x3E,0x51,0x49,0x45,0x3E,0x00,0x00,0x00}, {0x42,0x7F,0x40,0x00,0x00,0x00,0x00,0x00}, {0x3E,0x51,0x49,0x45,0x3E,0x00,0x00,0x00}, {0x42,0x7F,0x40,0x00,0x00,0x00,0x00,0x00}};
Funcin Pantallazo. Descripcin: Se encarga de actualizar la pantalla de Leds segn los registros de la RAM donde se almacena la imagen. Es necesario que la rutina sincronice los datos almacenados en los drivers con el encendido de las columnas correspondientes. Las columnas se encienden con ceros y solamente debe estar una columna activa. Utiliza la funcin enviarByte para realizar la transferencia de datos. Parmetros de entrada: ninguno Parmetros de salida: ninguno
Funcin enviarByte. Descripcin: Se encarga de transmitir un byte a los drivers de almacenamiento y control de la matriz de LEDs a travs de un pin del microcontrolador de manera serial; para que el driver reconozca cada bit es necesario enviar un flanco ascendente. Parmetros de entrada: un dato de tamao 8 bits. Parmetros de salida: ninguno Codificacin en lenguaje C, compilador mikroC PRO para PIC
void enviarByte(char datoByte) { char i = 0; //indice para el ciclo do-while CLOCK_PIN = 0; do { //Salida del byte serialmente DATA_PIN = datoByte.b0; //pulso de subida para que el led driver reconozca el dato CLOCK_PIN = 1; CLOCK_PIN = 0; datoByte = datoByte >> 1; i++; }while(i < 8); //para enviar el byte completo }