郭建昌
(1.南陽(yáng)理工學(xué)院,河南 南陽(yáng) 473000;2.中國(guó)礦業(yè)大學(xué)(北京)機(jī)電與信息工程學(xué)院,北京 100083)
鋰電池在便攜式電子設(shè)備中應(yīng)用廣泛,電源軟開關(guān)技術(shù)也與之配合在便攜式電子設(shè)備中廣泛應(yīng)用。如手機(jī),同一個(gè)按鍵能實(shí)現(xiàn)開機(jī)和關(guān)機(jī)功能,與直接采用機(jī)械開關(guān)實(shí)現(xiàn)電源的開和關(guān)完全不同,而是采用電子開關(guān)和MCU(微控制單元)配合來(lái)實(shí)現(xiàn)便攜式電子設(shè)備的電源開關(guān)。同時(shí)便攜式電子設(shè)備中的MCU大多采用ISP(在系統(tǒng)可編程)和JTAG(聯(lián)合測(cè)試行動(dòng)工作組)技術(shù)來(lái)實(shí)現(xiàn)程序的下載。二者的應(yīng)用相當(dāng)成熟,目前市場(chǎng)上常見的51單片機(jī)中基本上都采用ISP實(shí)現(xiàn)程序下載,功能更強(qiáng)大的一些51單片機(jī)、AVR單片機(jī)和ARM采用JTAG技術(shù)來(lái)實(shí)現(xiàn)程序下載。
在實(shí)際工程應(yīng)用中,鋰電池、電源軟開關(guān)技術(shù)和JTAG、ISP結(jié)合在一起實(shí)現(xiàn)程序下載會(huì)出現(xiàn)無(wú)法實(shí)現(xiàn)下載或者燒毀DC/DC(直流轉(zhuǎn)直流)電源芯片的故障。筆者基于工程開發(fā)中兩例程序下載故障問(wèn)題的分析,提出一種基于JTAG和ISP的新型編程電路,通過(guò)工程應(yīng)用驗(yàn)證,能有效解決下載中的兩類問(wèn)題。
在線可編程下載電路故障模型包括基于JTAG和基于ISP兩種,二者雖然模型不同,但電路中都包括鋰電池、電子開關(guān)、DC/DC、MCU和下載電路,采用電源軟開關(guān)設(shè)計(jì)。
電源軟開關(guān)電路原理如圖1所示,包括鋰電池、電子開關(guān)、DC/DC電路、MCU和電源按鍵或觸發(fā)電路。觸發(fā)電路可以是另外一個(gè)MCU或者一個(gè)系統(tǒng),比如上位機(jī)。電源軟開關(guān)電路工作原理如下:按下電源按鍵或由觸發(fā)電路觸發(fā),電子開關(guān)使能端有效后打開,鋰電池給DC/DC電路供電,實(shí)現(xiàn)需要的電壓,包括多電壓系統(tǒng),可以采用多個(gè)不同輸出電壓的DC/DC,MCU實(shí)現(xiàn)上電啟動(dòng),啟動(dòng)后給電子開關(guān)一個(gè)有效使能信號(hào),此時(shí)不管電源按鍵或觸發(fā)電路對(duì)電子開關(guān)使能端是否有效,電子開關(guān)使能端由MCU控制,一直保持有效,鋰電池實(shí)現(xiàn)對(duì)整個(gè)系統(tǒng)的供電。需要關(guān)閉電源時(shí),只需要給MCU一個(gè)關(guān)閉電源觸發(fā)信號(hào)即可,觸發(fā)源可以是電源按鍵,就如手機(jī)的電源開關(guān),也可以是可視界面中的系統(tǒng)關(guān)機(jī)菜單,或者應(yīng)用程序中的關(guān)機(jī)菜單。

圖1 基于鋰電池的嵌入式軟開關(guān)原理
基于JTAG的在線可編程下載電路故障模型是在設(shè)計(jì)基于ARM9和WinCE的便攜儀中出現(xiàn)的[1],電路下載原理如圖2所示。故障現(xiàn)象是通過(guò)JTAG接口無(wú)法實(shí)現(xiàn)bootloader程序下載,但如果ARM9中已經(jīng)有bootloader程序則可以通過(guò)JTAG接口實(shí)現(xiàn)系統(tǒng)下載。通過(guò)分析電路原理圖和實(shí)際測(cè)試確認(rèn)是電源電路中針對(duì)JTAG下載設(shè)計(jì)不完整導(dǎo)致,主要是電源軟開關(guān)電路的設(shè)計(jì)。JTAG下載時(shí)是先連接好JTAG下載器,按下電源鍵然后進(jìn)行下載。無(wú)法下載原因是電路由JTAG通過(guò)電子開關(guān)供電,ARM9中在沒(méi)有bootloader程序時(shí)按下電源鍵無(wú)法實(shí)現(xiàn)對(duì)電子開關(guān)的使能控制,也就是說(shuō)ARM9沒(méi)有實(shí)現(xiàn)供電,所以無(wú)法下載,但bootloader下載后就可以實(shí)現(xiàn)對(duì)電子開關(guān)的使能控制,所以通過(guò)JTAG能實(shí)現(xiàn)后續(xù)WinCE系統(tǒng)的下載。這種故障現(xiàn)象可采用一個(gè)臨時(shí)辦法解決:下載bootloader時(shí)一直按著電源鍵,使電子開關(guān)使能端強(qiáng)制有效,直到下載完畢。因?yàn)檫@種下載只在生產(chǎn)完成后下載一次即可,正常使用中不需要,但不熟悉的測(cè)試工程師就會(huì)面臨麻煩,也不符合電子電路設(shè)計(jì)規(guī)范。

