這種硬件上的聯(lián)動(dòng)響應,更為迅速直接。因為不需要CPU干預,也減少了不必要的中斷或喚醒,即使在CPU處于某種休眠狀態(tài)下,該觸發(fā)機制仍可以在低功耗的情況下運行。當然除了用于觸發(fā)ADC之外,這種事件機制還可以用于其他外設的聯(lián)動(dòng)。
2. 帶有計算功能的ADC——對轉換結果自動(dòng)進(jìn)行計算處理
ADC的轉換結果,被用來(lái)做某種類(lèi)型的計算或分析。比如驗證結果是否在一定的范圍內或者用來(lái)濾除信號中的噪聲。盡管用來(lái)濾波的軟件算法都比較成熟,比如中值濾波、算數平均濾波和滑動(dòng)平均濾波等,但是無(wú)論是什么樣的軟件算法,它們都是需要較大的RAM空間和CPU運算資源。首先在系統的RAM區保留一段時(shí)間內的轉換值,然后對這些轉換值進(jìn)行分析、濾波,并進(jìn)行處理。而在MCU系統中,RAM空間都是很有限的,而且軟件濾波算法的運行,需要消耗CPU的能力和時(shí)間,導致整個(gè)轉換數值的濾波系統運行效率不高。
創(chuàng )新的ADC設計,使得ADC自身具有轉換后的計算功能,可以對ADC轉換的數據進(jìn)行復雜的運算,而無(wú)需CPU干預。使用這種具有運算能力的智能ADC, 在轉換完成后, 結果可以通過(guò)預定的計算功能來(lái)傳遞,將不需要編寫(xiě)代碼來(lái)查看ADC結果是否落在某個(gè)窗口之內或之外,也可以直接獲取ADC平均樣本值或者濾波器樣本數據值等。這種計算由ADC外設本身執行,加速了通常由軟件完成的算術(shù)任務(wù),不再需要占用CPU資源和額外的RAM緩沖空間。例如,如下圖PIC® Q10系列MCU上ADC的計算功能簡(jiǎn)化框圖所示, 可以通過(guò)配置ADC的ADMD位來(lái)控制ADC計算模塊以選擇五種不同的操作模式之一:基本模式、累加模式、平均模式、突發(fā)平均模式和低通濾波器模式等。
圖 2: PIC® Q10單片機中的ADC計算模塊框圖
3. 自動(dòng)上下文保存——使ADC通道切換應用自如
在傳感器系統應用中,經(jīng)常會(huì )遇到多個(gè)模擬輸入通道共用一個(gè)內部ADC硬件的情況。 比如在一個(gè)環(huán)境檢測系統中, 溫度、濕度、氣壓和光線(xiàn)強度等傳感器的模擬輸入將會(huì )使用同一個(gè)ADC(同一個(gè)采樣保持電路)的不同通道。ADC通過(guò)切換各個(gè)通道,分時(shí)進(jìn)行A/D轉換。對于復用ADC的模擬輸入,每個(gè)通道的控制方式,都可能是不同的,比如狀態(tài)和數據寄存器配置和轉換后的計算方式等等。例如,通道一將ADC配置為突發(fā)平均模式,通道二將ADC配置為累加模式……不同通道的獨特控制方式,使得ADC在切換通道時(shí)需要附加軟件開(kāi)銷(xiāo),比如首先停止ADC,按照ADC采集通道的預定順序找到相應的狀態(tài)和寄存器,重新配置對應的控制方式,再啟動(dòng)ADC…,運行過(guò)程中的頻繁切換無(wú)疑降低了ADC的運行效率。
解決這一問(wèn)題的最新ADC特性,是把每個(gè)通道的特定轉換控制方式,按照預定采集順序,保存為上下文。該上下文只能通過(guò)A/D上下文選擇寄存器,或者直接存儲器訪(fǎng)問(wèn)(DMA)。這樣ADC運行時(shí),ADC硬件模塊會(huì )自動(dòng)從內存中傳輸當前活動(dòng)通道的上下文,進(jìn)入相關(guān)的ADC寄存器并執行所需的轉換。這樣就顯著(zhù)提高了ADC切換通道采集數據的效率,也不占用CPU資源。有趣的是,Microchip將帶有運算特性的ADC稱(chēng)為ADCC (ADC with Computation),而將又帶有上下文保存特性的ADCC稱(chēng)為ADCCC (ADC with Computation and Context)。
單片機和傳感器連接的應用越來(lái)越多,幸運的是,MCU設計者一直在擴展其MCU外設的功能。 類(lèi)似ADC上這些新功能的創(chuàng )新,已不僅僅在其自身轉換方面,而是實(shí)現了與其他外設聯(lián)動(dòng)啟動(dòng)采樣,轉換后的計算,以及多個(gè)復用通道的自動(dòng)切換等,集成了針對模擬信號處理鏈路上的多個(gè)環(huán)節。這些環(huán)節可以自動(dòng)運行,不占用系統總線(xiàn),這對降低CPU負載,降低系統功耗,增強系統響應效率,增強系統健壯性等都有非常大的意義。單片機設計者們以其創(chuàng )新性的智慧,以及對嵌入式系統應用細致入微的洞察,將會(huì )使得MCU和傳感器的連接應用設計,越來(lái)越靈活,越來(lái)越高效!
(來(lái)源:Microchip,作者:Paul Zhang張榮寶,MCU8 產(chǎn)品部市場(chǎng)推廣經(jīng)理)