xranzei 1
xranzei
zendor2 1
zendor2
Bvural41 1
Bvural41
noisiv 1
noisiv
Manwe Work 1
Manwe Work
Almira2 1
Almira2
romegames 1
romegames
D 1
delimuratt
melankolıa18 1
melankolıa18
shrpnl 1
shrpnl
Fethi Polat 1
Fethi Polat
kralhakan2009 1
kralhakan2009
Hikaye Ekle
Reklam vermek için turkmmo@gmail.com

Portların Kullanımı

  • Konuyu başlatan Konuyu başlatan TruvaGame
  • Başlangıç tarihi Başlangıç tarihi
  • Cevaplar Cevaplar 1
  • Görüntüleme Görüntüleme 29
Metin2 Pvp GM

TruvaGame

Level 23
GM
TM Üye
Katılım
23 Ocak 2016
Konular
8,370
Mesajlar
18,391
Online süresi
4mo 19d
Reaksiyon Skoru
4,085
Altın Konu
0
Başarım Puanı
506
MmoLira
94
DevLira
0
Ticaret - 0%
0   0   0

ROHAN2 WORLD 1-120 TR TİPİ OFFICIAL YOHARA, BALATHOR VE AMON! 80. GÜNÜNDE! +10.000 ONLİNE! HİLE VE BOT %100 ENGELLİ HEMEN TIKLA!

Önceki bölümde ethernet arayüzünü yapılandırarak ağa dahil olma, FTP ve telnet servislerini kullanma konularını işledik. Bu sayede FTP kullanarak dosyaları disketlerle taşıma zahmetinden kurtulurken telnet servisini kullanarak SBC'ye bir monitor bağlamadan çalışabilme şansına sahip oluyorduk. Ancak sisteminizde ethernet desteği yoksa benzeri kolaylıkları seri portu kullanarak sağlayabiliriz. Sisteminizde ethernet desteği olsa bile buradaki adımları uygulayarak seri portu farklı amaçlar için kullanabilirsiniz. Buradaki adımları uygulayabilmeniz için seri iletişim kablosuna ihtiyacınız vardır. Bu kablo aslında iki ucu dişi DSUB girişli bir telefon kablosunun bir tarafındaki Transmit Data bacağının diğer taraftaki Receive Data, Receive Data bacağının ise diğer taraftaki Transmit Data'ya bağlandığı basit bir kablodur ve sadece bu iki bağlantıyı yapmak aslında yeterlidir. Ancak, akış kontrolleri (hardware flow control) için RTS/CTS vb. sinyallerinin de iki sistemin seri portu arasında taşınabilmesi gereklidir. Bu nedenle aşağıdaki diyagrama göre yapacağınız bir seri iletişim kablosu daha çok işinize yarayacaktır: (İkili bükülü çiftler çiftler sütununda gösterilmiştir.)
Tablo 7.1. Seri iletişim kablosunun bağlantı bilgisi

