不間斷持續(xù)奮戰(zhàn)了三周,工作也有了階段性的交付物,可以暫時(shí)空出一段時(shí)間思考與學(xué)習(xí)了;這段時(shí)間還是收獲很多的,有些地方需要實(shí)際體驗(yàn)才能收獲知識(shí)。
這次想總結(jié)一下電平轉(zhuǎn)換電路這一塊,可能這塊知識(shí)點(diǎn)大家覺(jué)得比較簡(jiǎn)單哈。
首先為什么要進(jìn)行電平轉(zhuǎn)換呢?最常遇到的問(wèn)題就是電平高低不匹配,例如3.3V與5V,3.3V與1.8V;例如有的MCU的IO口供電最高只能到3.3V,像SoC這種類型的芯片,甚至IO口還存在1.8V供電的情況,那么MCU與外設(shè)之間的IO交互就需要做電平轉(zhuǎn)換。(下圖來(lái)自于TI官網(wǎng))
具體到BMS上面,像RESET信號(hào)、WAKEUP信號(hào)、EN使能信號(hào)、甚至是SPI等通信信號(hào)都可能存在電平不匹配的狀態(tài);對(duì)于高速通信信號(hào),還是建議選用電平轉(zhuǎn)換芯片(下圖來(lái)自TI官網(wǎng)),選型也很容易找到,就是現(xiàn)在可能供貨不太好,哈哈。
先展開(kāi)一個(gè)知識(shí)點(diǎn),學(xué)習(xí)一下MCU內(nèi)部的GPIO結(jié)構(gòu),即數(shù)字輸入與輸出的內(nèi)部電路;下圖來(lái)自于ST官網(wǎng),描述的是STM32系列MCU的GPIO內(nèi)部結(jié)構(gòu),可以看到外部的I/O pin在其內(nèi)部分成了兩條支路,一條連接至輸入電路,另一條連接至輸出電路。(我本來(lái)想用BMS常見(jiàn)的MCU型號(hào)來(lái)舉例,但其規(guī)格書對(duì)內(nèi)部I/O電路描述得都太清晰)
針對(duì)輸入電路,如下圖(圖片來(lái)源于ST官網(wǎng)),它內(nèi)部可以配置成三種輸入模式:上拉、下拉以及懸空(高阻)。其中上下拉電阻是固定阻值的,這是指通過(guò)軟件可配置的情況;另外,在上電復(fù)位后GPIO也會(huì)有一個(gè)初始默認(rèn)狀態(tài),我遇到的很多MCU上電復(fù)位后初始默認(rèn)狀態(tài)是高阻輸入,但確實(shí)也有上電復(fù)位后默認(rèn)狀態(tài)為輸入下拉的,這些細(xì)節(jié)需要留意。
對(duì)于輸出電路,如下圖(圖片來(lái)源于ST官網(wǎng)),主要分為推挽輸出與OD輸出兩種,這個(gè)大家應(yīng)該也熟悉,這兩種也是可配置的;OD輸出用于一些特定場(chǎng)合,例如IIC的SDA信號(hào)就是OD輸出,它是為了避免總線競(jìng)爭(zhēng),其他場(chǎng)景還有就是為了做電平兼容使用。
接下來(lái)繼續(xù)前面的話題,最常被舉例的一個(gè)電平轉(zhuǎn)換電路如下圖所示:這個(gè)一般被用在IIC的SDA數(shù)據(jù)線上,實(shí)現(xiàn)雙向通信+電平轉(zhuǎn)換,其兩邊的I/O都是OD輸出、高阻輸入,具體工作原理大家可以自己分析一下,要求NMOS選擇低門限電壓的,有的時(shí)候還需要并聯(lián)一個(gè)肖特基二極管來(lái)降低導(dǎo)通壓降;這個(gè)電路特點(diǎn)是兩邊默認(rèn)高電平,可以用在低有效的電路。
換一個(gè)電路如下圖所示,這個(gè)電路也比較常見(jiàn),使用兩個(gè)NMOS做電平轉(zhuǎn)換,因?yàn)橐粋€(gè)MOS只能做反向,兩個(gè)MOS就又變成了同向;此電路是高電平有效,默認(rèn)輸出低電平。
下圖這個(gè)電路使用了一個(gè)PMOS、一個(gè)NMOS,也是同向的輸出;此電路是高電平有效,默認(rèn)狀態(tài)是低電平。
最后再看下這個(gè)電路如下圖,也是由一個(gè)NMOS和一個(gè)PMOS組成,同向輸出;它是低電平有效電路,默認(rèn)狀態(tài)是高電平。
上面三個(gè)電路大家可以使用三極管替代,邏輯是相同的,但是因?yàn)槿龢O管是電流型驅(qū)動(dòng),需要做電阻匹配,讓其工作在飽和或截止?fàn)顟B(tài);另外,三極管可以使用更低的電壓來(lái)做驅(qū)動(dòng),例如1.8V,只要滿足導(dǎo)通電壓即可,而使用1.8V驅(qū)動(dòng)MOS管,需要找很低門限的型號(hào);最后,還要留意與MCU輸入、輸出電路的兼容匹配。
總結(jié):最近氣溫明顯升高了,春天來(lái)了;以上所有,僅供參考。