越來越多的嵌入式電子產(chǎn)品為了追求體積小巧和應(yīng)用便利都采用了電池供電,這就要求設(shè)備自身功耗盡量要低。這對(duì)于使用加密芯片的用戶來說,會(huì)造成一定困擾。因?yàn)椴患蛹用苄酒瑫?huì)有安全隱患,加入加密芯片又會(huì)增加功耗,因此陷入兩難處境。本期來介紹兩種解決辦法。第一個(gè)“斷電處理”方案,通用性較強(qiáng),第二個(gè)“使用帶有關(guān)斷模式的加密芯片”方案,在節(jié)約板上面積和減少M(fèi)CU資源占用上有更明顯的優(yōu)勢。
方案一、斷電處理
通過引入開關(guān)電路,在待機(jī)狀態(tài)下,將加密芯片進(jìn)行斷電處理,是一個(gè)通用的做法。
具體方法如下:
第一步,在加密芯片VCC上增加一個(gè)三極管開關(guān)電路;
第二步,三極管的基極連接至MCU的一個(gè)GPIO;
第三步,MCU端修改代碼實(shí)現(xiàn)功能為:當(dāng)需要關(guān)斷加密芯片供電時(shí),MCU的GPIO通過電平切換控制三極管使其集電極與射極處于斷開狀態(tài),進(jìn)而讓加密芯片VCC處于斷開狀態(tài);
第四步,MCU將與加密芯片連接的其他通信引腳設(shè)置為輸出低電平狀態(tài),這樣做的目的是防止MCU向加密芯片灌入電流產(chǎn)生功耗。
如果需要加密芯片繼續(xù)工作時(shí),MCU的GPIO將三極管打開,讓芯片重新上電,之后加密芯片就可以繼續(xù)恢復(fù)工作了。
但是,上述方法除了具備通用性好,操作邏輯簡單的特點(diǎn)外,卻也引入了一些問題。例如,外加開關(guān)電路會(huì)占用PCB板上空間資源,對(duì)于一些小型、微型PCB產(chǎn)品,無疑讓PCB設(shè)計(jì)人員非常為難,甚至無法騰出多余空間留給開關(guān)電路。再者來說,畢竟要通過MCU來持續(xù)不斷控制加密芯片,保持相關(guān)引腳輸出固定電平,這對(duì)MCU的資源也是一個(gè)占用消耗,畢竟很多產(chǎn)品MCU的GPIO資源是極其寶貴的,單獨(dú)開辟出一個(gè)控制開關(guān)電路是無法接受的。
方案二、使用帶有關(guān)斷模式的加密芯片
針對(duì)上述不能采用斷電方案的客戶,可以選用具備關(guān)斷模式的加密芯片,例如LCS4110芯片。在需要進(jìn)入待機(jī)的時(shí)刻,MCU向加密芯片發(fā)送設(shè)置指令后,后者自動(dòng)進(jìn)入睡眠模式,此時(shí)芯片內(nèi)部除喚醒電路處于工作狀態(tài)外,其他電路模塊均處于關(guān)斷狀態(tài)(斷電),因此產(chǎn)生的功耗非常小,僅為200nA左右。
若想激活加密芯片使其恢復(fù)工作態(tài),只需要發(fā)送任意字節(jié),即可迅速恢復(fù)。這樣一來,用戶無需單獨(dú)設(shè)計(jì)開關(guān)電路,也不需要浪費(fèi)MCU端寶貴的GPIO資源,就可以輕松的實(shí)現(xiàn)降低功耗的需求,不失為一個(gè)良策。