介紹DSP28335的GPIO的輸出高低電平功能

2023-07-07 17:17:33 來源:電機人生

** 一、概述 **

GPIO(General Purpose Intput Oytput)是通用輸入輸出端口的簡稱,可以通過軟件來控制其輸入和輸出。DSP28335芯片的GPIO引腳與外部設(shè)備連接起來,從而實現(xiàn)與外部通訊、控制以及數(shù)據(jù)采集的功能。GPIO最簡單的就是做輸出高低電平

本篇文件將介紹DSP28335的GPIO的輸出高低電平功能。


(資料圖片僅供參考)

二、GPIO結(jié)構(gòu)框圖

DSP28335的通用輸入輸出GPIO共有88個引腳,該芯片將88個GPIO分成A、B、C三組進行管理。其中A組為:GPIO0GPIO31;B組為:GPIO32GPIO63;C組為:GPIO64~GPIO87。

圖1 GPIO結(jié)構(gòu)框圖

圖1為GPIO的A組結(jié)構(gòu)框圖,對于B、C是一致的。將GPIO結(jié)構(gòu)框圖分為4部分。各部分用處如下:

第一部分:這一部分確定GPIO是輸入還是輸出,比如GPIOx_DIR=1時為輸出,GPIOx_DIR=0時作輸入使用[ **控制輸入還是輸出** ];

第二部分:這一部分是數(shù)據(jù)數(shù)據(jù)寄存器,當GPIO作輸出使用時,給數(shù)據(jù)寄存器控制高電平輸出的數(shù)據(jù)位寫有效值時,GPIO就輸出高電平,給數(shù)據(jù)寄存器控制低電平輸出的數(shù)據(jù)位寫有效值時,GPIO就輸出低電平;當GPIO作輸入使用時,該部分只能讀,比如讀此時引腳采樣到的是高電平還是低電平。

第三部分:這一部分是GPIO作輸入使用才用到,比如GPIO接一個按鍵作輸入,產(chǎn)生一個中斷。

第四部分:這一部分是GPIO的上拉控制,使用上拉可以增強GPIO的驅(qū)動能力。通過對該部分的寄存器配置可以使能GPIO上拉功能或者失能GPIO上拉功能。

三、GPIO輸出高低電平涉及寄存器

GPIO的寄存器分為三大類,第一類是控制寄存器,主要由功能選擇寄存器GPxMCUn[ 控制是否是普通輸入輸出功能]、方向控制寄存器GPxDIR[ 控制是作輸出用還是輸入用]、上拉控制寄存器GPxPUD,x代表A、B、C,n代表1或者2。

圖2 GPIO控制寄存器

第二類為數(shù)據(jù)寄存器,主要由數(shù)據(jù)寄存器GPxDAT、置位寄存器GPxSET、清除寄存器GPxCLEAR和狀態(tài)翻轉(zhuǎn)寄存器GPxTOGGLE等組成。用于控制GPIO作輸出時候引腳高低電平控制,或者GPIO作輸入時讀引腳電平用。

圖3 GPIO數(shù)據(jù)寄存器

四、DSP28335的GPIO作輸出使用點亮LED燈例子

硬件原理圖如下:

圖4 硬件原理圖

LED燈接在GPIO75引腳上,只要將該引腳設(shè)置為低電平,LED燈就會亮。

編程步驟:

將GPIO配置為作通用GPIO用,而不是復(fù)用為其他功能(PWM,ADC),只做輸入輸出用;將GPIO作為配置為輸出用;將GPIO配置為上拉;將GPIO75設(shè)置為低電平;

其中步驟1對應(yīng)19行,步驟2對應(yīng)20行,步驟3對應(yīng)21行,步驟4對應(yīng)23行。

主函數(shù)用調(diào)用該函數(shù)就可以點亮一個LED燈了。

主函數(shù)中InitSysCtrl()是對處理器時鐘的初始化,芯片的時鐘是芯片的心臟。下一篇文章介紹一下DSP28335芯片的心臟。

至此DSP28335的GPIO做普通高低電平輸出用已經(jīng)講完。

五、總結(jié)

本篇文章介紹了DSP28335的GPIO的輸出高低電平功能,從GPIO結(jié)構(gòu)框圖到GPIO做普通輸出寄存器做了相關(guān)介紹,并手把手教怎么寫控制一個LED燈,通過本章的學習,可以掌握DSP28335的GPIO功能。

標簽:

上一篇:等幅值變換和等功率變換對我們控制有什么影響?如何選擇呢?
下一篇:最后一頁