REMAP 기능 ( PB4 핀 GPIO사용위함)

CPU/STM32F103 2014. 4. 13. 23:28

이번에는 REMAP를 해보겠습니다.

왜 하냐??? PB4핀이 움직이지 않아서 확인 해보았더니...JTAG기능으로 우선되어 있더군요.

NJTRST로 되어 있는 것을 PB4로 사용하기 위해서는 REMAP를 해주어야 합니다.


 MCU_GPIO_Configuration();

  

  /* Configure PC13.PA11 in interrupt mode */

  EXTI15_10_Config();

  

  GPIO_PinRemapConfig(GPIO_Remap_SWJ_NoJTRST, ENABLE);      // it's for PB4 PIN( org is NJTRST pin) , it have to locate last after gpio config.


순서는 GPIO를 초기화 후 마지막에 해주어야 됩니다. 먼저 해주니 움직이지 않는 군요.


경우엔 따라서 JTAG전체 핀을 사용해야 되는 경우도 생기겠죠?

그럴때 아래와 같이

GPIO_PinRemapConfig(GPIO_Remap_SWJ_Disable      , ENABLE);

요렇게 하거나 아래의 것을 참보하여 하면 됩니다.

#define GPIO_Remap_SWJ_NoJTRST      ((uint32_t)0x00300100)  /*!< Full SWJ Enabled (JTAG-DP + SW-DP) but without JTRST */

#define GPIO_Remap_SWJ_JTAGDisable  ((uint32_t)0x00300200)  /*!< JTAG-DP Disabled and SW-DP Enabled */

#define GPIO_Remap_SWJ_Disable      ((uint32_t)0x00300400)  /*!< Full SWJ Disabled (JTAG-DP + SW-DP) */


아래 디볼트 세팅에 관한 부분입니다. PB4가 기본 JNTRST고 리멥하면 PB4로 쓸수 있는 구조네요...

잘 만들었네요...



그럼