Virtual Terminal Sorunu

Başlatan barishlee, 25 Eylül 2008, 13:31:38

barishlee

Arkadaşlar Merhaba;
Pc seri port çıkışından 2 adet motor kontrolü yapmak istiyorum.
START:
       SEROUT2 PORTA.0,396,["xxxx"]
         
       END
           
Şeklinde kod yazdım. Konuya yabancı olduğum için deneme yaparak geliştirmek istiyorum.xxxx olan yerde ise "birinci motor için 1'e , ikinci motor için 2'ye basın" şeklinde bir mesaj yazmak istiyorum. Her ne denediysem Virtual Terminal ekranında saçma sapan karakterler çıkıyor. Virtual Termina'i 2400 e ayarladım. Rts ve Cts bacaklarını kısa devre yaptım olmadı.Ayırdım yine olmadı.Acaba sorun sadece simülasyonda mı? Yani gerçek hayatta bu devreyi kurarsam ekrana uyarı gönderebilir miyim?
Saygılar..

ete

Öncelikle 2 veya daha fazla seçenek için çok uzun bir cümleyi seri uyoldan göndermek bence uygun bir iş değil. Bunun yerine 1 veya 2 veya 3 göndererek alıcı kısmında 1 gelmiş ise ekrana ;
"birinci motor için 1'e"
2 gelmiş ise ;
"ikinici motor için 2 'ye"
şeklinde bir mantık kullanmak daha akıllıca olacaktır.

Anladığım kadarı ile Pic den PC ye seri data yollayacaksın. Devren konusunda bir bilgi vermemişsin. Arada seviye düzeltici (Max232 veya CP_232 entegresi) kullandınmı?. Cevabın hayır ise farklı kareketerler görmen normal.
Pic çıkışları TTL seviyesinde yani 0-5V aralığındadır. PC ise +10V ile -10V aralığında olup Picde fark 5V iken, PC de bu fark 20V dur. Üstelik Pic de HIGH dedinmi +5V anlaşılır , PC de HIGH dedinmi (Seri iletişim için geçerli olmak üzere) -10V anlaşılır. Low denilince Pic de 0V , PC de ise +10V anlaşılır. İşte seviye düzeltici dediğimiz Max232 bu işi üstlenir. Picden gönderilen +5V seviyesindeki High sinyali PC ninanlayacağı -10V seviyesine çevirir. Aynı şekilde Low sinyalinde de gerekli uyarlamayı yapar.
Max232 entegresi +5V ile çalışmasına rağmen içinde gömülü bulunan voltaj pompası sayesinde gerekli olan -10V ve +10V luk voltajları üretir ve kullanır.
Pic de 4 MHz osilatör kullanıyor isen 2400 Baud seviyesini geçmemeni öneririm. Virtual terminal standar 9500 Baud 8 bit No parity formatını kullanır. Picden farklı formatta bilgi yollarsan Virtual terminal için bu değerleri değiştirmen gerekir . Ekranda Virtual terminale sağ tıklayıp ekrana gelen açılan menüden bunları değiştirebilirsin. Önce düşük baud hısı ile başlayım sorun olmadığı sürece baud hızını artırabilirsin.

Kolay Gelsin
Ete
Bilgi hazinedir paylaştıkça büyür.            http://etepic.com