官楓林,習友寶
(電子科技大學 電子工程學院,成都 611731)
官楓林(碩士研究生),研究方向為SoC設計與驗證。
DBPL(Differential Bi-Phase Level)編碼是一種超越傳統數字傳輸極限的編碼方式[1]。DBPL編碼被廣泛應用于以太網、工程測井儀器和鐵路應答器等工程應用中。在鐵路應答器中,通過DBPL編碼傳輸信號給列車車載處理器,實現對列車運行的控制。
本文設計了一種基于AT89LV51單片機控制的DBPL編碼信號的信號源系統,能夠產生DBPL編碼信號;同時設計了系統的電源管理模塊,保證系統的正常供電。
該信號源由時鐘復位模塊、DBPL信號產生電路、DCDC轉換電路、充電管理電路和A/D轉換電路組成。單片機AT89LV51控制編碼模塊產生DBPL信號;充電管理電路對系統所用電池進行充電管理,保證電池的充分充電;DC-DC轉換電路為單片機以及編碼邏輯產生穩定電壓的供電;A/D轉換電路采集電池電量信息,并告知單片機處理。信號源系統設計框圖如圖1所示。

圖1 信號源系統設計框圖
本設計中,DBPL信號[2]由作為能量載波的正弦波與脈沖編碼信號合成。脈沖編碼信號采用DBPL編碼,平均傳輸速率為564.48kb/s;能量載波為正弦波,信號頻率為8.82kHz。該模塊的輸入為8位待編碼的并行二進制數據,與AT89LV51單片機的P1.0~P1.7相接,由單片機控制提供輸入。DBPL信號產生電路原理圖如圖2所示。

圖2 DBPL信號產生電路原理圖
其中,并行轉串行電路采用一片8位并串轉換移位寄存器74166和一片計數器74163,計數器74163采用模8計數。當計數器計滿8個數時,清零計數器,重新開始計數;計數期間,8位并行數據按照時鐘節拍輸出。2分頻及64分頻采用計數器74163實現。微分電路采用D觸發器及門電路實現。并串轉換輸出Q1經過非門與微分電路取得的上升沿Q2相與,得出Q3,經過D觸發器實現2分頻輸出Q4,最后Q0與Q4異或求得編碼輸出。輸出8.82 kHz的方波和564.48kHz的脈沖波,再分別進行濾波、放大調理,然后合成為最終所要得到的DBPL信號。假設單片機輸入并行數據為11010011,則圖2中各點的波形如圖3所示。

圖3 原碼為11010011時各點波形
出于對系統便攜式的考慮,本系統采用可充電電池(6節鎳氫電池)對系統供電,每節電池的電壓為1.2V;同時,采用Maxim公司的電池管理芯片MAX713CPE對鎳氫電池進行管理,確保電池安全且完全充電,且由單片機對電源模塊進行控制和檢測。
MAX713CPE是一種用于鎳氫和鎳鎘電池的快速充電管理芯片,它具有以下特點[3]:
◆電池數量、充電時間以及電流大小可調;
◆零點電壓斜率檢測,對電池進行快速、涓流充電;
◆電池不充電時,芯片消耗最大電流僅為5μA;
◆所需外圍電路少,僅需一個PNP引腳便可實現基本的充電管理。
充電管理電路如圖4所示。VLIM引腳用于設定最大的電池電壓,它與電池電壓和電池節數存在如下關系:
(BATT+-BATT-)≤(VLIMIT×n)

圖4 充電管理電路
其中,(BATTC+-BATT-)為電池兩端電壓,n為電池節數,一般情況下將VLIMIT連接到REF引腳即可。PGM0和PGM1引腳用來設定被充電電池的節數(1~16節):根據需要將PGM0、PGM1有選擇地連接到V+、REF、BATT-中的任何一引腳或者懸空,本設計中充電電池設定為6節。PGM2和PGM3引腳用來設定最大快速充電時間,按照與設置PGM0和PGM1引腳相同的方法,可按需求設定最大快速充電時間(33~264min),本設計中設為120min。
本系統還實現電池電量的檢測,在圖4中通過放大器OP07EP檢測電池電壓并送入到A/D轉換電路[4],最后交給單片機進行處理。
電池電壓輸出為7.2V,充滿狀態下可達到7.4~7.6V。單片機所用電壓為3.3V,DBPL信號產生電路所需的電壓為5V,這就需要DC-DC轉換電路將7.2V的額定電壓轉換為5V和3.3V。采用兩級轉換:第一級將7.2V電壓轉換產生5V電壓供給DBPL信號產生電路,第二級將5V電壓轉換為3.3V供給單片機。系統采用SPX1117(SPX1117-5和SPX1117-3.3)作為 DC-DC轉換電路中的穩壓芯片[5]。該芯片的特點是低壓差,0.8A時壓差僅為1.1V,且電壓可選(為5V及3.3V)。DC-DC轉換電路如圖5所示。

圖5 DC-DC轉換電路
該系統設計完成之后,對其進行了詳細的測試實驗。測試結果表明,輸入信號能夠通過單片機編程得到很好的控制,信號源輸出的正弦波幅度和脈沖波幅度均達到應用要求,可以廣泛應用于仿真測試、項目實驗領域。如果需要進一步放大,須外接放大電路和外部電源。DBPL編碼信號傳輸速率為指定的564.48kb/s。電源管理電路能夠有效地對電池進行管理,充電時間大致保持在120~140 min,電池充滿后進入到涓流充電。在使用過程中,單片機可以通過A/D轉換電路實時監測電池的電量并告警。DC-DC轉換電路輸出的電壓穩定,且功耗低。
[1]陳新坤,周東,余敬東.Manchester編碼器的FPGA設計與實現[J].電子科技大學學報,2003(3).
[2]周軍,茍昌華,李小邦.FPGA實現曼徹斯特通信在測井中的應用[J].科技資訊,2010(2).
[3]蔣勇.可編程快速充電管理芯片 MAX712/MAX713及其應用[J].今日電子,2005(2).
[4]寧玉門,胡清.單片機控制AD轉換試驗在Protues虛擬環境中的實現[J].福建電腦,2009(6).
[5]姚雨迎,張東來,徐殿國.級聯式DC/DC變換器輸出阻抗的優化設計與穩定性[J].電工技術學報,2009(3).