CCS - preruseni

Milos Sula sula na rps.cz
Úterý Duben 30 11:12:24 CEST 2013


Zdravím,
mám následující kousek kódu, bohužel se mi volá přerušení encoder_int() 
neustále dokola ikdyž se stav RB4 aRB5 nemění. Zjistil jsem, že se 
přerušení volá p při změně RB0, který je připojená na AD9850, přitom 
mám  ale enable_interrupts(INT_RB5|INT_RB4)... ?
Nevíte kde může být zrada ?

#include <16F1847.h>
#fuses NOWDT, INTRC_IO, NOPROTECT,NOBROWNOUT,NOMCLR,NODEBUG
#use delay(clock=32M)

#use fast_io(a)
#use fast_io(b)

#INT_RB
void encoder_int(){
  .....
}

void main (){
  SET_TRIS_B(0b11111000);   //RB0-RB2 AD9850
  SET_TRIS_A(0b11111110);   //RA0 Buzzer
  port_b_pullups(TRUE);
  setup_oscillator(OSC_8MHZ | OSC_NORMAL | OSC_PLL_ON);//32MHz 4x8MHz
  setup_adc_ports( NO_ANALOGS );
  setup_timer_0(RTCC_INTERNAL|RTCC_DIV_2);
  ad9850_init();
  enable_interrupts(INT_RB5|INT_RB4);
  enable_interrupts(global);
}

díky
Miloš


Další informace o konferenci Hw-list