详解tcc8935的GPIO寄存器

一、tcc8935的GPIO寄存器的基地址

Base Address = 0x74200000

二、tcc8935的GPIO寄存器——datasheet 243页

1、GPIO Data Register


数据寄存器,在这里可以读取到当前PIN的值。比如,GPIO_A00为输入模式的话,并且外部输入为高,那么我们读取GPADAT的bit0,就是为1.如果为输出模式的话,在这里设置相应为的数值,也会表现到PIN外部。不过,并不建议直接在这里更改相应的数值,因为如果我们需要更改相应的bit,需要将整个寄存器读取,然后设置相应位之后再回写,远不如使用后面的GPnSET、GPnCLR和GPnXOR来的快。

2、GPIO Direction Control Register


方向寄存器,当相应的bit为1时,对应的pin为输出状态;如果为0,则是输入。

3、GPIO Set Register


置"1"寄存器,当在这里设置为"1"时,对应的数据寄存器的为也为"1"。换句话来说,关系为:GPnDAT = GPnDAT | GPnSET。在这个关系式中还能得知,只有"1"有效,如果往GPnSET写"0",那么对应的GPnDAT的相应位并不会置"0"。

4、GPIO Clear Register


清"0"寄存器,也是写"1"有效,关系式为:GPnDAT = GPnDAT & ~GPnCLR。当GPnCLR的某个位写"1",那么对应的GPnDAT的相应位则变成"0"。

5、GPIO XOR Register


异或寄存器,关系式为:GPnDAT = GPnDAT ^ GPnXOR。如果使用C/C++的话,该位使用的不多,但如果是汇编,使用频率就比较频繁了。

6、Driver Strength Contro Register


驱动能力寄存器,可选数值为0~3,其中3为最高的驱动能力。GPACD0中的GPCD0设置为3,即GPIO_A00的驱动能力设置为3。通过控制GPIO的驱动能力可以控制对应引脚的输入或输入电压的范围。tcc8935的GPIO驱动能力表如下:


7、Pull UP/DOWN Control Register


当要设置GPIO某一个pin内部为上拉或下拉,首先需要将GPnPE寄存器对应为设置为"1",使能上拉下拉。再根据自己需要设置,如果是设置内部上拉,则设置GPnPS对应位为"1";如果是设置内部下拉,则设置GPnPS对应位为"0"。如果不需要内部上拉下拉,则关闭内部上拉下拉使能,即设置GPnPE对应位为"0"。

上下拉:主要是用于在TTL电平和CMOS电平之间的相互驱动上面。TLL电平和CMOS电平的逻辑0和1定义是不一样的,打个比方,你的IO输出逻辑1时电平是3.3V,而接到IO上的元件的逻辑1是5V,这时就要将这个IO接一个上拉,使该IO的逻辑1能够和其驱动的设备的逻辑1电平相当。I/O端口,有的可以设置,有的不可以设置,有的是内置,有的需要外接,I/O端口的输出类类似与一个三极管的C级,当C级接过一个电阻和电源连接在一起的时候,该电阻成为上拉电阻,也就是说,如果该端口正常时为高电平;C级通过一个电阻和地连接在一起的时候,该电阻成为下拉电阻,使该端口平时为低电平。作用:比如,当一个接有上拉电阻的端口设为输入状态是,它的常态就为高电平,用于检测低电平的输入。

8、GPIO Input Type Control Register


通过设置GPnIS寄存器可以设置对应pin的输入模式:0表示CMOS输入模式,1表示Schmitt输入模式


通过设置GPnSR寄存器可以设置对应pin输入模式下的电压转换频率(SR):1表示慢,0表示快

9、Port Configuration Register


GPIO功能寄存器,当每4bit为0,则对应的PIN功能就为FUN0。比如,GPAFNC2中的GPFN16设置为0,则对应设置GPIO_A16为FUN0功能,而tcc8935中所GPIO功能表在datasheet的31页可以查到,或搜索TCC8935 Pin Description。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值