原理明白了,但不知道C6和R13這兩該如何 選擇?有什么依據(jù)么?
關(guān)于RS232電平轉(zhuǎn)換電路 有圖q
樓主說的有道理,之前對電路的工作原理不太了解(主要是對總線上的TXD不發(fā)送數(shù)據(jù)時(shí)默認(rèn)為-15V的這個條件不知道),所以我上面說的不準(zhǔn)確。
關(guān)于工作原理我補(bǔ)充一下:
計(jì)算機(jī)串口通信的RS-232電平:用正負(fù)電壓來表示邏輯狀態(tài),邏輯1= -3V~-15V,邏輯0=+3~+15V。單片機(jī)串口通信的CMOS電平,邏輯1接近VDD,邏輯0接近VSS.有的單片機(jī)兼容TTL電平。計(jì)算機(jī)串口和單片機(jī)串口兩者之間通信就必須進(jìn)行RS-232/CMOS電平之間的轉(zhuǎn)換,集成轉(zhuǎn)換芯片就可以實(shí)現(xiàn)兩者之間的轉(zhuǎn)換,比如華清遠(yuǎn)見用的FS2410開發(fā)板用的是MAX3232,如果想節(jié)約成本,自己搭建電路進(jìn)行轉(zhuǎn)換也可以。
轉(zhuǎn)換的原理圖如下:
1、RS232_RXD:為RS-232電平信號接收端,RS232_TXD腳為RS-232電平信號發(fā)送端,沒有數(shù)據(jù)通信的時(shí)候RS232_TXD端總是保持在-3V~-15V。由于二極管D1與電容C4的作用使得在二極管D1與電容C4交接處的電壓也保持在-3V~-15V。
2、圖中的Vcc應(yīng)該是+5V,USART_TXD接單片機(jī)TXD,USART_RXD接單片機(jī)RXD。當(dāng)USART_TXD為"0"時(shí),Q1導(dǎo)通,則RS232_RXD電壓約為+5V,這個電壓在+3~+15V之間,根據(jù)RS232電平,它是"0";當(dāng)USART_TXD為"1"時(shí),Q1截止,從1中我們得知這個時(shí)候USART_TXD應(yīng)該是保持RS232電平邏輯的“1”。
3、從RS232轉(zhuǎn)換為CMOS電平那就簡單了,當(dāng)RS232_TXD為"1",即-3~-15V時(shí),Q2截止,USART_RXD電壓約為5V,為"1";當(dāng)RS232_TXD為"0"時(shí),Q4導(dǎo)通,電壓為0,電平為"0"。
因此樓主所說的電容和電阻確實(shí)是由通訊波特率的最慢情況來決定。計(jì)算過程如下:
假設(shè)通訊波特率為9600bit/s
那么電容必須維持10個Bit低電平的時(shí)間長度,(1/9600)*10≈10e-3s;
假設(shè)電容取10uF那么,根據(jù)電容電壓衰減0.707時(shí)的公式T=2πRC推出R≈15.92歐姆,可以估出電阻的取值要大于16歐姆便可以正常工作了。
所以上圖中R取5.1K遠(yuǎn)大于理論電阻最小值,在9600波特率的條件下滿足要求~
這個原理分析的清楚。
贊一個。
在HDMI的DDC上類似的應(yīng)用也存在的。
直接上原理圖和掃描后的仿真結(jié)果。
請大家注意一下R4的變化情況,從16歐姆直接掃到128歐姆的,何時(shí)掃描到3v以上?至少要至80歐姆以上,平時(shí)我用的時(shí)候都是選合是2.2k+100uF.
NPN和PNP管用的型號與之前兄弟們看到的不一樣,但是是常用型號。
至于輸入的信號,大家請看參數(shù)。
可能有不合理的地方,請大家提出,本人修改后再上圖.
以上的例子對于低波特率還是存在問題。
結(jié)果是很明顯的,如果傳輸?shù)奈粩?shù)多的情況下存在問題(這里不單單針對于UART了)。
我的輸入信號是一個連續(xù)的二進(jìn)制的輸入的。
但問題是針對于RC(前面兄弟們提到的參數(shù))的選擇,其實(shí)在串口下是可行的。但是為了可靠的設(shè)計(jì),我還是加深了一下。
可靠點(diǎn),大家可以選個100uF加2.2k左右。
但是應(yīng)用還是要結(jié)合實(shí)際考慮的。
基本上算是講完我想說的了.真有點(diǎn)啰嗦的感覺