MErhaba arkadaslar,
Ben de UART ile haberlesmeye calisiyorum. Ben bir tane dsp chip ile pic arasinda iletisim kurmaya calisiyorum ama olamadi. Yardimci olabilir misiniz?
Ben icinde main'in bulundugu kodu yolliyim size:
#include <lcd_md.c>
#include <udaq.c>
#bit test_led = PORTD.0
#bit test_button = PORTD.1
long int hiz;
/*void uart_init()
{
SPBRG = 12;
INTCON = 0x80; // 1000 0000 enable global interrupts
}*/
void init()
{
SET_TRIS_A(0b00000000);
SET_TRIS_B(0b00000001);
SET_TRIS_C(0b10000000);
SET_TRIS_D(0b00000010);
SET_TRIS_E(0b00000000);
SETUP_ADC_PORTS(NO_ANALOGS);
DISABLE_INTERRUPTS(GLOBAL);
test_led = 0;
disable_interrupts(global);
lcd_init();
//buradan sonra uart icin configurasyonu yapmaya calistim. bir yanlislik //var mi burada?
SPBRG = 25;
SYNC = 0;
SPEN = 1;
R_CIE = 1;
TXIE = 1;
CRE_N = 1; //enable interrupts
// INTCON = 0xC0;
}
void main()
{
init();
display("\fgit");
delay_ms(1000);
while(1)
{//test_led =~test_led;
delay_ms(250);
ReadData(2,0,3,0);
delay_ms(250);
hiz = ReceivedData;
ReadData(2,0,4,0);
delay_ms(250);
hiz += ReceivedData<<8;
delay_ms(1000);
display_word(2,2,hiz);
delay_ms(1000);
}// while(1)
}//void main()
sanirim UART configurasyonunu yaparken bir hata yapiyorum...
#use rs232 (baud=9600,xmit=PIN_xx,rcv=PIN_xx)
bu kodu kullanmıyormusunuz bu arada
yok o var ama diger kodlarin icinde.
ben daha cok konfigurasyon konusunda bir sikinti yasiyorum.
sunu merak ediyordum. picc 'de
disable_interrupts(global)
dedikten sonra bir de transmit ve receive interruptlarini enable etmek icin
enable_interrupts( ) deyip parantezin icine ne yazmam gerekir? Bu konu hakkinda bir bilgisi olan var mi acaba?
yok o var ama diger kodlarin icinde.
ben daha cok konfigurasyon konusunda bir sikinti yasiyorum.
sunu merak ediyordum. picc 'de
disable_interrupts(global)
dedikten sonra bir de transmit ve receive interruptlarini enable etmek icin
enable_interrupts( level )
deyip parantezin icinde level kismina ne yazmam gerekir? Bu konu hakkinda bir bilgisi olan var mi acaba?