RS232是工業上常用的串口標準,無論是PLC的RS232串口模塊,還是工控機的串口(COM),輸出的電平都稱為RS232電平。同時我們知道這些模塊的內部控制單元都是單片機,其電平為TTL電平。那麼TTL電平和RS232電平有什麼不同?它們之間又是怎麼轉換的呢?今天這篇文章,我們就來談談這個話題。
TTL電平是TTL電路輸出的電平,其中「TTL」是英文「Transistor-Transistor Logic」的縮寫,中文翻譯為「電晶體-電晶體邏輯」,因此TTL電路就是「電晶體-電晶體邏輯電路」。
在數字電子技術中,使用電晶體(三極體)可以構成不同的邏輯電路,常見的有「TTL與非門電路」、「TTL或非門電路」、「集電極開路與非門電路」等等。下面這張圖,是TTL與非門電路的電路圖:
在該電路中,當輸入端全是高電平(Ua=Ub=Uc=3.6V)時,T2和T5導通,T3微導通,T4截止,輸出電壓Uy=0.3V;
當輸入端有低電平(例如:Ua=0.3V ,Ub=Uc=3.6V)時,T2和T5截止,T3和T4導通,三極體BE結導通壓降為0.7v,則Uy=5V-0.7V-0.7V=3.6V。
我們看到,TTL電路的工作電壓是5V,它的輸出可以是高電平(3.6V)或者低電平(0.3V)。
由於電平是一個連續變化的電壓範圍,為了用這種模擬量的電壓來表示數字量的邏輯1和邏輯0,TTL電平規定:
再來看看RS232電平。RS232是美國電子工業協會於1962年發布的串行通信接口標準,其中RS為英文「Recomend Standard」的縮寫,中文翻譯為「推薦標準」,232為標示號。該標準對串行通信的物理接口及邏輯電平都做了規定。
最簡單的RS232通信由三條數據線組成,即TxD、RxD和GND。RS232採用負邏輯電平,即-15V~-3V代表邏輯"1",+3V~+15V代表邏輯"0"。這裡的電平,是TxD線(或者RxD線)相對於GND的電壓。(關於物理接口,請參考文章:工業串口通信之掀起串口的蓋頭)
可見,TTL電平和RS232電平,無論是在電壓範圍還是在極性上(RS232是負邏輯)都有很大的不同。顯然,這兩種電平是不能直接相連的。
為了把單片機的TTL電平轉換成RS232電平,通常我們需要一個專用的轉換晶片,比如TI公司的MAX3232或者ST公司的ST3232。
下面這張圖,是MAX3232的外觀與引腳圖:
MAX3232一端與單片機的引腳相連,另一端與RS232的串口相連,完成了TTL電平到RS232電平的轉換。其原理圖如下:
好了,關於TTL電平與RS232電平的內容就先聊到這裡,歡迎登陸方正智芯官網(www.founderchip.com)瀏覽更多技術類文章。