Haz una pregunta
  Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos
Foros Registrarse ¿Olvidaste tu contraseña?

Temas similares

22/02/2011 #1

Avatar de Pelelalo

Rutina timer para el 16LF84A
buenas, tengo una rutina que mete un retardo de medio segundo del 16F876A y quisiera usarla para el 16LF84A. Pero parece que no funciona. El sistema se queda congelado en el primero display.

Uso Sdcc y Piklab.

#include <pic16f84a.h>
#define T_10ms 217

//rutina que mete un retardo de 10ms.
void timer0_delay(unsigned char t0ini) {
TMR0=t0ini;
T0IF=0;
while(T0IF==0);

}

//rutina que ejecuta 10ms tantas veces como la variable duraction
void timer0_delay_long(unsigned int duraction) {
unsigned int i;
for (i=0;i<duraction;i++)
timer0_delay(T_10ms);
}

void main(void) {
int tabla7s={0x20,0xae,0x44........};
TRISB=0X00;
T0CS=0; PSA=0;
PS2=1; PS1=1; PS0=1;

PORTB=tabla7s[0];
timer0_delay_long(50);
PORTB=tabla7s[1];
timer0_delay_long(50);
PORTB=tabla7s[2];
timer0_delay_long(50);

}
Respuesta
¿Tienes una mejor respuesta a este tema? ¿Quieres hacerle una pregunta a nuestra comunidad y sus expertos? Registrate

Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO ©2011, Crawlability, Inc.