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

Temas similares

26/11/2011 #1


16f628A problema con interrupciones no funciona
buenas como estan miren ya no se que hacer tengo un 16F628A nuevo he intentado colocarle esta rutina

#int_TIMER1
void TIMER1_isr(void)
{
set_timer1(3036);

output_toggle(pin_a1);


}



void main()
{

set_tris_a(0x00);
port_b_pullups (0xff);
setup_timer_0(RTCC_INTERNAL|RTCC_DIV_1);
setup_timer_1(T1_INTERNAL|T1_DIV_BY_8);
setup_timer_2(T2_DISABLED,0,1);
setup_comparator(NC_NC_NC_NC);
setup_vref(FALSE);
enable_interrupts(INT_TIMER1);
enable_interrupts(GLOBAL);
set_timer1(3036);


//Setup_Oscillator parameter not selected from Intr Oscillator Config tab

// TODO: USER CODE!!
while(1){

output_toggle(pin_a0);
delay_ms(300);
}
}


pero el pic no me hace nada! tiene un reloj de 4Mhz


lo qu hice fue probarlo con una rutina sin timer y interrupcion simple como:

void main()
{
set_tris_a (0x00); //puerto a como salida
set_tris_b (0xff); // puerto b como entrada


while(1){
output_toggle(pin_A0);
delay_ms(300);

}



}

y si funciona. sera que el pic esta malo?
26/11/2011 #2

Avatar de Eduardo

El programa está bien.

- Estás metiendo la gamba en otra cosa: 99.2%
- Pin A1 quemado: 0.8%
26/11/2011 #3


que quieres decir con gamba?
26/11/2011 #4
Moderador general

Avatar de DOSMETROS

Meter la gamba = meter la pata = hacer algo mal
28/11/2011 #5


bueno me respondo a mi mismo. Buscando encontré un ejemplo aquí mismo hecho por george.manson.69 (Programas hechos en MPLAB) en el ejemplo resulta que utilizan el reloj interno, lo intente con mi programa y así si funcionan las interrupciones

#include <16F628A.h>

#FUSES NOWDT //No Watch Dog Timer
#FUSES PUT //Power Up Timer
#FUSES INTRC_IO //Internal RC Osc, no CLKOUT
#FUSES NOBROWNOUT //No brownout reset
#FUSES NOLVP //No low voltage prgming, B3(PIC16) or B5(PIC18) used for I/O

#use delay(int=4000000)


pero sigue el problema del por que con el oscilador externo no funcionan las interrupciones.

otra cosa el mismo programa lo implemente en un 16F886 con oscilador externo pero de 20Mhz y funciona perfecto.
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.