|
玩轉Zynq連載2——Zynq PS的GPIO外設 更多資料共享 鏈接:https://share.weiyun.com/5s6bA0s
Zynq的GPIO外設控制最多54個MIO引腳,也可以通過EMIO接口連接到PL(最多支持64個輸入引腳或128個輸出引腳)。GPIO外設可以分為4個Bank。 GPIO外設的主要特性如下: ● 54個GPIO信號通過MIO引腳引出。 ● 192個GPIO信號通過EMIO接口連接到PL引腳引出(64個輸入引腳;128個輸出引腳,其中64個實際輸出引腳和64個輸出使能引腳)。 ●每個GPIO都可以獨立編程為輸入、輸出或中斷接口。 ● 使能信號、位或bank為單位的數據寫入操作、方向控制信號。 ● 每個GPIO都有可編程的中斷控制 GPIO的功能框圖如下所示。
GPIO外設分為4個Bank。 ● Bank0由32位的MIO引腳pin[31:0]組成。 ● Bank1由22位的MIO引腳pin[53:32]組成。 ● Bank2由32位EMIO信號EMIO[31:0]組成。 ● Bank3由32位EMIO信號EMIO[63:32]組成。 GPIO內部結構如圖所示。
GPIO可以被配置為輸入或輸出信號。DATA_RO寄存器能夠反饋當前GPIO的輸入(OE信號為低)或輸出(OE信號為高)狀態值。通過MASK_DATA寄存器的設置,可以實現對一個bank中特定一個或多個GPIO的控制。 其它幾個主要寄存器的功能如下。 ● DATA寄存器。當GPIO配置為輸出時,該寄存器用于配置GPIO的輸出電平值。該寄存器一次性寫入所有32個GPIO的輸出值;讀取該寄存器時,返回的是寫入的電平狀態,并不一定是實際的電平狀態。 ● MASK_DATA_LSW寄存器。該寄存器用于屏蔽不需要更新的DATA寄存器的低16位。 ● MASK_DATA_MSW寄存器。該寄存器用于屏蔽不需要更新的DATA寄存器的高16位。 ● DIRM寄存器。方向控制寄存器。該寄存器用于控制GPIO的輸入輸出方向。高電平表示輸出,低電平表示輸入。 ● OEN寄存器。輸出使能。當GPIO配置為輸出引腳,該寄存器有效。高電平表示輸出使能,低電平表示輸出關閉。 更多資料共享 鏈接:https://share.weiyun.com/5s6bA0s |