STM32F103RBT6,焊了好几块,都出现各别IO不好使.

2020-01-01 17:33发布

STM32F103RBT6,焊了好几块,都出现各别IO不好使. ,经过检查,发现有不能用的IO有规律,就是JTAG的PA13,14,15,PB3,4不能正常工作,当所有IO驱动LED闪烁时,就这几个管脚不能正常使驱动LED闪烁,要么不亮,要么有微光不闪。 而且USB接口也不能用!? 这是怎么回事!!
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
16条回答
xinshui
2020-01-02 06:36
void GPIO_OutPPConfig(void)
{
  GPIO_InitTypeDef GPIO_InitStructure;

        /* Enable all GPIOs Clock*/
  RCC_APB2PeriphClockCmd(RCC_APB2Periph_ALLGPIO, ENABLE);
       
        // 库函数方式禁止JTAG
        GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable, ENABLE);                    // 改变指定管脚的映射,JTAG-DP禁用,SW-DP使能
        // 寄存器方式禁止JTAG
        //AFIO->MAPR &= 0xfaffffff;                                                                                                                                                        // 重映射JTAG的JTDO,JNTRST

        GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0 | GPIO_Pin_1 | GPIO_Pin_2 | GPIO_Pin_3 | GPIO_Pin_4 | GPIO_Pin_5 | GPIO_Pin_6 | GPIO_Pin_7 | GPIO_Pin_8 | GPIO_Pin_9 | GPIO_Pin_10 | GPIO_Pin_13 | GPIO_Pin_14 ;       
  GPIO_InitStructure.GPIO_Mode =        GPIO_Mode_Out_PP;        // GPIO_Mode_IN_FLOATING;
        GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;       
  GPIO_Init(GPIOA, &GPIO_InitStructure);                                                 // Some GPIOA pins are used for JTAG and USB
       
  /* Configure all GPIO port pins in Analog Input mode (floating input trigger OFF) */
  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_All;
  GPIO_InitStructure.GPIO_Mode =        GPIO_Mode_Out_PP;        // GPIO_Mode_IN_FLOATING;
        GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
  GPIO_Init(GPIOB, &GPIO_InitStructure);
  GPIO_Init(GPIOC, &GPIO_InitStructure);
  GPIO_Init(GPIOD, &GPIO_InitStructure);
  //GPIO_Init(GPIOE, &GPIO_InitStructure);

}

加了重映射函数,但是仍仍然不能使用JTAG的GPIO口  

些贴和我遇到的问题一样。
http://www.amobbs.com/thread-5414690-1-1.html

一周热门 更多>