2009-06-05 33 views
57

DTR/DSR ve RTS/CTS donanım akışı kontrolü arasındaki fark nedir? Her biri ne zaman kullanılır? Neden birden fazla donanım akış kontrolüne ihtiyacımız var? :)DTR/DSR ve RTS/CTS akış kontrolü arasındaki fark nedir?

+9

Bu sorunun gerçekten doğru yer olup olmadığından emin değilim, ancak hissettiğim büyük nostalji dalgası için +1. Her ne kadar ben hatırlatmak için -1 vermemek için emin değilim rağmen a) Kaç yaşında olduğumu ve b) Ben bunun için cevap biliyorum ama unutmuş kullandım. – AnthonyWJones

+0

Bu, muhtemelen süper kullanıcı.com'a aittir ... ancak henüz mevcut değil. – derobert

cevap

44
  • DTR - Veri Terminali Hazır
  • DSR - Veri Hazır
  • RTS -
  • CTS Gönder için istek - Temizle

şeyler yapmanın birden çok yolu vardır Gönder çünkü standartlarda hiçbir zaman hiçbir protokol bulunmuyordu. Ekipmanınızın uyguladığı "standart" standardı kullanırsınız.

Sadece isimlere dayanarak, RTS/CTS doğal bir uyum gibi görünüyor. Ancak, zamanla gelişen ihtiyaçlardan geriye doğrudur. Bu sinyaller, bir terminalin veri dolu bir ekranı toplu olarak gönderdiği bir zamanda yaratıldı, ancak alıcı hazır olmayabilir, bu nedenle akış kontrolüne ihtiyaç duyulabilir. Daha sonra sorun, terminalin ana bilgisayardan gelen verilerle yetişememesi nedeniyle tersine çevrilebilirdi, ancak RTS/CTS sinyalleri yanlış yöne gider - arayüz ortogonal değildir ve başka yöne giden sinyaller yoktur. Ekipman üreticileri, DTR ve DSR sinyalleri de dahil olmak üzere en iyi şekilde adapte edildi.

+1

Güzelce özetlenmiştir. Sonra 'yumuşak' akış kontrol xOn/xOff olmaya geldi. – n8wrl

+0

Not: DTR/DSR, 80'lerin ortalarından sonra RTS/CTS'den daha az yaygınlaştı. Linux kernal hiçbir zaman DTR/DSR desteklemedi: linux kernal DTR/DSR'yi desteklediğinde, 232 seri eskimişti. – david

+5

@david Bu sinyaller RS232 ile sınırlı değildir, ancak TTL UART'larda da kullanılır. Ve bunlar eskimeden uzak değil. – glglgl

24

Aralarındaki fark, farklı iğneler kullanmalarıdır. Cidden, işte bu kadar. Her ikisinin de var olmasının nedeni, RTS/CTS'nin aslında bir akış kontrol mekanizması olmamasıydı. Gönderen ve kimlerin aldığını koordine etmek için yarı çift yönlü modemlerdi. RTS ve CTS, akış kontrolü için çok kötüye gitti, bu yüzden standart hale geldi.

+1

Yarım dupleksini tamamen unuttum. Belirsiz bir yazıcı/kart okuyucusunda, hareket halinde gördüğümü hatırlıyorum. Bu cevap için teşekkürler. –

+0

Artık superuser.com var ve bize sorduğumuzda, linux kerninin DTR/DSR sinyalini desteklemediğini söylüyor. http://superuser.com/questions/345005/how-to-do-hardware-dtr-dsr-flow-control-on-linux-serial-port-programming. Başka bir noktaya işaret eden nokta: DTR/DSR sinyallemesi daha az yaygındır/akıllı modemler tarafından kullanılmamıştır. – david

İlgili konular