Microchip連續好幾年都是全世界8-Bit MCU(八位元微控制器)銷量排名冠軍!其中一個很重要的原因就是:它真是好用!如何好用呢?就讓我們針對它其中所謂的CIP功能來快速了解一下。
CIP是Core Independent Peripheral的縮寫,意思即是獨立於核心的周邊,也就是說這類周邊無需MCU核心的介入就可獨立運作。因為它能獨立運作,所以有以下的好處:
1. 較少程式碼:程式變簡短,上市時間提早。
2. 可預期明確的行為:無程式介入的閉迴路即時控制,具有更高的可靠度。
3. 智慧型數位和類比周邊彈性整合:具多變和可塑性,更能發揮創意。
4. 反應時間變短、更省電:減少程式的介入,降低錯誤的發生。
CIP可以依功能分為以下7大類:
1. 整合式類比Integrated Analog
2. 波形控制Waveform Control
3. 時序和量測Timing & Measurement
4. 安全和監督Safety & Monitoring
5. 通信和連接Communication & Connectivity
6. 系統彈性System Flexibility
7. 使用者介面User Interface
由於篇幅有限,本文僅就其中相對比較新的ADC3、Multi-Voltage I/O及CRC/Scan來加以簡單地說明;同時,把筆者認為相當好用的DMA、Event System和PPS概述一下。
ADC3 是Analog-to-Digital Converter with Computation and Context Switching的縮寫。它基於一般的類比數位轉換器,自動加上如低通濾波器等數學運算;在切換ADC通道時,帶入事先準備好的各種設定值並且自動生效,因此可以大幅縮短相關的時間(如圖一)。
由於半導體技術日新月異,各類IC的電源和介面的電壓也逐漸分歧,從5V一路演進到3.3V、2.5V,甚至低於1V,真是族繁不及備載!在一個系統中,常常會遇到介面電壓不同的兩顆IC必須要互相溝通的情況。常見的解決方案,就是在其間加入電壓轉換元件。這時倘若使用Microchip 具有Multi-Voltage I/O的MCU,就可以省掉上述的電壓轉換元件,既降低元件數量,也減少因為增加了電壓轉換元件而產生更多問題的可能性(如圖二)。
在這個IoT是顯學的時代,線上程式碼恆常更新是必備的功能。如何能在新的程式碼啟動前,先檢查程式碼的完整性,以免程式啟動後產生不可預期的危險,是在安全性上一個很重要的環節。CRC即Cyclical Redundancy Check,是一個用來檢查資料完整性的常見方法。Microchip有些MCU不但具有CRC,而且還具有Memory Scan的功能,可以快速且可靠地檢查程式碼完整性,使用上相當方便(如圖三)。
最後,有些MCU還具有DMA、Event System和PPS的能力。分別概述如下:
1. DMA,即Direct Memory Access:可以不經由核心的介入,把資料在記憶體之間搬移。
2. Event System:可以不經由核心的介入,把訊息在周邊之間轉移。
3. PPS,即Peripheral Pin Select:周邊的輸入和輸出腳位可以很自由的選定,而非固定的位置。
想要進一步了解CIP的諸多功能,歡迎來訪www.microchip.com。
本文作者為:Microchip高級應用工程師經理 林建益