本文主要針對SiliconLabs(亦稱芯科科技) EFM32系列32位MCU的GPIO配置,讀取/寫入,外設功能,外部中斷功能以及GPIO引腳作為外設反射系統(tǒng)(PRS)等功能進行概要描述。與此相關的功能演示可以在Silicon Labs推出的EFM32入門套件主板上實現(xiàn)。與通用型MCU應用類似,EFM32系列每個端口最多容納16個引腳,命名規(guī)則為Pxn,其中x表示端口(A,B,C ...),n表示引腳編號(0,1,...,15),其中每個端口都有獨立的寄存器控制單元,用于功能的配置和數(shù)據(jù)讀寫等。
GPIO配置輸出端,通過寫入DOUT寄存器中的相應位來驅動引腳,其輸出可以配置為線或,開漏或者具有特定驅動屬性的推挽式輸出。輸入配置,其輸入的引腳狀態(tài)反映在其對應的DIN寄存器中,可為每個輸入引腳啟用可編程的上拉或下拉功能,另外還有濾波器功能可選,可以抑制長達50 ns的毛刺。在實際的應用設計中,為避免意外影響GPIO的配置,可以按引腳鎖定其GPIO配置。另外,針對部分外設線路有上、下拉電阻的配置需求,這就需要與MCU GPIO上、下拉功能的協(xié)調使用。
EFM32系列的三個典型寄存器配置:GPIO_Px_MODEL(端口引腳0-7)或GPIO_Px_MODEH(端口引腳8-15),GPIO_Px_DOUT和GPIO_Px_CTRL。為將端口C中的引腳5配置為具有上拉和濾波器的輸入功能代碼。在實際的功能開發(fā)過程中,為提高代碼的易讀性與可移植性,可以自定義相關的高級集成化功能。
外設配置方面,需要根據(jù)數(shù)據(jù)手冊具體描述確定I / O口的多路復用和GPIO可用性,外設功能通常會復用到幾個不同的引腳上。一般來說,MCU預設的功能外設都有一個專用的ROUTE寄存器來控制實現(xiàn),其確定所有相關I / O的位置以及這些I / O的使能控制。另外,部分較新的產(chǎn)品具備更靈活的配置方案,如外設設有一ROUTEPEN寄存器,以及ROUTELOCn寄存器,可以在每個引腳上啟用和禁用I / O,允許外設I / O的映射位置多達 32處。
中斷方面,EFM32系列具備兩種不同的中斷請求機制。第一個將具有相同編號的所有引腳分組到一個外部中斷請求中。第二個為EFM32 Gemstones提供的更為靈活的中斷請求機制,其通過端口映射兩位MSBs來匹配外部中斷請求信號。
外設反射系統(tǒng)(PRS)允許外設在沒有MCU干預的情況下進行數(shù)據(jù)通信,比較適合用于MCU處于低能耗運行模式下。通俗來說,PRS系統(tǒng)基于“生產(chǎn)者—消費者”的機制進行工作,其發(fā)送反射信號的為生產(chǎn)者,接收反射信號的為消費者。PRS系統(tǒng)將生產(chǎn)方信號映射到對應消費者,消費者會根據(jù)接收的信號實現(xiàn)對應的功能。在具體的項目開發(fā)中,PRS 系統(tǒng)的支持的操作模式有同步和異步兩種,同步模式需要工作在 HFPERCLK 時鐘下,可在 EM0 和 EM1 模式下使用;異步模式不需要 HFPERCLK 時鐘的參與,可在 EM0~EM3 模式下工作(部分外設支持異步模式)。另外,PRS 系統(tǒng)運行涉及的寄存器主要為PRS_SWPULSE 和 PRS_SWLEVEL兩類。
-
mcu
+關注
關注
146文章
17347瀏覽量
352735 -
濾波器
+關注
關注
161文章
7868瀏覽量
178998 -
寄存器
+關注
關注
31文章
5367瀏覽量
121222 -
EFM32
+關注
關注
4文章
46瀏覽量
70168
原文標題:EFM32系列32位MCU的GPIO應用快速上手指南
文章出處:【微信號:SiliconLabs,微信公眾號:Silicon Labs】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
相關推薦
EFM32的電容式觸開關方案
![<b class='flag-5'>EFM32</b>的電容式觸開關方案](https://file1.elecfans.com//web2/M00/A6/0C/wKgZomUMO3mAaHl6AAAYzH8tZT4717.jpg)
Silicon Labs EFM32 Gecko 32位微控制器簡介
EFM32平臺自平衡小車制作
EFM32系列32位MCU的內部溫度傳感器介紹
關于EFM32? Tiny Gecko 11的介紹及相關資料手冊!
EFM32芯片的使用
MCU在線技術講座-EFM和EFR: 面向物聯(lián)網(wǎng)開發(fā)的通用MCU平臺
EFM32產(chǎn)品應用手冊
![<b class='flag-5'>EFM32</b>產(chǎn)品應用手冊](https://file.elecfans.com/web2/M00/49/B5/pYYBAGKhvFKAaavBAABPn4UypPI127.png)
集成度最高的EFM32系列32位MCU Giant Gecko 11
【設計學堂】EFM32與EFR32外設應用示例
![【設計學堂】<b class='flag-5'>EFM32</b>與EFR32<b class='flag-5'>外設</b>應用示例](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
基于EFM32系列MCU的便攜式心臟監(jiān)測儀設計
新款MCU EFM32和EFM8功能升級,加速物聯(lián)網(wǎng)產(chǎn)品原型設計
![新款<b class='flag-5'>MCU</b> <b class='flag-5'>EFM32</b>和<b class='flag-5'>EFM</b>8<b class='flag-5'>功能</b>升級,加速物聯(lián)網(wǎng)產(chǎn)品原型設計](https://file1.elecfans.com/web2/M00/82/28/wKgaomRFA0CASRVHAAAlpGf9nHQ723.jpg)
評論