Auto-Baud Detect

Başlatan camby, 17 Mart 2012, 18:56:34

camby

Pic'lerde Auto-Baud Detect özelliği var , Deneyen var mıdır ?

Var ise kullanan yada deneyen tecrübelerini paylaşabilir mi acaba.. Kullanışlı mıdır ? Düzgün çalışıyor mu ?

skara1214

hocam ben ccs c de biraz denedim ama düzgün çalıştıramadım araştırdığım kadarıyla(yabancı siteler dahil) hiç gerek yok diyorlar pek stabil çalışmıyor.
Herkes ölür ama herkes gerçekten yaşamaz

gokhangokcen

Konu epey eskide kalmış ama böyle bir özellik için uğraşan arkadaşımız oldu mu? ya da sizce ne kadar gerekli bir özelliktir? Bir kaç sitede rastlayabildim fazla yerde konuşan yok. Autobaud için neler yapmamız gerekir?

bulduğum sitelerdeki bir örnek;
http://www.ccsinfo.com/forum/viewtopic.php?t=19306
Bildiğini paylaşmak, Allah'ın verdiği öğrenme yeteneğinin zekatıdır.

foseydon

ds30 bootloader kullanmıştım, auto-baud özelliği de vardı ve denedim çalışıyordu. bence gereksiz bir özellik, sabit baud daha iyi diye düşünüyorum. zaten 4-5 tane standard baud rate var kullanılan, hepsini sıradan denemek kaç dakika alır?

OG

Tecrübesi olan var ise,
Auto Baud ile çalışırken
Baud hızını yakalamak için gelen datadan İLK BYTE'ı kaçırıyor mu?
Yani fazladan bir byte eklemek zorunluluğu doğuyor mu?
FORUMU İLGİLENDİREN KONULARA ÖM İLE CEVAP VERİLMEZ.

gokhangokcen

@OG hocam şu an 18f87j50 ile denemeler yapıyordum datasheetine baktığımda ise "Enable baud rate measurement on the next character. Requires reception of a Sync field (55h); cleared in hardware upon completion.
The automatic baud rate measurement sequence (Figure 20-1) begins whenever a Start bit is received and the ABDEN bit is set. The calculation is self-averaging. In the Auto-Baud Rate Detect (ABD) mode, the clock to the BRG is reversed. Rather than the BRG clocking the incoming RXx signal, the RXx signal is timing the BRG.In ABD mode, the internal Baud Rate Generator is used as a counter to time the bit period of the incoming serial byte stream.Once the ABDEN bit is set, the state machine will clear the BRG and look for a Start bit. The Auto-Baud Rate Detect must receive a byte with the value 55h (ASCII "U", which is also the LIN bus Sync character) in order to calculate the proper bit rate. The measurement is taken over both a low and a high bit time in order to minimize any effects caused by asymmetry of the incoming signal. After a Start bit, the SPBRGx begins counting up, using the preselected clock source on the first rising edge of RXx. After eight bits on the RXx pin or the fifth rising edge, an accumulated value totalling the proper BRG period is left in the SPBRGHx:SPBRGx register pair. Once the 5th edge is seen (this should correspond to the Stop bit), the ABDEN bit is automatically cleared. "
gibi bir ifadeye yer verilmiş. Anladığım kadarı ile ilk olarak "U" ascii karakteri ya da hex "0x55" ya da binary "0b01010101" kodlarını yollayın bu değere göre baud hesabı yapılır.
Bildiğini paylaşmak, Allah'ın verdiği öğrenme yeteneğinin zekatıdır.

foseydon

@gokhangokcen in dedigi dogru, ds30loader'da 0x55 yolluyordu onden baud detection için.