DSP的GPIO調試心得
1、GPxMUX寄存器
本文引用地址:http://dyxdggzs.com/article/148982.htm通用輸入輸出多路選擇寄存器I/O是工作在通用數字IO還是外圍IO信號引腳就有GPxMUX決定。
GPxMUX.bit.xx=0,xx通用數字IO;
GPxMUX.bit.xx=1,xx外圍IO引腳。
2、GPxDIR寄存器 方向選擇寄存器
如果配置為通用數字IO腳,那么GPxDIR決定了該引腳是輸入還是輸出。
GPxDIR.bit.xx=0,xx配置為輸入;
GPxDIR.bitxx=1,xx配置為輸出。
3、GPxQUAL寄存器 設置采樣脈沖寄存器
在配置為通用數字IO后,DSP的數字IO引腳有對輸入過(guò)濾噪聲的功能,即對IO輸入電平采樣,在采樣設置的次數后都是一個(gè)電平,才會(huì )確定有效。假如設置為輸入高電平,采樣10次,那么這10都為高電平才認為輸入高有效,GPxDAT寄存器相應位才會(huì )改變。
它是一個(gè)16位的寄存器,低八位有效。
GPxQUAL=0; 與SYSCLKOUT同步,沒(méi)有限制作用
GPxQUAL=1;
2個(gè)SYSCLKOUT周期采樣,
GPxQUAL=2;
4個(gè)SYSCLKOUT周期采樣,
GPxQUAL=0xff;510個(gè)SYSCLKOUT周期采樣,
4、GPxSET置1寄存器
每個(gè)IO口有一個(gè)置1寄存器,只能寫(xiě)不能讀,也就是只能用在輸出上,寫(xiě)1可以使輸出為1,寫(xiě)0沒(méi)有變化。
GPxSET .bit.xx=0,被忽略;
GPxSET .bit.xx=1,且引腳配置為輸出,則輸出變高
5、GPxCLEAR清0寄存器
每個(gè)IO口有一個(gè)清0寄存器,只能寫(xiě)不能讀,也就是只能用在輸出上,寫(xiě)1可以使輸出清0,寫(xiě)0沒(méi)有變化。
GPxCLEAR .bit.xx=0,被忽略;
GPxCLEAR .bit.xx=1,且引腳配置為輸出,則輸出清0
6、GPxTOGGLE 翻轉寄存器
每個(gè)IO口有一個(gè)翻轉寄存器,只能寫(xiě)不能讀,也就是只能用在輸出上,寫(xiě)1可以使輸出翻轉,寫(xiě)0沒(méi)有變化。
GPxTOGGLE .bit.xx=0,被忽略;
GPxTOGGLE.bit.xx=1,且引腳配置為輸出,則輸出翻轉
7、GPxDAT寄存器
IO數據寄存器
每個(gè)IO都有一個(gè)數據寄存器,當IO配置為輸出時(shí),相GPxDAT中寫(xiě)數據就可以決定輸出狀態(tài);
GPxDAT.bit.xx=0,輸出變低;
GPxDAT.xx=1,輸出變高
當IO配置為輸入時(shí),讀取GPxDAT中的數據就可以決定輸入狀態(tài);
注意:當引腳配置為通用數字IO時(shí),相應的外圍功能必須屏蔽,否則可能會(huì )引發(fā)不必要的中斷。
評論