MAXQ3120 混合信號微控制器的應(yīng)用案例
監(jiān)視系統(tǒng)的設(shè)計者和廠商一直希望微控制器能夠為日常監(jiān)視應(yīng)用提供不斷增加的通用功能,包括滿足用電計量、汽車監(jiān)控、數(shù)據(jù)搜集和傳感器調(diào)節(jié)等方面的要求。MAXQ3120 就是為了滿足這些要求而開發(fā)的低功耗、高速微控制器。它的主要技術(shù)規(guī)范如下。
監(jiān)視系統(tǒng)的設(shè)計者和廠商一直希望微控制器能夠為日常監(jiān)視應(yīng)用提供不斷增加的通用功能,包括滿足用電計量、汽車監(jiān)控、數(shù)據(jù)搜集和傳感器調(diào)節(jié)等方面的要求。MAXQ3120 就是為了滿足這些要求而開發(fā)的低功耗、高速微控制器。它的主要技術(shù)規(guī)范如下。
•16 位、每秒8 百萬條指令(8MIPS)、單周期RISK 核
•32kB 閃存(flash 存儲器)
• 512B RAM
•具有獨立波特率產(chǎn)生器的2 個UART
•3 個定時器,其中1 個支持PWM D/A
• 紅外通信功能
•可驅(qū)動112 段LCD 的控制器
• 依靠電池備份、具有日歷和亞秒鬧鐘功能的實時時鐘
•16 x 16 位單周期乘法器和40 位累加器
•2 個16 位精密模數(shù)轉(zhuǎn)換器(ADC)
下面介紹利用MAXQ3120 微控制器的以上特性和模擬I/O 及DSP 功能可以完成一些什么樣的任務(wù)。
語音記錄子系統(tǒng)
概念: 給一組工程師一片ADC,他們就會發(fā)現(xiàn)如何用它來記錄語音。但是,除了簡單的記錄聲音,MAXQ3120 還能夠做很多事情。以MAXQ3120 為核心,配合用戶接口元件和廉價的NAND 閃存,就可構(gòu)建一個功能完善的語音記錄子系統(tǒng)。
細(xì)節(jié): 可以利用MAXQ3120 的一個ADC 和PWM 定時器實現(xiàn)音頻I/O。ADC 的額定輸入電壓為+1V 到-1V,其內(nèi)置的前置放大器的可編程增益可達(dá)16。通常,具有內(nèi)置阻抗匹配的電容式拾音頭可以直接連接到ADC 的輸入端。如果需要低噪聲或高增益,可以采用Maxim 公司的前置放大器MAX4467 ,該放大器能為拾音頭提供所需的偏置,且為電池供電的應(yīng)用提供功耗極低的關(guān)斷模式。在輸出端,用一個單級放大器驅(qū)動揚聲器,該放大器同時還具有一定的抗混疊和PWM 平滑功能。
音頻信號被轉(zhuǎn)換成數(shù)字信號后,必須進(jìn)行壓縮和存儲,以備重放。8MIPS 的處理能力使MAXQ3120 擁有足夠的“馬力”來應(yīng)付許多常用的標(biāo)準(zhǔn)語音編碼任務(wù)。此領(lǐng)域的“金科玉律”是ITU G.711 編碼,其工作速率為64kbps ,每秒發(fā)送和接收8000 個8 位采樣。ITU G.711 編碼有兩種不同的傳遞函數(shù),用來將12 位采樣值轉(zhuǎn)換為8 位編碼字。這兩種函數(shù)就是通常所謂的A 律(主要用在歐洲)和µ律(主要用在美國)。
如果期望更高的壓縮率,可以犧牲一些話音質(zhì)量,采用ITU G.726 編碼。G.726 編碼采用自適應(yīng)差分脈沖編碼調(diào)制(ADPCM)方案對語音信號進(jìn)行更高效率的編碼。這種編碼支持多種位率,最低為16kbps 。對大多數(shù)應(yīng)用來說,該編碼要求的處理速度不大于3MIPS。ITU G.711 和ITU G.726 編碼都只需要很少的RAM。在錄音階段,定時器每125µs (8MHz 時鐘頻率下每1000 個處理器周期)產(chǎn)生一次中斷請求,微處理器響應(yīng)中斷后,計算在上一個定時器周期內(nèi)得到的采樣值的平均值(二或三個采樣,ADC 每48µs 采樣一次),以便獲得需要的8kHz 采樣率。之后,所采集的16 位采樣就可采用選定的編碼方案進(jìn)行編碼。在回放時,采樣數(shù)據(jù)被線性化后送到PWM 控制器,驅(qū)動揚聲器。
壓縮后的音頻數(shù)據(jù)就可用于存儲,但MAXQ3120 微控制器除了程序閃存外沒有其他的存儲器,因此需用外部存儲器來存儲語音數(shù)據(jù)。對于此應(yīng)用性價比最高的外部存儲器是NAND 閃存,其容量可達(dá)8 吉位。對于16kbps 編碼,這種器件可提供超過6 天的語音存儲。但是,NAND 閃存并不完善。首先,大多數(shù)NAND 閃存器件都帶有一個“瑕疵圖”,告訴應(yīng)用軟件在存儲器陣列中的何處有“壞點”存在。其次,就像其他的可擦除存儲器一樣,在長期使用后,NAND 閃存的有些單元會喪失存儲能力。幸運的是,NAND 閃存的這些缺陷對語音應(yīng)用的影響不大,不像對固態(tài)磁盤等應(yīng)用的影響那么大。在語音應(yīng)用中,NAND 閃存的這些缺陷可以被忽略,它們最多使語音中存在瞬間干擾。
對于容量如此巨大的語音存儲,必須進(jìn)行有效的存儲管理。這項工作由系統(tǒng)的用戶接口部分完成,用戶接口部分的核心是LCD 控制器。它能夠驅(qū)動4 個公共面上的28 段顯示,MAXQ3120 的LCD 控制器兼容于大量現(xiàn)有的3V LCD 玻璃??梢苑浅5偷某杀精@得定制的LCD 模塊。
用戶可以通過連接到MAXQ3120 通用I/O 端口的按鈕來控制語音記錄系統(tǒng)。MAXQ3120 有4 個8 位通用I/O 端口與器件的其他功能共用。
還需要做什么? MAXQ3120 是用于高級語音記錄系統(tǒng)的理想微控制器。在利用它設(shè)計語音記錄系統(tǒng)時,設(shè)計者僅需要完成下列工作:
•設(shè)計用戶接口: 選擇一款LCD ,確定如何顯示信息、設(shè)置按鈕功能、如何記錄和組織語音數(shù)據(jù)。
•選擇聲碼器: 可以選用以上提到的兩個ITU 編碼器之一,也可以選用其他的專用編碼器,在存儲器容量足夠大時還可以直接存儲語音信號的原始采樣值。許多標(biāo)準(zhǔn)編碼器的C 語言源代碼是可以買到的,因此只需要簡單地開發(fā)接口程序。
•選擇存儲介質(zhì): NAND 閃存是理想的選擇,但也可以根據(jù)實際情況選擇其他的存儲器,例如,廉價的通用可移動存儲器(SD、SmartMedia™ 或MMC 存儲卡)。有些廠商還可提供存儲卡接口的C 語言源代碼和開發(fā)工具。
•電池管理: 如果語音記錄系統(tǒng)用電池供電,就需要某種形式的電源管理。Maxim 有多種高效的低功耗電池管理方案。結(jié)合這些方案和MAXQ3120 的低功耗停止和睡眠模式,將使語音記錄器具有滿意的電池壽命。
多普勒雷達(dá)
概念: 很多年以前執(zhí)法部門就在使用多普勒測速雷達(dá)。如果這種雷達(dá)系統(tǒng)的造價能夠大大降低,那它的用途就不僅僅限于對付那些道路上的超速者。比如,它可在前方車輛停車時提醒駕駛員。MAXQ3120 能在多普勒雷達(dá)系統(tǒng)中發(fā)揮哪些作用呢?
細(xì)節(jié): 多普勒雷達(dá)的工作原理比較簡單。雷達(dá)裝置發(fā)射一個連續(xù)的、已知頻率的微波束(在美國微波頻率已上升到Ku 波段,約24.150GHz) ,微波束遇到移動目標(biāo)后被反射回來。由于反射波的頻率稍微高于或低于發(fā)射波的頻率,所以把反射波和發(fā)射波混頻后可以得到頻率由下式確定的“拍音”:
f = [v * (f0 / c)] * cosθ
其中,ν是待測目標(biāo)的速度,f0 是額定發(fā)射頻率,θ是目標(biāo)運動方向與雷達(dá)系統(tǒng)之間的夾角(如圖1A 所示),c 是光速。注意,如果目標(biāo)直接對著雷達(dá)系統(tǒng)而來,則θ= 0,cosθ= 1 ,目標(biāo)的運動速度變?yōu)椋?/P>
v = [f / (f0 / c)]
例如,如果Ku 波段多普勒雷達(dá)產(chǎn)生1kHz 的“拍音”,則測量的目標(biāo)直面而來(或而退)的速度為12.4m/s (即每小時28 英里或45 公里)。可用MAXQ3120 處理這種音頻信號,框圖如圖1B 所示。
圖1A. 接收信號的多普勒頻移取決于目標(biāo)的運動速度和目標(biāo)運動方向與雷達(dá)系統(tǒng)之間的夾角。
圖1B. 在多普勒雷達(dá)系統(tǒng)中,MAXQ3120 控制雷達(dá)頭,并從雷達(dá)模塊輸出的中頻(IF)信號中提取“拍音”信號。
利用兩個ADC 通道中的一個,MAXQ3120 能夠采樣雷達(dá)模塊輸出的差分信號,提取出其中的最強(qiáng)頻率分量,并把它換算成每小時公里或英里數(shù)。此外,利用MAXQ3120 的乘-加單元還可進(jìn)行一些復(fù)雜的濾波運算,從復(fù)雜的信號中提取出最強(qiáng)的頻率分量,并且可能從微弱信號中提取出有用信息(比如,多普勒雷達(dá)系統(tǒng)運載車輛本身的運動速度)。
很多情況下,用戶接口的設(shè)計非常瑣碎——常常是一些邏輯處理或者通過開關(guān)觸發(fā)音頻告警。有些應(yīng)用中,微控制器還要周期性地記錄速度、以及進(jìn)行速度測量的時間和日期等。
還需要做什么?多數(shù)廠家生產(chǎn)的多普勒雷達(dá)模塊輸出音頻IF。對簡單的測速雷達(dá)系統(tǒng),剩下的工作非常簡單。對于更復(fù)雜一些的測量分析系統(tǒng),還需要開發(fā)一些有關(guān)信號處理的算法。幸運的是,有許多可用于輔助開發(fā)濾波算法和識別算法的優(yōu)秀工具。
有些雷達(dá)系統(tǒng)需要指示目標(biāo)的運動方向,即目標(biāo)是遠(yuǎn)離還是靠近雷達(dá)?傳統(tǒng)的多普勒雷達(dá)不能完成這項工作;它們對速度一樣而方向相反的運動產(chǎn)生相同的頻移量?,F(xiàn)在,有些廠家生產(chǎn)的雷達(dá)模塊包含兩路正交
輸出,解調(diào)這兩路輸出,根據(jù)它們的相位差雷達(dá)系統(tǒng)便可以確定目標(biāo)的運動方向。MAXQ3120 微控制器有兩個ADC,用它可以很容易地實現(xiàn)這種功能。
電話管理器
概念: 有時人們希望追蹤電話的使用情況(誰與誰通了話,什么時候通的話,通話時間是多少),但又不愿購買昂貴、復(fù)雜的通話計費系統(tǒng)。這種情況的例子很多。比如,父母想追蹤孩子的電話使用情況。職業(yè)人員想要一個自動記錄他們何時給誰打了電話,以及誰何時給他們打了電話的日志工具。當(dāng)各個房間的電話公用一條電話線時,那些以住宿加(次日)早餐方式出租房間的房東,就希望有可以追蹤電話使用情況的系統(tǒng)。這種系統(tǒng)可以使他們比較容易地向客人收取電話費??梢岳肕AXQ3120 微控制器組成監(jiān)視電話線上所有通話的裝置(見圖2)。
圖2. 電話管理器監(jiān)視呼出號碼、來電振鈴、主叫ID 以及摘機(jī)事件,確定呼出號碼、主叫號碼以及通話時間。
細(xì)節(jié): 電話管理器必須監(jiān)視四種情況:電話線的掛機(jī)/摘機(jī)狀態(tài)、來電振鈴、呼叫號碼和主叫ID 信息。其中最簡單的是摘機(jī)信號的監(jiān)視,因為摘機(jī)時,線電壓從48V ( 掛機(jī)狀態(tài))變?yōu)?2V 以下(摘機(jī)狀態(tài)),電壓檢測器很容易檢測這種變化并通知MAXQ3120 微控制器。
來電振鈴由電話公司在電話線上加載的高壓交流信號產(chǎn)生。該信號經(jīng)過電容耦合和光電隔離器后向處理器發(fā)出告警,同時保持與電話線的隔離。通常,與0.47µF 電容和4.7k
電阻串聯(lián)的雙向光耦合器能夠可靠地檢測到該信號。為避免誤動作,可采用一對背靠背的齊納二極管,只有當(dāng)電壓超過擊穿電壓時才允許電流流入光隔離器。
呼叫號碼的接收稍復(fù)雜一些,因為有兩種向電話公司發(fā)送號碼的方法:脈沖撥號和音頻撥號。脈沖撥號方法根據(jù)撥打的數(shù)字在每秒鐘內(nèi)產(chǎn)生10 個電流脈沖。為了檢測脈沖撥號,只需檢測電話線上由低到高的電壓跳變的時間,如果以每秒10 次的速率出現(xiàn)一串跳變,無疑這就是脈沖式撥號。
但是,脈沖撥號電話機(jī)越來越少,目前流行的是雙音多頻(DTMF) 撥號方法。在該方法中,電話上的數(shù)字鍵被排成三列四行,見圖3。按下一個數(shù)字鍵,會產(chǎn)生一個與行對應(yīng)的音和一個與列對應(yīng)的音。通過檢測并解譯音調(diào)的組合情況,MAXQ3120 就可確定撥出的號碼。
圖3. 雙音多頻(DTMF)撥號方案為鍵盤上的每個鍵安排了一個行音和一個列音。注意,最右邊一列(A、B、C 和D 鍵)僅用在局端設(shè)備上,客戶端沒有。
Goertzel 算法是一種適合于CPU 實現(xiàn)的高效音頻信號檢測方法。它是一個雙極點濾波器,可以在噪聲信道中清晰地檢測出音頻信號。在MAXQ 微控制器上實現(xiàn)該算法的程序已經(jīng)通過了測試。
利用主叫ID 服務(wù)確定主叫者的電話號碼很容易。這項服務(wù)的訂戶可在第1 和第2 聲振鈴之間收到一個1200bps 的信號,其中包含主叫號碼、主叫者的名稱以及時間和日期等。
在美國,電話局采用Bell 202 調(diào)制解調(diào)器標(biāo)準(zhǔn)傳送主叫ID。歐洲所采用的標(biāo)準(zhǔn)是ITU V.32 模式2 (1300Hz 傳號和2100Hz 空號)。兩種標(biāo)準(zhǔn)的數(shù)據(jù)傳送速率都為1200bps 。很容易在一個應(yīng)用中同時支持這兩種標(biāo)準(zhǔn),但這里僅討論美國使用的標(biāo)準(zhǔn)。在該標(biāo)準(zhǔn)中,“0”位用2200Hz 音頻表示,“1”位用1200Hz 音頻表示。MAXQ3120 可容易地檢測到過零點,并由此確定輸入信號頻率和它所代表的數(shù)據(jù)位。數(shù)據(jù)格式很簡單,為串行異步N81 格式(無奇偶校驗位,8 位數(shù)據(jù),1 位停止位)。
檢測到位值后還要解析消息的格式。有兩種主叫ID 格式。第一種僅包含主叫號碼和日期及時間。如下所示:
如果用戶只訂了“僅號碼”主叫ID 業(yè)務(wù),就用這種格式為他們傳送主叫ID。注意,除了類型、長度和校驗和外,其他字符以ASCII 碼傳送。如果沒有主叫號碼,就用字母“O”代之。如果主叫號碼應(yīng)呼叫者的要求禁止傳送,則用字母“P”代替電話號碼。校驗和為此信息中前面諸字節(jié)以256 為模的和,為2 的補(bǔ)碼格式。
如果用戶訂購了“姓名和號碼”主叫ID 服務(wù),就會收到如下所示的信息:
其中,TYPE 總為0x80,LENGTH 為所有數(shù)據(jù)塊的長度。數(shù)據(jù)塊的格式為:
其中,BLOCK TYPE 表示傳送數(shù)據(jù)的類型,其值根據(jù)下表選擇:
一旦有關(guān)某次通話的數(shù)據(jù)搜集齊后便可存儲在I2C* EEPROM 中。這類器件廉價、可靠,并且可以提供多種存儲容量。一個16kb 的EEPROM 能夠存儲100 條姓名-號碼格式的主叫ID 記錄。在MAXQ 系列處理器上用軟件實現(xiàn)I2C 通信的代碼也有提供。
還需要做什么?還可以考慮對該系統(tǒng)的功能進(jìn)行一些強(qiáng)化。盡管上面所討論的方案可以監(jiān)視所有在線的電話,但它還是無法告訴你是哪部電話發(fā)出或應(yīng)答呼叫。為了做到這一點,每部電話機(jī)上需要安裝一個無需任何用戶界面的監(jiān)視裝置。MAXQ3120 可以通過電流傳感器確定電話機(jī)何時被摘機(jī),并通知位于中央的電話管理器。為完成這種通信任務(wù),話機(jī)中的微控制器可以發(fā)送DTMF 數(shù)字信號,用來識別呼出或應(yīng)答話機(jī)。在掛機(jī)狀態(tài),電話公司對這些信號“視而不見”,因此,戶內(nèi)電話線就為這些數(shù)字信號提供了理想的信道。
另一方面的強(qiáng)化是自動登錄到一臺計算機(jī)。MAXQ3120 微控制器具有UART 通道,可以和PC 的串口連接,這樣就可將電話管理器徹底轉(zhuǎn)變?yōu)橐粋€小巧的電話計費系統(tǒng)。如果再把這種計費系統(tǒng)和前面介紹的語音記錄系統(tǒng)結(jié)合起來,你就擁有了一個非常完善的應(yīng)答機(jī)或電話記錄器。
電力監(jiān)視裝置
概念: 電費為什么這么高?這是電力公司經(jīng)常聽到的抱怨。其中,與燃料價格無關(guān)的部分原因是越來越多的電器始終處于耗電狀態(tài)。
不要抱怨電冰箱,因為它的電源是間歇開關(guān)的,只有當(dāng)電冰箱的內(nèi)部溫度高于限定值時電源才被接通。實際上,耗電的設(shè)備到處都是。想一想多媒體設(shè)備中發(fā)出亮光的指示燈,告訴你它已被關(guān)閉,等待你的遙控命令來打開它。過去,“關(guān)掉”開關(guān)就意味著該設(shè)備不再有任何形式的工作。但在今天,關(guān)掉電視機(jī)只是使其處于等待模式,許多電路仍在耗電。事實上,現(xiàn)在已經(jīng)很難找到真正切斷電源的電器。
微機(jī)也是隱蔽耗電的設(shè)備。在當(dāng)今的網(wǎng)上時代,人們離開時還讓微機(jī)下載文件、收取郵件等等。它要花多少電費?
在此最后一部分,MAXQ3120 回歸其本源,但角色轉(zhuǎn)變?yōu)橛秒娬?,而不再是供電者。圖4 示出了本應(yīng)用的框圖。
圖4. 用電監(jiān)視裝置能夠確定某電器何時用了多少電。它還可以報告會損壞敏感設(shè)備的電壓浪涌和掉電故障。
細(xì)節(jié): MAXQ3120 專為支持電表應(yīng)用而設(shè)計。它的兩個ADC 分別設(shè)計用于監(jiān)視電壓通道和電流通道。在本項目中,MAXQ3120 連續(xù)監(jiān)視進(jìn)入某設(shè)備的電壓和電流。然后,它可以報告該設(shè)備的平均功率,用電高峰出現(xiàn)的次數(shù)和幅度,以及,如果需要的話還可提供該設(shè)備的功率因數(shù)。
如何報告呢?最簡單、直接的方法是在監(jiān)視裝置上采用一個小巧的LCD ??梢允褂靡粋€或多個按鈕控制MAXQ3120 在多種顯示模式間切換(電壓均方根、電流均方根、功率、度數(shù)等等)。LCD 價格極其低廉,用來監(jiān)視單個設(shè)備時,可做的非常緊湊、易用。
如果要監(jiān)視多個設(shè)備,可以建一個中心站來記錄來自各從站的數(shù)據(jù)。該項目的難點在于通常的供電電路用于數(shù)據(jù)傳送介質(zhì)時質(zhì)量太差。用廉價的模塊無法實現(xiàn)理想的數(shù)據(jù)傳輸速率。
但是,可以用廉價的模塊實現(xiàn)不太理想的數(shù)據(jù)傳輸速率。MAXQ3120 的ADC 僅有20,000 次/秒的采樣速率,這種速率無法解調(diào)100kHz 范圍內(nèi)的載波(這個頻段被普遍用于電力線控制系統(tǒng)),但是它們可以解調(diào)音頻范圍的載波。如果數(shù)據(jù)傳送速率足夠慢,比如約10bps ,可以實現(xiàn)非常可靠的通信。
這樣除了監(jiān)視電力外,MAXQ3120 的DSP 功能還要完成另外兩項工作:監(jiān)視來自兩個窄帶的信號功率,并嘗試從中檢測出低速頻移鍵控(FSK)信號;如果接到請求,還要為主站發(fā)送3kHz 至7kHz 的FSK 信號。
主站可以是單獨的裝置,也可以通過微機(jī)的串口與其連接。后一種方案更具有吸引力,因為微機(jī)的存儲量足夠大,且能夠完成比微控制器更復(fù)雜的任務(wù)。
還需要做什么?還需要做什么?不多。可申請完整的電表參考設(shè)計(ZIP, 76KB),經(jīng)過簡單修改后可用于此項目。關(guān)于電力線通信,用于信號產(chǎn)生和帶通濾波的MAXQ3120 代碼也可找到。因此,只需將這些部件整合在一起便可輕松構(gòu)建一個低數(shù)據(jù)速率FSK 調(diào)制解調(diào)器。簡言之,通過簡單地整合現(xiàn)有的硬件和軟件元素,就可組成一個可工作的產(chǎn)品。
結(jié)論
通過這些應(yīng)用實例我們可以看到,除了作為多功能電表的核心外,MAXQ3120 微控制器還大有可為。強(qiáng)大的功能使這款微控制器在很多應(yīng)用領(lǐng)域有擴(kuò)展的機(jī)會,可能是你下一個混合信號項目的理想方案。
評論