我想使用寄存器对GPIO进行控制,但数据手册上说对GPIODATA的读写受ADDR【9:2】的影响,但我却找不到,不知道怎么弄
Wellin Zhang:
Gangqiang
请参考Tivaware中的相关历程,下面是相关链接。
http://www.ti.com/tool/sw-tm4c
建议通过API函数对IO进行操作。
step by step:
楼主,
GPIODATA寄存器地址的形成是GPIODATA寄存器基址+偏移地址,这个偏移地址就是ADDR。如数据手册上所说,ADDR的2到9位组成了mask。所以你需要做的就是找到需要的mask,然后把这个mask组成ADDR,将你要赋值的数据放到地址GPIODATA+ADDR里面去。
建议下载Tivaware,可以看里面driverlib里面的gpio.c中的写GPIO值的相关函数的定义就可以明白了
gangqiang zhou:
回复 step by step:
谢谢,我试试。
gangqiang zhou:
回复 Wellin Zhang:
谢谢
gangqiang zhou:
回复 step by step:
还是没有弄好,是不是默认的对写入和读出没有影响?