본문 바로가기

[ST_MICRO]/STM32F1

STM32F103 - CAN Remap 관련 자료 (CAN통신 예제)

STM32F103 - CAN Remap 관련 자료

STM32 CAN통신 예제 소스



CAN Remap 관련 자료
STM32의 CAN제어 핀은 USB D+, D-핀과 공용으로 쓰기 때문에 USB를 사용한다면 다른핀으로 맵핑해야 된다.
다행이 remap기능이 있어 (PA11, PA12), (PB8, BP9), (PD0, PD1)에 할당이 가능하다.

CAN_REMAP[1:0] CAN Alternate function remapping
These bits are set and cleared by software. They control the mapping of Alternate Functions CANRX and CANTX.

00: CANRX mapped to PA11, CANTX mapped to PA12
01: Not used
10: CANRX mapped to PB8, CANTX mapped to PB9 (not available on 36-pin package)
11: CANRX mapped to PD0, CANTX mapped to PD1 (available only on 100-pin package)

결국 64핀 패키지는 PB8, PB9에 연결 가능하다.( PA11, PA12는 USB에 사용)


예제소스
AFIO->MAPR   &= 0xFFFF9FFF;              // reset CAN remap
AFIO->MAPR   |= 0x00004000;                //   set CAN remap, use PB8, PB9   


ST제공 LIB함수 사용 예제
GPIO_PinRemapConfig(GPIO_Remap1_CAN, ENABLE);           //PB8, BP9, GPIO_Remap2_CAN -> PD0, PD1

반응형