Pic18f452 baud rate??

Başlatan shark27, 18 Aralık 2010, 18:20:10

shark27

merhaba arkadaşlar..

elimde 18f452 var.bununla servo serial control kartına veri yollayarak aynı anda 18 servoyu hareket ettiriyorum.
bu servo kontrol kartında iki baud rate var birisi 2400 diğeri ise 38400...
2400 baud rate ayarldım kontrolleri yapıyorum ancak 18 servonun hepsine bilgi aynı anda gitmesine rağmen bazıları diğerlerinden daha geç hareket ediyor..
Bende baud rate'i 38400 yapmak için picten kontrol kartına gerekli bilgiyi gönderiorum.Kabul ediyo baud rate i 38400 oalrak ayarlıyor.
ANcak servoların hiçbiri hareket etmiyor.
Pic'i 8MHZ lik kristal ile osilatörünü sağlıyorum.
Acaba bu 8 Mhz den dolayımı 38400 de probelm yaşıyorum??
Sebep buysa bana açıklarmısınız osilatör ile baud rate arasındaki bağlantıyı??
Teşekkürler İyi akşamlar herkese!!

Maxim

8mhz de 38400
BRGH = 0 ise hata %8.51 oluyor
BRGH = 1 da ise hata %0.16 yani kabul edilebilir bir seviyede.

BRGH = 1 seçili olarak, SPBRG ayarınıda 12 olarak yapmak gerekiyor .

shark27

maxim hocam tşklr cevap için.Yalnız ben bu dediğin ayarların hiçbirini yapmasım Picc de yönlendirirsen sevinirim kolay gelsin...

Maxim

malesef picc bilmiyorum,
bilen biri tanımlama için yardım edecektir

shark27


neural

#5
Hitec C kullanıyorsanız
void usrinit(void) {
  BRGH = 1;
  SPBRG  = 12;
  RCSTA = ilgili ayarlar; 
  TXSTA = ilgili ayarlar;
}

şeklinde yazabilirsiniz. CCS C kullanıyorsanız buna benzer bir şeyler olacaktır. Yani ilgili kaydedicilere gerekli değerleri yazarsanız USART modülünü ayarlamış olursunuz. Bu konu ile ilgili daha ayrıntılı bilgi için kullandığınız mikrodenetleyicinin teknik dökümanına bakabilirsiniz.

shark27

hocam bugün bu ayarlrıda yaptım.Ancak gene 38400 baud rate de tepki vermiyor.Bir türlü anlamadım gitti.Yarın olmazsa programı yollayayım buraya bi incelerseniz sevinirim.