25 Pin 9 Pin Çiftler 9 Pin 25 Pin
FG (Frame Ground) 1 1 X - 1 FG
TD (Transmit Data) 2 3 1 2 3 RD
RD (Receive Data) 3 2 1 3 2 TD
RTS (Request To Send) 4 7 2 8 5 CTS
CTS (Clear To Send) 5 8 2 7 4 RTS
SG (Signal Ground) 7 5 - 5 7 SG
DSR (Data Set Ready) 6 6 3 4 20 DTR
DTR (Data Terminal Ready) 20 4 3 6 6 DSR
Seri Porttan Dosya Aktarımı
Önceki bölümde anlatılan niteliklere uygun seri iletişim kablosu edinebildiyseniz şimdi seri portlar arasından dosya transferi için gerekli ayarlamaları yapabiliriz. Bunun için çok gerekli olmamakla birlikte, seri portu kullanacak isek başka amaçlar için de bize yardımcı olabilecek minicom uygulamasını sisteme kurabiliriz. Hemen gerekli kütüphanelerin neler olduğunu öğrenelim:
laptop:~/docbook/embedded$ ldd /usr/bin/minicom
libncurses.so.5 => /lib/libncurses.so.5 (0x4001b000)
libc.so.6 => /lib/libc.so.6 (0x4005a000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
Çıktıdan görüldüğü gibi minicom uygulamasının yanısıra SBC sistemimizde henüz bulunmayan libncurses.so.5 kütüphanesinin de taşınması gereklidir. Bu dosyaları (ağ bağlantımızın olmadığını varsayarsak) disketle SBC üzerine taşımalıyız.
minicom uygulamasının çalışabilmesi için /usr/share/terminfo dizini altında kullanacağımız uçbirim türlerine uygun dosyalar bulunmalıdır (Aslında bu gereklilik kullanılan ncurses kütüphanesinden kaynaklanmaktadır). SBC üzerinde linux, xterm ve xterm-color uçbirim türlerinin kullanılacak olduğunu düşünerek Linux yüklü sistemden aşağıdaki dosyaları, SBC üzerinde aynı dizine taşıyın:
/usr/share/terminfo/l/linux
/usr/share/terminfo/x/xterm
/usr/share/terminfo/x/xterm-color

minicom.jpg



Seri Konsol
Seri port kullanarak Linux sisteminize erişebilmek, özellikle SBC'ye bir monitor takmak istemediğinizde oldukça faydalı bir özelliktir. Bu yöntemde de seri iletişim kablosu kullanılmalıdır. Seri konsol hakkında ayrıntılı bilgiler Linux çekirdek kaynak kodlarından çıkan Documentation/serial-console.txt belgesinde mevcuttur. Burada hızlıca seri konsolu nasıl ayarlabileceğinizden bahsedeceğim.
Öncelikle işe çekirdekten başlamak gerekiyor. Seri konsol üzerinden bir Linux sistemine erişilecek ise, o sistemde kullanılacak olan çekirdekte bu destek etkin hale getirilmelidir. İlgili seçenek, çekirdek bileşenlerini seçim menülerinden Character devices bölümü altındaki Support for console on serial port seçeneğidir.
Çekirdek kısmı tamamlandıktan sonra şimdi bir seri portu bu amaçla kullanacağımızı belirtmemiz gerekiyor. Bunun için /etc/inittab dosyasının altına aşağıdaki gibi bir kayıt eklemeliyiz:
ttyS1::respawn:/sbin/getty -L ttyS1 38400 vt100
Bu örnekte ttyS1 yani COM2 portuna seri konsol olarak bağlanılabileceğini belirtiyoruz. İletişim hızı 38400 bps olarak ayarlanmış başka bir sistemden, seri port aracılığıyla bu sistemin COM2 portuna veri gönderildiğinde getty programı devreye girecek ve kimlik doğrulama aşamasından sonra kabuğa düşülebilecektir. Bu amaçla *NIX sistemlerde minicom, windows sistemlerde ise HyperTerminal gibi programlar kullanılabilir.
Yukarıdaki gibi ayarlamış olduğumuz bir seri konsol ile SBC sistemini yükledikten sonra (ve de /sbin/init çalıştıktan sonra) seri porttan sisteme girmemiz mümkün olmaktadır. Ancak bazen LILO satırına da müdahale etmemiz gerekebilir veya Linux çekirdeğinin yüklenirken normalde ekrana çıkardığı mesajları görmek isteyebiliriz. Bu aşamada henüz init programı çalışmaya başlamadığından seri konsol kullanımımıza hazır değildir. Seri konsolu LILO'dan itibaren kullanmak istediğimizde bu defa /etc/lilo.conf ayar dosyası içerisine aşağıdakine benzer bir kayıt ekleyerek lilo programına seri konsolu kullanmak istediğimizi belirtebilir ve istemiş olduğumuz verileri normalde olduğu gibi seri port üzerinden başka bir sisteme alabiliriz.
## Ortak ayarlar kısmına aşağıdaki satır eklenir
serial = 1,38400n8 ## 1 = ttyS1, 38400 baud rate, no parity, 8 bits
## çekirdek ayarları kısmına aşağıdaki satır eklenir
## Böyle bir kullanımda çıktı hem COM2 portuna hem de tty0'a gönderilir
append = "console=ttyS1,38400n8 console=tty0"
Bu satırları ekledikten sonra değişikliklerin etkin olması için lilo -v komutunu çalıştırmalısınız.

GRUB kullanmadığım için aynı işlemlerin GRUB'da nasıl yapıldığı hakkında bir fikrim yok, yapan biri olursa ve bana da iletirse buraya ekleyebilirim.
 
PAYLAŞIM İÇİN TEŞEKKÜRLER,ELİNE SAĞLIK.
 

Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)

Geri
Üst