1
스위치 입력을 기반으로 LED 색상을 변경하기 위해 TI Tiva C Launchpad (TM4C123GH6PM)를 프로그래밍하고 있습니다. 이것은 비교적 간단해야하지만, 원하는 포트 F의 잠금을 해제하고 커밋 비트를 쓰는 데 문제가 있습니다. CR 비트 (즉, 스위치를 활성화하기 위해)를 작성하려고하면 디버거가 "BusFault_Handler"로 바로갑니다.TI TM4C - GPIOCR 설정이 BusFault로 바뀌는 이유는 무엇입니까?
#define GPIOLock_PortF (*(unsigned int*)0x40025520)
#define GPIOCR_PortF (*(unsigned int*)0x40025524)
#define Unlock ((unsigned int)0x4C4F434B)
#define SWs ((unsigned int)0x11)
int main(){
GPIOLock_PortF = Unlock; //undo GPIOLock to get to GPIOCR
GPIOCR_PortF = SWs; //enable commit for switches
을 최대한 빨리 C의 마지막 줄에 대한 최초의 어셈블리 명령어를 실행하려고 ...
MOVS R0, #17
... 다음과 같이 그 시점까지
내 코드입니다 디버거가 "BusFault_Handler"로 떨어집니다.
누구나 분명히 잘못된 것을 볼 수 있습니까? 데이터 시트를 오해 했습니까?
감사합니다.
아, 맞아. 내 코드에서 Clock Enable (클럭 활성화)을 사용했지만 그 전에는 잠금 해제 (잠금 해제) 후에 사용했습니다. – PoGaMi
게시 된 코드에 Clock Enable이 없습니다 : D – Uint32