Uart hata(usb to ttl ile bilgisayar ile iletişim)

Başlatan Ugurozdemir0726, 31 Mart 2016, 16:48:45

Ugurozdemir0726

birkaç gündür pic(16f87x) ve bilgisayar ile iletişim kurmaya çalışıyorum ama her denememde farklı hatalarla karşılaştım

kodum isis de sıkıntısız bir şekilde çalışıyor bilgisayarda kullandığım port porgramındada sorun olmadığını düşünüyorum(tx rx kısa devre yapınca bilgisayar gönderdiği veriyi doğru bi şekilde alıyor). Fakat bilgisayarın gönderdiği veriyi pic hiç almıyo. Pic in gönderdiği veriyide bilgisayar hatalı bir şekilde alıyor.

denediğim çözümler ve sonuçarı;
invert de sonuç almıyorum bilgisayar hala anlamsız output veriyo
baud, parity, stop vb. config. ler aynı
ccs c nin help bölümündeki çözüm önerilerinden osilatörün hızı baud u karşılayamayabilir diyodu 12Mhz ilede sonuç vermedi..(12Mhz den önce bilgisayarda hiç veri almıyodu sonrasında anlamsız olsada veriyi almaya basladı).


eğer sorun olup benim buraya yazmayı gözden kaçırdığım biryer varsa fotoğraf vb. yükleyebilirim.

sadogan

Devre şeman ve yazlım olmadan cevap zor.
Donanımsal sorun büyük ihtimal.
Rx ve Tx pinlerin de pull-up direnci varmı.
Rx ve Tx pinlerini birlestirip gönderdiğini almayı dene.

selimkoc

çalışma frekansı yanlış ayarlanmış olabilir. conf ayarlarını gözden geçirin.

tekosis

devrende max232 gibi bir rs232 dönüştürücü kullanmıyorsun değil mi? kullanmadıysan şemanı ve deneme kodlarını paylaşırsan iyi olur.
İlim ilim bilmektir, ilim kendin bilmektir, sen kendin bilmezsin, bu nice okumaktır.

ferdem

Toprak pinini bağlamayı unutmadınız değil mi?
USB to ttl çevirici olarak ne kullandınız? Çıkışta lojik seviyenin 5V olduğuna emin olun.
Karşılanmayacak baud... hangi baud değeri kullanmak istiyorsunuz? Öyle bir ihtimal varsa önce 9600 değerinde deneme yapın.
Haberleşme çalışmazken PIC diğer işlerini düzgün yapıyor mu, mesela bir ledi sürekli yakıp-söndürsün.

JOKERAS

Sorun Baud hızı ile alakalı olabilir.
Proteus'ta çalışıyor olması İşlemci Clock ayarlarının hatalı olduğunu gösteriyor.
Clock hatalıysa BaudRate'te otomatik olarak hatalı olur.
Yazılımınızdaki Usart rutininde hata kontrolleri yapıldımı?Bunlar önemli!
Ayrıca RS232 donanımı her türlü parazitten etkilenir,bir protokol belirleyip veri alışverişini o protokol ile yapın.
 
PC'de veriyi ne ile alıyorsunuz veya yolluyorsunuz?Hyper Terminal'mi?
Docklight diye bir pgm var onunla test edin.

kimlenbu

pc'nin ve pic'in gnd'leri ortak olsun, yoksa bu tarz sıkıntılar oluyor.

Ugurozdemir0726

önerileriniz için cok teşekkürler arkadaşlar sorunu çözdüm

Sorun devreyi harici bi kaynaktan beslemeye calıstırdığım için oluyomus. devreyi kurarken usb to ttl nin gnd sini taktığım zaman pin in tx bacağından bilgi göndermeye baslıyo ve güc kaynağını beklemeden hatalı veriler gönderiliyo(akim gnd den gelip tx den dönüyo ve + takılı olmadığı halde 2.28 lik bi gerilim farkı oluyo) hatalı başlayınca toprakları ortaklasam bile düzelmiyo. Ama direkt olarak ttl nin 5v ve gnd sini kullandığım zaman sıkıtı çözüldü.