圖2 基于JTAG的在線可編程下載電路原理
基于ISP的在線可編程下載電路故障模型是在設(shè)計(jì)基于AVR(ATMEL8L)單片機(jī)的電力線接地監(jiān)測(cè)節(jié)點(diǎn)中出現(xiàn)的[2],電路下載原理如圖3所示。故障現(xiàn)象是多次下載程序后無(wú)法下載,最終確認(rèn)是電源電路中DC/DC芯片燒毀,輸出管腳對(duì)地短路。換上新的DC/DC芯片后能正常下載,但多次下載還是出現(xiàn)同樣的故障。通過(guò)分析后確認(rèn)是由于下載電路ISP的電源VCC直接給AVR供電,電源VCC與DC/DC輸出連在一起,也就是說(shuō)下載電源不經(jīng)過(guò)軟開關(guān)的電子開關(guān)、DC/DC電路,同時(shí)下載電源電壓為5V,這樣形成DC/DC輸出電壓比輸入電壓高的情況,長(zhǎng)時(shí)間就導(dǎo)致DC/DC芯片燒毀。

圖3 基于ISP的在線可編程下載電路原理
上面兩類分別為MCU在下載時(shí)不能使能電子開關(guān)和在DC/DC后直接給MCU供電導(dǎo)致DC/DC芯片燒毀。基于工程實(shí)踐,筆者設(shè)計(jì)出一種新型的基于鋰電池的嵌入式電源軟開關(guān)電路,能解決這兩類下載問(wèn)題,電路模型原理如圖4所示。

a. 高電平使能控制有效

b. 低電平使能控制有效
電子開關(guān)使能控制分為高電平和低電平有效,如果是高電平使能控制有效,則新型電路如圖4a,在圖1的基礎(chǔ)上增加兩個(gè)二極管D1和D2。該電路的工作原理為:正常使用時(shí)通過(guò)D1反向截止,使鋰電池不能控制電子開關(guān)使能端,這樣保證電子開關(guān)的使能功能不受影響;通過(guò)D2反向截止,使電子開關(guān)使能控制信號(hào)不影響鋰電池的供電;也就是說(shuō)通過(guò)D1和D2,正常使用時(shí)該電路不影響基于鋰電池的嵌入式電源軟開關(guān)電路的功能。下載程序時(shí),下載電路通過(guò)JTAG或者ISP方式下載,通過(guò)D1下載器電源作為電子開關(guān)的輸入;通過(guò)D2強(qiáng)制電子開關(guān)使能端在整個(gè)下載過(guò)程中一直有效,從而實(shí)現(xiàn)電子開關(guān)的使能控制。該電路解決了程序下載中軟開關(guān)中MCU不能啟動(dòng)控制電子開關(guān)的問(wèn)題,同時(shí)因?yàn)椴捎孟螺d器通過(guò)電子開關(guān)、DC/DC實(shí)現(xiàn)系統(tǒng)供電,不存在電源匹配的問(wèn)題,特別是存在多電源的系統(tǒng)也沒(méi)有問(wèn)題,也就不存在直接給MCU供電時(shí)燒毀DC/DC芯片的問(wèn)題。如果電子開關(guān)是低電平使能控制有效,則可在圖2的基礎(chǔ)上,在D2后增加一個(gè)反相電路,比共射極反相電路或非門電路;也可在圖3的基礎(chǔ)上增加一個(gè)電阻R,電子開關(guān)使能端由下載電路地(GND)控制(圖4b)。需要注意的是,此處的R一般建議采用1kΩ,不能去掉,否則電子開關(guān)使能端直接接地,不再受MCU控制。
這種新型編程電路在改版后的WinCE便攜儀和基于AVR單片機(jī)的電力線觸地監(jiān)測(cè)節(jié)點(diǎn)中得到了應(yīng)用,很好地解決了下載中存在的問(wèn)題。
基于AVR單片機(jī)的電力線接地監(jiān)測(cè)節(jié)點(diǎn)中軟開關(guān)、ISP下載電路如圖5所示[3]。電子開關(guān)采用AAT4610,輸入端為鋰電池VBAT,使能端ON高電平有效,其使能控制由上位機(jī)來(lái)實(shí)現(xiàn),DC/DC采用TPS79330,獲得AVR單片機(jī)ATMEL8L的工作電源為3V。ISP下載電路應(yīng)用了設(shè)計(jì)的新型下載電路,下載電路提供的電源VISP通過(guò)二極管D1與VBAT連接,這樣下載中鋰電池拔出與否都可以,VISP通過(guò)D2與電子開關(guān)ON端連接,這樣下載過(guò)程中ON保持有效,不需要上位機(jī)電源使能控制來(lái)配置。這樣的新型下載電路,不管在什么狀態(tài)下都可以直接實(shí)現(xiàn)程序下載。通過(guò)工程實(shí)際應(yīng)用,該方法達(dá)到設(shè)計(jì)目的,沒(méi)有出現(xiàn)無(wú)法下載和燒毀DC/DC芯片的情況。

圖5 基于ISP的新型編程電路
基于JTAG和ISP的在線可編程下載新型電路雖然只在常規(guī)電路中增加了兩個(gè)二極管或一個(gè)二極管、一個(gè)電阻,但解決了基于鋰電池的嵌入式電源軟開關(guān)電路與基于JTAG和ISP的在線可編程下載電路的故障,此電路原理具有通用性,使JTAG在下載中不用考慮額外的操作,便于不同嵌入式工程的調(diào)試,同時(shí)使ISP下載方式也更加便捷,不用考慮軟開關(guān)的強(qiáng)制打開問(wèn)題,特別是沒(méi)有
按鍵而是由另外電路控制的電子開關(guān)。