帳號:
密碼:
最新動態
 
產業快訊
CTIMES / 文章 /
Microchip AVR® XMEGA®核心獨立周邊 (CIPs) 的設計實例
 

【作者: 溫書賢】   2018年06月25日 星期一

瀏覽人次:【25093】

近幾年隨著8位元PIC® MCU的市場銷售成長漸趨飽和,為了讓產品更具有競爭優勢與滿足使用者的廣泛設計需求,Microchip近期陸續推出一系列採用核心獨立周邊裝置(CIP)的8位元AVR® XMEGA® E系列微控制器。


何謂內核獨立週邊裝置(CIP)? 簡單來說,這些週邊裝置無需額外程式碼和外部元件,大大降低了系統的複雜性。以硬體為主的內部週邊裝置不需考慮CPU的時序和核心工作功能,可以專注於系統內其他重要的任務。此外CIP具備低功耗的特性,可以減少中斷等待機率、降低了記憶體成本、降低設計時間與心力並提升系統效率和安全性。


本設計實例採用AVR XMEGA E系列豐富的CIPs周邊搭配Microchip - Atmel START線上程式碼產生工具與Studio 7開發環境,以最少的程式碼快速實現一個客製化編碼與調變的紅外線傳輸器,所使用到的CIPs周邊分別介紹如下。


圖一


如上圖所示,Microchip XMEGA E系列搭載XCL(XMEGA Custom Logic)模組,包含兩個獨立的8位元timer/counter與兩個可程式化的真值表以輸出各種邏輯閘的組合(delay elements、RS-latches、D-latches、D flip-flops、AND、OR、NOT、NAND、NOR、XOR、XNOR),除了可節省電路板空間與BOM成本外,進而最小化EMI和crosstalk。


XMEGA E系列內建的Event System Controller模組,不須透過CPU、DMA、Interrupt的介入即可讓周邊和周邊之間進行訊息傳遞。Event System Controller內建8組Event通道,每個通道各別配置一組多工器來選擇Event Source(事件來源)與Event User(接收事件的周邊)。


此外XMEGA E系列也內建EDMA Controller,搭配最多4組的peripheral channel,每個channel可以設定資料傳遞的觸發源、來源位址與目的位址,不須使用CPU的資源,即可以讓各種周邊與記憶體間做資料的快速傳遞。而且資料傳輸的模式也可以依資料量的大小來做設定,包含Burst、Block、Transaction三種模式。除此之外,每個peripheral channel還可以透過PMIC(Programmable Multilevel Interrupt Controller)來設定中斷優先權(NMI、HI、MED、LO),讓EDMA Controller更具彈性化。


圖二


紅外線傳輸器的運作流程如上圖所示。


步驟1: 首先透過一個IO pin腳來偵測按鍵是否被按壓(偵測輸入準位是否發生改變),如果發生改變的話便產生一個中斷,此中斷會透過Event System去觸發16-bit Timer開始計數。


步驟2: 當Timer計數到設定值時會產生OVFIF中斷,OVFIF中斷便會觸發EDMA controller,開始進行資料傳遞。傳遞的資料來源(SRC)是一個預先準備好的陣列,陣列內的資料是存放預先編碼好的IR frame(兩個Bytes組合成一個ASCII字元,第一個Byte表示高準位的Timer Counter值,第二個Byte表示低準位的Timer Counter值),而資料傳遞的目的地(DEST)則是16-bit Timer內的PERBUF暫存器。當Timer產生OVFIF中斷時,Timer的周期值會透過PERBUF暫存器來更新。如此一來,Timer就會根據Timing array來產生編碼好的IR frame波形。


步驟3: 透過XMEGA Timer模組內建的Capture/Compare channel將編碼好IR frame波形輸出到output pin腳


步驟4: 使用XCL模組內建的8-bit timer,將其設定成單一斜率的PWM模式,且頻率設定為38KHz。


步驟5: 將步驟3的IR frame波形輸出信號與步驟4產生的38KHz PWM信號分別接到XCL模組的兩個AND邏輯閘輸入,透過AND邏輯運算後,即可得到38KHz調變的IR frame輸入波形


步驟6: 當所有的IR frame資料傳送完之後,EDMA controller會產生一個TRFIF中斷(Transaction Complete Interrupt Flag),使用者可以根據此信號,來重新初始化系統,讓系統可以再次判斷按鍵按壓以傳送新的IR frame。


以下是透過Studio 7的Data Visualizer所觀察到的實際輸出波形:


圖三


除了步驟6是唯一需要CPU資源介入處理的部分之外,其餘步驟均透過CIPs核心獨立周邊來進行運作,除了硬體即時處理的優點外,也大大減少使用者在韌體開發的時間花費。上述的CIPs周邊、CPU/Peripheral clock、IO腳位配置設定均可透過線上Microchip Atmel START視覺化的人性介面勾選或填入適當的參數配置之後,即可快速生成程式代碼。


希望透過此設計實例,讓使用者了解如何善用Microchip XMEGA E系列豐富的CIPs周邊,讓您的產品設計發揮最大的效能。


 atxmegae5-xpld


開發支援


XMEGA-E5 Xplained開發板


(編號:atxmegae5-xpld)


搭配Microchip Atmel START與Studio 7可輕鬆進行系統設計。透過線上的圖形化介面程式碼生成工具 (START),只需按一次按鈕,即可將配置好參數的周邊、甚至是複雜Middleware(如USB、TCPIP等等…)的底層驅動設定與上層的HAI(Hardware Abstraction Interface)程式碼全部一次生成。此外,搭配Studio 7內建的Data Visualizer工具,可以將資料透過DGI介面(SPI、I2C)或是COM port以數位示波器的方式顯示出來,進而加快用戶的開發與除錯時程。。(https://www.microchip.com/DevelopmentTools/ProductDetails/atxmegae5-xpld)


作者 溫書賢 Microchip應用工程師


相關文章
AI高齡照護技術前瞻 以科技力解決社會難題
3D IC 設計入門:探尋半導體先進封裝的未來
SiC MOSFET:意法半導體克服產業挑戰的顛覆性技術
意法半導體的邊緣AI永續發展策略:超越MEMS迎接真正挑戰
CAD/CAM軟體無縫加值協作
comments powered by Disqus
相關討論


刊登廣告 新聞信箱 讀者信箱 著作權聲明 隱私權聲明 本站介紹

Copyright ©1999-2024 遠播資訊股份有限公司版權所有 Powered by O3  v3.20.2048.18.223.203.153
地址:台北數位產業園區(digiBlock Taipei) 103台北市大同區承德路三段287-2號A棟204室
電話 (02)2585-5526 #0 轉接至總機 /  E-Mail: webmaster@ctimes.com.tw