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
반응형