SigmaDSP?系列多款器件均內(nèi)置通用輸入/輸出(GPIO)引腳,這些引腳可與外部硬件元件(如:LED、按鈕或旋轉(zhuǎn)編碼器)連接,某些還可多路復(fù)用至輔助ADC,這就使得電位器或模擬控制電壓可直接連接到IC。本文簡(jiǎn)要說(shuō)明如何在專用于SigmaDSP音頻處理器的編程、開(kāi)發(fā)和調(diào)整軟件的圖形開(kāi)發(fā)工具SigmaStudio中使用GPIO。
第一步如何訪問(wèn)GPIO引腳通過(guò)工具箱(ToolBox)中IO部分內(nèi)的通用輸入和輸出單元,可在SigmaStudio中訪問(wèn)GPIO引腳。

圖1. GPIO ToolBox Cells

圖2. GPIO原理圖單元
點(diǎn)擊下拉式菜單,以便訪問(wèn)所有可用的GPIO引腳。這些單元與Sigma-Studio中的其它單元一樣用線路連接,控制信號(hào)輸入和輸出的顯示顏色為紅色。
輔助ADC輸入單元的工作方式都相同。
圖3. 輔助ADC的輸入單元
第二步如何設(shè)置GPIO引腳必須使用SigmaStudio中的寄存器控制窗口單獨(dú)配置GPIO引腳。GPIO寄存器控制的示例如圖4、圖5和圖6所示。
圖4. ADAU170x寄存器控制窗口的GPIO部分
圖5. ADAU144x寄存器控制窗口的GPIO部分
圖6. ADAU176x寄存器控制窗口的GPIO部分
在此處,根據(jù)接口電路可適當(dāng)設(shè)置GPIO引腳。可進(jìn)行的設(shè)置包括:“輸入GPIO去抖動(dòng)”、“輸入GPIO無(wú)去抖動(dòng)”、“輸出GPIO”、“輸出GPIO集電極開(kāi)路”以及ADC。此外,某些器件可通過(guò)這些引腳,來(lái)輸入或輸出數(shù)字音頻數(shù)據(jù)或時(shí)鐘。在某些器件上,GPIO引腳標(biāo)有MP(多用途)字樣,但它們的使用方法是相同的。
輸入GPIO去抖動(dòng)
將開(kāi)關(guān)或按鈕與GPIO引腳連接時(shí),觸點(diǎn)抖動(dòng)(也稱為振動(dòng))是最常見(jiàn)的問(wèn)題。由于許多機(jī)械和電氣方面的因素,在切換過(guò)程中,可能會(huì)隨機(jī)出現(xiàn)一系列振蕩現(xiàn)象。為降低這些影響,則應(yīng)當(dāng)將時(shí)基去抖電路集成到特定SigmaDSP的GPIO電路中。通常,在寄存器控制窗口的GPIO部分可設(shè)置去抖時(shí)間。內(nèi)核會(huì)從每個(gè)音頻幀相關(guān)的寄存器處讀取輸入值。
圖7. 具有去抖數(shù)據(jù)流的輸入GPIO
輸入GPIO無(wú)去抖動(dòng)
對(duì)于不受觸點(diǎn)抖動(dòng)影響的輸入(比如:外部邏輯IC處的輸出),可通過(guò)該設(shè)置旁路去抖電路。內(nèi)核會(huì)從每個(gè)音頻幀相關(guān)的寄存器處讀取輸入值。
圖8. 具有無(wú)去抖數(shù)據(jù)流的輸入GPIO
輸出GPIO
該設(shè)置可使引腳用于數(shù)字輸出。通常,每個(gè)引腳最大可驅(qū)動(dòng)的電流為幾毫安。如需了解更多信息,請(qǐng)參見(jiàn)相關(guān)的SigmaDSP數(shù)據(jù)手冊(cè)。GPIO引腳會(huì)從每個(gè)音頻幀相關(guān)的寄存器處讀取輸入值。
圖9. 輸出GPIO數(shù)據(jù)流
輸出GPIO集電極開(kāi)路
該設(shè)置將引腳置于集電極開(kāi)路或開(kāi)漏輸出模式(取決于器件內(nèi)部電路),并且需要一個(gè)外部上拉電阻。該上拉電阻可與不同的IOVDD電源連接,但不能與DSP的電源連接,因此,如果連接不同邏輯電平下的IC,該模式非常有用。GPIO引腳會(huì)從每個(gè)音頻幀相關(guān)的寄存器處讀取輸入值。
圖10. 輸出GPIO集電極開(kāi)路數(shù)據(jù)流
由控制端口驅(qū)動(dòng)輸入
在該模式中,GPIO引腳被旁路,內(nèi)核會(huì)從相關(guān)寄存器讀取相應(yīng)的值??赏ㄟ^(guò)控制端口來(lái)讀寫該寄存器的值。如果使用外部主控制器來(lái)控制信號(hào)流的各元素,則該模式將十分有用。內(nèi)核會(huì)從每個(gè)音頻幀相關(guān)的寄存器處讀取輸入值。
圖11. 由控制端口驅(qū)動(dòng)輸入數(shù)據(jù)流
由控制端口驅(qū)動(dòng)輸出
在該模式中,內(nèi)核中的信號(hào)流不影響相關(guān)GPIO引腳的輸出,并且引腳會(huì)從相關(guān)寄存器讀取相應(yīng)的輸出值。可通過(guò)控制端口來(lái)讀寫該寄存器的值。
對(duì)于直接控制電路的元素(比如:通過(guò)外部主控制器與GPIO引腳相連接的LED),該模式非常有用。GPIO引腳會(huì)從每個(gè)音頻幀相關(guān)的寄存器處讀取輸入值。
圖12. 由控制端口驅(qū)動(dòng)輸出數(shù)據(jù)流
ADC
在ADC模式下設(shè)置引腳時(shí),引腳就相當(dāng)于輔助ADC的一個(gè)多路復(fù)用輸入端。在ADAU170x,上,應(yīng)當(dāng)激活反相位,以便正確使用ADC功能。盡管ADC的采樣速率取決于所使用的特定SigmaDSP,但內(nèi)核仍會(huì)從每個(gè)音頻幀的ADC讀取輸入值。
圖13. ADC數(shù)據(jù)流
在SigmaStudio?圖形編程軟件內(nèi),可對(duì)GPIO引腳進(jìn)行分配,以使其控制音頻信號(hào)處理程序或受該程序的控制。器件運(yùn)行期間,可更改引腳的功能。如果用戶接口使用GPIO引腳,則可減少或無(wú)需使用微控制器,這樣就能大大減少簡(jiǎn)單音頻系統(tǒng)的成本。
-
GPIO
+關(guān)注
關(guān)注
16文章
1333瀏覽量
56430 -
SigmaStudio
+關(guān)注
關(guān)注
2文章
5瀏覽量
6382 -
adau170x寄存器
+關(guān)注
關(guān)注
0文章
1瀏覽量
1501
原文標(biāo)題:在圖形開(kāi)發(fā)工具SigmaStudio中正確使用GPIO,只需兩步
文章出處:【微信號(hào):analog_devices,微信公眾號(hào):analog_devices】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
請(qǐng)問(wèn)C轉(zhuǎn)成SigmaStudio應(yīng)用模塊方法
sigmastudio中使用bandpass濾波器計(jì)算參數(shù)與在matlab中得到的參數(shù)不一致是為什么?
教你如何讓焊條節(jié)能的方法 (含電路圖)
如何在嵌入式Linux中使用GPIO
SigmaStudio仿真工具的應(yīng)用
在PL設(shè)計(jì)中使用MPSoC EMIO GPIO
在APT32F172中使用GPIO的應(yīng)用范例
PowerShell GPIO在Windows 10中使用Arduino USB支持
教你在sigmaStudio中使用gpio的方法,學(xué)到就是賺到
評(píng)論