首页 > 其他 > 详细

RT3052修改JTAG接口为GPIO

时间:2015-03-09 16:24:42      阅读:313      评论:0      收藏:0      [点我收藏+]

技术分享

  根据DataSheet文档所述,当JTAG_GPIO_MODE寄存器设置为1时,JTAG引脚功能为GPIO,且对应的GPIO序号为GPIO17~GPIO21

  设置JTAG接口为GPIO需要修改GPIOMODE寄存器的JTAG_GPIO_MODE位,GPIOMODE寄存器位于SYSCTL寄存器组内,如下表所述:

技术分享

技术分享

  GPIOMODE寄存器偏移位置为0x60,所以GPIOMODE寄存器实际地址为0x1000 0060。根据上表描述,JTAG_GPIO_MODE位于GPIOMODE寄存器的6bit位置。

  SDK在系统内核驱动source/linux-2.6.36.x/drivers/char/ralink_gpio.h中有如下定义:

/*                                                                               
 * Address of RALINK_ Registers                                                  
 */                                                                              
#define RALINK_SYSCTL_ADDR              RALINK_SYSCTL_BASE      // system control
#define RALINK_REG_GPIOMODE             (RALINK_SYSCTL_ADDR + 0x60)

  所以可以直接使用宏定义来修改JTAG_GPIO_MODE寄存器,

  在source/linux-2.6.36.x/drivers/char/ralink_gpio.c中,找到int __init ralink_gpio_init(void)函数,在函数中加入如下语句:

gpiomode |= (1 << 6);

就可以实现把JTAG引脚配置为GPIO来使用。



RT3052修改JTAG接口为GPIO

原文:http://my.oschina.net/lvsin/blog/384292

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!