F28335 GPIO的配置————DSP TMS320F28335 學習筆記 (三)


1 GPIO工作原理
外界二進制信息(數字量)要被CPU處理,要給存儲器存放,就需要外界信息源與兩者之間的交換接口,這樣的交換接口若用來進行通用目的數字量的輸入輸出,就被稱為通用數字量輸入/輸出接口,簡稱GPIO。
F28335的88路GPIO被分為3組

A組:GPIO0 - GPIO31 只能配置INT1-INT3
B組:GPIO32 - GPIO63 配置INT4-INT12
C組:GPIO64 - GPIO87

2 GPIO的寄存器
2.1 GPIOMux(復用開關)寄存器 16位
F28335 DSP有多達88個GPIO口,對應着芯片引出的88個引腳,隨着芯片的封裝與尺寸的確定,引腳數目是有限的,所以這88個引腳多數都是功能復用的,即可以靈活配置為輸入引腳,也可以靈活配置為輸出引腳,即可以作為通用I/O引腳,也可以作為特殊功能口(如SCI、SPI、ECAN等),非常靈活,用戶根據需要,可以通過GPIOMUX(輸入輸出多路選擇器,復用開關)寄存器來進行相關配置。

GpioCtrlRegs.GPBMUX2.bit.GPIO54 = 0 將GPIO54設為數字I/O功能
GpioCtrlRegs.GPBMUX2.bit.GPIO54 = 1 將GPIO54設為外設功能

2.2 GPIODIR(方向)寄存器 32位
如果將這些引腳選擇數字量I/O模式,可以通過方向寄存器GPxDIR配置數字量I/O的方向,即是作為輸入引腳還是作為輸出引腳。

GpioCtrlRegs.GPBDIR.bit.GPIO54 = 0 將GPIO54設為輸入功能
GpioCtrlRegs.GPBDIR.bit.GPIO54 = 1 將GPIO54設為輸出功能

2.3 GPxQUAL(量化)寄存器 32位
在GPIO作為數字I/O且位輸入模式時,就會涉及到采樣准確與否的問題,如果在輸入信號毛刺較多的情況下,如果直接讀取很可能會得到錯誤的信號。因此我們需要對輸入的信號進行量化采樣。
在這里插入圖片描述

上圖就是一個只有信號保持6個系統時鍾周期,才確認信號是高還是低電平的操作。
所以我們通過結合實際需求來設置這個量化寄存器GPxQUAL,得到我們所需要的准確信號,一般與GPxQSEL配合使用。

2.4 電平操作寄存器

GPxDAT寄存器:用於對I/O口置1或0,但是反應速度比較慢,一般在信號輸入的時候用,輸出的時候用下面三個。
GPxSET寄存器: 用於對I/O置1,速度快
GPxCLEAR寄存器:用於對I/O清0
注意這里的GPxSET和GPxCLEAR都只能置1,不能置0,置1功能有效
GPxTOOGLE寄存器: 用於對I/O的電平翻轉

原文鏈接:https://blog.csdn.net/sy243772901/article/details/83015694


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM