打印

LPC1114 JTAG接口不能做GPIO 用

[复制链接]
3689|11
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
f_haizao|  楼主 | 2010-10-11 12:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
void GPIOInit( void )
{         
  /* Enable AHB clock to the GPIO domain. */
  LPC_SYSCON->SYSAHBCLKCTRL |= (1<<6);      //使能GPIO时钟
               
  LPC_IOCON->PIO1_2         |= 0X11;     
  LPC_IOCON->PIO1_0         |= 0X11;   
  LPC_IOCON->PIO1_1         |= 0X11;  

  

  

LPC_GPIO1->DIR            |= 0x007;

  

  

  

LPC_GPIO1->DATA = 0X000;

}

最后还是不能把P1.0,P1.1,P1.2拉低,

有哪位大侠曾遇到过这种问题,请给小弟指点迷津

相关帖子

沙发
hotpower| | 2010-10-11 12:34 | 只看该作者
应该配置为gpio才可

使用特权

评论回复
板凳
f_haizao|  楼主 | 2010-10-11 14:00 | 只看该作者
LPC_IOCON->PIO1_2         |= 0X11;     
  LPC_IOCON->PIO1_0         |= 0X11;   
  LPC_IOCON->PIO1_1         |= 0X11
已经配置为GPIO了还是不行

使用特权

评论回复
地板
jtdy| | 2010-10-11 14:25 | 只看该作者
本帖最后由 jtdy 于 2010-10-11 14:29 编辑

初始化时,楼主试试这个,然设置DIR,再输出。LPC_GPIO1->DATA &= 0X000;

LPC_IOCON->JTAG_TMS_PIO1_0  &= ~0x07
  LPC_IOCON->JTAG_TMS_PIO1_0  |= 0x01;        /*Selects function PIO1_0 */
   LPC_IOCON->JTAG_TDO_PIO1_1  &= ~0x07;        
   LPC_IOCON->JTAG_TDO_PIO1_1  |= 0x01;        /* Selects function PIO1_1 */
    LPC_IOCON->JTAG_nTRST_PIO1_2 &= ~0x07;
    LPC_IOCON->JTAG_nTRST_PIO1_2 |= 0x01;        /* Selects function PIO1_2  */

使用特权

评论回复
5
f_haizao|  楼主 | 2010-10-11 14:49 | 只看该作者
4楼按着你的做法也不行还是不行

使用特权

评论回复
6
ou123| | 2010-10-11 15:23 | 只看该作者
路过,

使用特权

评论回复
7
hotpower| | 2010-10-13 11:12 | 只看该作者
我软件仿真了,默认配置可以

使用特权

评论回复
8
zajiju| | 2013-5-6 12:05 | 只看该作者
  LPC_IOCON->JTAG_TDO_PIO1_1  &= ~0x07;        
   LPC_IOCON->JTAG_TDO_PIO1_1  |= 0x01;        /* Selects function PIO1_1 */
   GPIOSetDir( PORT1, 1, 1 ); //SEL         输出
这样是可以输出低的,4楼是对的!

使用特权

评论回复
9
fengshao1370| | 2013-11-21 10:46 | 只看该作者
zajiju 发表于 2013-5-6 12:05
LPC_IOCON->JTAG_TDO_PIO1_1  &= ~0x07;        
   LPC_IOCON->JTAG_TDO_PIO1_1  |= 0x01;        /* Se ...

这些寄存器都没有定义啊?直接编译错误啊,LPC11xx.h里面没有这些寄存器

使用特权

评论回复
10
fengshao1370| | 2013-11-21 10:46 | 只看该作者
f_haizao 发表于 2010-10-11 14:49
4楼按着你的做法也不行还是不行

请问问题解决了吗?求教啊

使用特权

评论回复
11
firstshinec| | 2014-6-12 00:00 | 只看该作者
求解啊。。。。我也遇到这个问题,这个片子怎么这么弱智= =

使用特权

评论回复
12
firstshinec| | 2014-6-12 00:25 | 只看该作者
好吧,从***论坛看到解决方法了
//禁止JTAG功能
    LPC_IOCON->R_PIO1_0  &= ~0x07;                       //先清掉为初始复位状态
    LPC_IOCON->R_PIO1_0  |=  0x01;                           //禁止TMS
    LPC_IOCON->R_PIO1_1  &= ~0x07;                      //先清掉为初始复位状态
    LPC_IOCON->R_PIO1_1  |=  0x01;                          //禁止TDO 再设置所需要的模式
    LPC_IOCON->R_PIO1_2  &= ~0x07;                      //先清掉为初始复位状态
    LPC_IOCON->R_PIO1_2 |=  0x01;                           //禁止TRST 再设置所需要的模式
    LPC_IOCON->R_PIO0_11 &= ~0x07;           
    LPC_IOCON->R_PIO0_11 |=  0x01;                          //禁止TDI 设置为普通GPIO(LED5)
  LPC_SYSCON->SYSAHBCLKCTRL|=(1<<6); //打开GPIO时钟关闭
  LPC_SYSCON->SYSAHBCLKCTRL|=(1<<16);//打开IOCON时钟关闭
然后再设置IO口方向,和电平就可以了

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

10

帖子

1

粉丝