16F877 ve MAX 232 ile RS 232 Seri Haberleşme
Fronius kaynak makinasının nasıl çalıştığını anlamak için mikrodenetleyicili ara kart tasarlaması gerekmektedir. RS422 seri iletişim standardının direkt kütüphanesini bulamadığımdan dolayı önce RS232′de sinyaller üretilip RS422 dönüştürücüyle aktarılabilinir. Eğer aktarım zamanında sorun çıkarsa direk kütüphane yazabilirim ancak biraz zamanımı alır.
RS232 standardı geliştirildiğinde TTL uC’ler piyasaya girmediğinden TTL entegrelerine uyumlu değillerdir. bilgisayarlar 12/24 V kullanırken TTL’ler yaklaşık 5 voltta çalışır. Bu gerilim farkını MAX232 entegresi ile aşarız. Aşağıda örnek devresini çizdim.
RS232′de veriler karakter karakter gönderim olur. Karakterlerin ASCII kodlarına göre 7 bitlik veri
olarak yollanır. Bu şekilde Fronius’un manuelindekine benzer veriler yollanabilinir. RS232′de
iletişim asenkron tiptedir yani alıcı ile vericinin saatleri aynı olmak zorunda değildir. Ancak verinin
iletilebilmesi için senkronizasyon gerekmektedir. Bu yüzden start biti ile iki taraf da saatlerini
senkronize eder. Start biti lojik sıfırdır. 4Mhz de kullanılan 16f877 uC sinde 118 us uzunluğundadır.
7 veya 8 bitlik veri yollanıp ardından stopla durdurulur. Veri bitleri de yine aynı uygulamada
104-107 mikrosaniyedir. Stop biti de lojik sıfırdır. Yazdığım koda ve bağlı olduğu kütüphaneye göre
her seferde 10 bit yollanır. RS232 de asıl yollanan 7-8 bitin önce 2 tabanında tersi alınıp ardından
sıralanışı tersine çevrilerek iletilir.
Örnek 1.1
Yollanan karakter: !
ASCII karşılığı: 33 = 0100001
Yollanan veri: 0101111011000…
Çevrilmiş hali: 1000010
Yollanan karakter: a
ASCII karşılığı: 97 = 1100001
Yollanan veri: 0101111001000…
Çevrilmiş hali:
Yollanan karakter: $
ASCII karşılığı: 36 = 0100100
Yollanan veri: 0111011011000…
Çevrilmiş hali: 0100100
Direk sayısal veri olarak gönderim:
char value;
value = 1;
putc(value);
value değeriyle oyanayarak istediğimiz veriyi girebiliyoruz.
1 için gönderile veri: 0101111111000…
Çevrilmiş hali: 00000001
Bu kullanım işimize daha fazla yarayacaktır.
RS232′den RS242′ye Çevirme
Perpa’da bu tür dönüştürücüler 40-50 TL’ye bulunmaktaymış. İki standardın genel özelliklerini
karşılaştırabiliriz:
| Özellik | RS232 | RS422 |
| Maksimum kablo uzunlukları | 40 FT. | 4000 FT. |
| Maksimum Veri Oranları | 20kb/s | 10Mb/s |
| Gerilim Aralıkları | + 3-25 arası 0 – 3-25 arası 1 | + 2-4 ve – 2-4 aralıkları |

Şeklinde bir dönüştürme entegresi kullanılabilir. Basit bir örneği http://www.kmitl.ac.th/~kswichit
%20/Rs422/Rs422.html adresinde var ancak endüstriyel uygulamalarda ne kadar başarılı olur
bilmiyorum.
NOT: Bir yıldır gnu linux dağıtımı Ubuntumu kullanıyordum ve proteustan iyice kopmuştum. RS 232′nin hazır devresini Onur Kalecik’in sitesinden alıp üzerine analog gösterge koydum. Şimdi hatırladım çoğu şeyin nasıl yapıldığını ancak ilk giriş kısmını hızla geçmemi sağladığı için okuldan arkadaşım Onur Kalecik’e teşekkür ederim.
Yazının PDF hali
6 Comments to “16F877 ve MAX 232 ile RS 232 Seri Haberleşme”
RSS feed for comments on this post. TrackBack URI

Ledasi Yazılım / Medya CRM 1
By sercan, 16 July 2008 @ 16:16
“4Mhz de kullanılan 16f877 uC sinde 118 us uzunluğundadır.
7 veya 8 bitlik veri yollanıp ardından stopla durdurulur. Veri bitleri de yine aynı uygulamada
104-107 mikrosaniyedir.”
Hocam bu süreler standart süreler değil, seçilen bauda göre değişir. Verdiğin süreler 9600 baud için. Her bit için zaman aralıkları sadece baud rate e göre belirlenir.
“RS232 de asıl yollanan 7-8 bitin önce 2 tabanında tersi alınıp ardından
sıralanışı tersine çevrilerek iletilir.”
Bunu da ilk defa sizden duyuyorum, isis de seri iletişim yapan iki üniteyi lojik analizörle dinlerseniz böyle olmadığını görebilirsiniz.
Yazılarınızın devamını bekleriz, bu yorumu okuduktan sonra siliniz. İyi çalışmalar.
By admin, 16 July 2008 @ 16:42
Evet baud rate’e göre değişmektedir haklısınız. Mesai bitimine yakın yazdığım yanlışlarla dolu yazıyı aslında güncelleyip siteye koyduğumu sanıyordum ama yanlış dosyayı koymuşum. Yorumunuz için çok teşekkür ederim hatamı görmemi sağladınız.
İyi akşamlar.
By onur, 18 July 2008 @ 13:19
çağdaş iyi bir çalışma bilgi paylaşta büyüyor gelişiyor. Kendine iyi bak iyi tatiller..
By SAFFET, 26 October 2008 @ 04:25
USB DEN RS232 YE ÇEVİRİCİ LSC232F PIC İLE DİZÜSTÜ BİLGİSAYARI DİREK USB’DEN BAĞLIYABİLİYORSUN
By SAFFET, 26 October 2008 @ 04:28
ALTAKİ ADRESLEDE DATALARI VAR
http://www.senachip.com/lcs232f.php
http://www.senachip.com/images/lsc232f1.jpg
By ........., 01 December 2008 @ 15:29
ffdfmjr