鉅大LARGE | 點擊量:1228次 | 2020年06月01日
PIC單片機降低電池供電系統功耗問題解析方法
引言
20世紀90年代以來,隨著集成電路特點線寬的持續縮小以及芯片密度和工作頻率的相應新增,降低功耗已經成為亞微米和深亞微米超大規模集成電路設計中的一個重要考慮因素。功耗的新增會帶來一系列問題,例如電路參數漂移、可靠性下降、芯片封裝成本新增等。因此,系統的功耗在整個系統設計中,尤其是在采用電池供電的系統中顯得十分重要。
Microchip公司pIC系列的單片機為設計高性能、低功耗的單片機系統供應了很好的解決方法。下面從低功耗設計方法及具體例子來介紹pIC單片機低功耗應用。
1低功耗設計方法
為使系統工作在低功耗狀態,必須正確設置單片機的配置及工作方式。下面結合最常用的pIC12、pIC16等單片機介紹低功耗系統的設計方法。
1.1基本設計方法
有許多技術可以降低系統的功耗,最常用的是Sleep模式。程序執行一條SLEEp指令,便進入了休眠(Sleep)模式。要Sleep模式下,晶振停止振蕩,而此時單片機在3V電源條件下,只有1A的電流。系統工作時,單片機可以采用看門狗或外部事件周期性地喚醒單片機,利用電子開關為系統供應電源,以減少系統待機功耗,延長電池使用時間。
單片機的工作頻率和功耗的關系也很大,頻率越高,功耗越大。在采用32kHz晶振、3V工作電壓時,pIC12、pIC16等系列單片機的典型工作電流只有15A;而采用4MHz晶振、5V工作電壓時,單片機的典型工作電流達到幾mA。在許多低功耗的場合,采用低速晶振實現低功耗非常有效。假如單片機采用RC振蕩,還可以通過I/O口的操作改變振蕩電阻,從而改變單片機工作頻率,達到節能的目的。如圖1所示,1個I/O引腳可以在等待狀態下將并聯電阻R1去掉,降低單片機工作頻率。當單片機要工作時,可將I/O引腳設置為輸出并輸出高電平,從而提高振蕩頻率。
1.2振蕩電路設計
在單片機系統設計中,振蕩電路的設計是十分重要的一個環節。pIC系列單片機的典型振蕩電路如圖2所示。
一般情況下,設計人員按照廠家給出的參數表進行選擇。假如系統能夠正常工作,也就不再進行改進了。其實,這是不合適的。因為Microchip的單片機根據型號和版本的不同,工作電壓在直流2.5~5.5V的范圍內,汽車級溫度可以在-40~-125℃范圍內,而參數表中只給出了有限的幾種情況,實際環境參數會對振蕩電路的性能出現很大的影響。如高溫、低電壓可減小振蕩環路增益,而從降低振蕩頻率或者難以啟動;低溫、高電壓可以使環路增益變大,從而使晶振過驅動,出現損壞的潛在危險或者振蕩電路工作的高次諧波頻率上升,加大系統功耗。因此,如何正確設計系統的振蕩電路十分必要。關于pIC系列單片機,一般的設計步驟如下:
①選擇晶振。根據系統要的振蕩頻率進行晶振的選擇。此外,晶振的工作溫度和頻率穩定度也是十分重要的指標。
②選擇振蕩器類型。pIC系列單片機有RC、Lp、XT、HS等振蕩模式。除RC模式外,振蕩模式的選擇實際上就是環路增益的選擇。低增益對應低振蕩頻率,高增益對應高振蕩頻率。一般根據實際要的工作頻率可參考數據手冊來選擇。
③選擇C1、C2。理想的情況是,保證系統在高溫和最低工作電壓下能夠正常工作,使得電容在數據手冊推薦的范圍內最小。同時選擇C2比C1大一些以加大相移,使其有利于振蕩電路的上電啟動。
④選擇Rs。在以上參數都已經選定后要決定Rs的大小。簡單的辦法是讓系統工作在最低溫度和最大電壓情況下,此時得到的應該是時鐘電路最大輸出幅度。用示波器觀察引腳OSC2的輸出波形(注意,示波器的探頭將給電路引入一個電容,一般為幾pF),假如發現正弦波的峰(接收Vdd處)和谷(接收Vss處)被削平或壓扁,說明驅動過載,要在OSC2和C2間加入1個電阻Rs,一般1kΩ左右或小于1kΩ。Rs不宜過大,過大將使得輸入和輸出出現隔離,從而出現較大的噪聲。當發現要一個較大的Rs才能消除過驅動時,可以新增負載電容C2來補償。C2一般選擇在15~33pF之間。
系統振蕩電路的設計對系統的穩定性、功耗等影響很大。一般情況下,系統從Sleep狀態下喚醒時,振蕩電路最難啟動(尤其系統工作在高溫、低壓、低頻的情況下)。此時,電阻Rs有利于振蕩電路的啟動,因為廉價的碳膜電阻容易出現白噪聲,從而幫助電路起振。此外,選擇C2稍大于C1以增大相移,也有利于電路起振。
2具體應用例子
2.1系統組成及框圖
系統重要由pIC單片機、雙音頻解碼拔號電路、語音集成電路、接口電路、Vcc電源控制電路、射頻發射電路和EEpROM組成,可完成對家用電器的控制和對報警求援語音信息的自動傳送,如圖3所示。
2.2控制器工作方式
*當與控制器相串聞的電話機(以下稱為本地機)處于摘機時,電話線輸入電壓發生變化,引起CD40106的2腳輸出電平變化,輸入到CpU的RB0端口出現中斷信號,喚醒CpU,控制器進入工作狀態。通過本地機的拔號盤對控制器的各種功能進行控制。如控制電視、音響、照明燈等電器電源的開關。
*當控制器接收到振鈴信號時,CD40106的4腳輸出電平變化,輸入CpU的RB6端口出現中斷信號,喚醒CpU進入工作狀態,并對振鈴信號進行計數;達到設定鈴聲數后,使控制器進入電話接收狀態,開始接收遠程傳輸DTMF信號,經MT8880解調得到的信號通過IRQ向單片機發出中斷信號,將數據存入寄存器,經CpU運行,對控制器的各種功能進行控制。
*當控制器作為報警器,并處于警備狀態時,報警探頭時刻檢測防范區域的情況;當探頭向控制器發出警情信息,輸入CpU的RB5中斷出現信號,控制器進入工作狀態,從EEpROM芯片讀出預先設置的報警電話號碼,經MT8880轉換為DTMF信號,自動撥號,以語音形式將信息傳送給用戶或直接報警。
2.3應用電路
(1)電話接口電路
電話機與控制器采用控制器在前,電話機在后的串聯方式,可實現電話機對控制器各種功能的控制。接口電路由過壓保護電路、極性轉換電路和中斷請求電路組成,如圖4所示。
①過壓保護電路。在電話線回路上加入了一個壓敏電阻R,它的用途是當它兩端的電壓大于其工作電壓時呈短路狀態,從而保護后級電路免受高壓危害。當加到它的兩端的電壓小于其工作電壓,壓敏電阻呈開路狀態,對后級電路的工作沒有任何影響。在本設計中,壓敏電阻的工作電壓為220V。
②極性轉換電路。由于在電話線上傳輸的是交流信號,為了使信號的極性固定,在電路中加入電橋,進行全波整流。
③中斷請求電路。為延長電池工作時間,CpU在待機時處于休眠的省電狀態,在實現遠程電話機和本地機對控制器功能控制時,由中斷請求電路將CpU喚醒。
上一篇:USB電池充電基礎:應急指南