saludos a todos , tengo una duda , si aplico DELAY_MS (180000); deberia ser 3minutos. solo que simulo en proteus y no dura exactamente 3 minutos dura un poco mas de 1 minuto no se cual es el problema tengo que cambiar la frecuencia del cristal ? .. este es mi codigo para que entiendan mejor
#include <16f84a.h>
#use delay (clock=4M)
#byte TRISB=0x86 //.............................//
#byte PORTB=0x06 //.............................//
#byte TRISA=0x85 //.............................//
#byte PORTA=0x05 //.............................//
void main (){
set_tris_a(0b111111); // como entrada todo el puerto A //
set_tris_b(0b0000000); // como salida todo el puerto B //
output_b (0b00001000); // pin b3 comienza apagado
while (true){
IF(PORTA==0B00010){ // si se pulsa "
DELAY_MS(30); // retardo
OUTPUT_B(0B10000100); // enciende el "led" en b2
DELAY_MS (180000); // espera 180000 ms (3 minutos) !
<........... el error esta aqui no dura exactamente 3minutos como quiero output_b (0b00001000); // luego se apaga
}
}
}