DSP的GPIO调试心得

2019-08-07 15:14发布

1、GPxMUX寄存器

通用输入输出多路选择寄存器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引脚有对输入过滤噪声的功能,即对IO输入电平采样,在采样设置的次数后都是一个电平,才会确定有效。假如设置为输入高电平,采样10次,那么这10都为高电平才认为输入高有效,GPxDAT寄存器相应位才会改变。

它是一个16位的寄存器,低八位有效。

GPxQUAL=0; 与SYSCLKOUT同步,没有限制作用

GPxQUAL=1;

2个SYSCLKOUT周期采样,

GPxQUAL=2;

4个SYSCLKOUT周期采样,

GPxQUAL=0xff;510个SYSCLKOUT周期采样,

4、GPxSET置1寄存器

每个IO口有一个置1寄存器,只能写不能读,也就是只能用在输出上,写1可以使输出为1,写0没有变化。

GPxSET .bit.xx=0,被忽略;

GPxSET .bit.xx=1,且引脚配置为输出,则输出变高

5、GPxCLEAR清0寄存器

每个IO口有一个清0寄存器,只能写不能读,也就是只能用在输出上,写1可以使输出清0,写0没有变化。

GPxCLEAR .bit.xx=0,被忽略;

GPxCLEAR .bit.xx=1,且引脚配置为输出,则输出清0

6、GPxTOGGLE 翻转寄存器

每个IO口有一个翻转寄存器,只能写不能读,也就是只能用在输出上,写1可以使输出翻转,写0没有变化。

GPxTOGGLE .bit.xx=0,被忽略;

GPxTOGGLE.bit.xx=1,且引脚配置为输出,则输出翻转

7、GPxDAT寄存器

IO数据寄存器

每个IO都有一个数据寄存器,当IO配置为输出时,相GPxDAT中写数据就可以决定输出状态;

GPxDAT.bit.xx=0,输出变低;

GPxDAT.xx=1,输出变高

当IO配置为输入时,读取GPxDAT中的数据就可以决定输入状态;

注意:当引脚配置为通用数字IO时,相应的外围功能必须屏蔽,否则可能会引发不必要的中断
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
7条回答
hudi008
1楼-- · 2019-08-07 17:18
讲的很具体的。
hudi008
2楼-- · 2019-08-07 22:31
如果能讲一讲时钟配置是更好的了。
westra
3楼-- · 2019-08-07 23:38
一般 后面的名字是怎么确定的 比如 XF_GPIOF14 是如何根据datasheet或者印脚确定的?
zhangmangui
4楼-- · 2019-08-08 01:03
不错的分享  非常感谢
tianli1980
5楼-- · 2019-08-08 02:31
 精彩回答 2  元偷偷看……
i1mcu
6楼-- · 2019-08-08 03:47
很基础的东西,要看看的。

一周热门 更多>