GPIO라이브러리없이 LED ON/OFF하기-주소번지 다른이유?
HAL_GPIO_WritePin(GPIO_LED_GPIO_Port, GPIO_LED_Pin, GPIO_PIN_SET);
1.켠다
*(0x40011000) = (8192);
*reg2= 0x2000;
2.끈다
*(0x40011000)= (8192<<16);
*reg2= (0x2000 << 16);
이라고 해석이 되었는데 , 실제 디버깅 시에는 *(0x40011000) 가 아니라 *(0x40011010) 일때 동작하는 이유가 무엇인가요?
답변 1
0
실제 디버깅 시에는 (0x40011000) 가 아니라 (0x40011010) 일때 동작하는 이유가 무엇인가요?
좀 더 자세히 설명을 드릴게요.
GPIO의 레지스터가 있고, Cport에 해당하는 것은 0x40011000이 맞아요.
그런데 이 안에 또 세부적으로 나뉘는게 있어요. (레퍼런스 메뉴얼 171쪽 부터 보시면 나와요)
CRL, CRH, IDR, BSRR 등등.
근데, gpio를 set하고 reset하려면
BSRR을 조작을 해야하고요.
BSRR의 offset이 0x10입니다.
그래서 0x40011010이 되는 거예요. (3:28 초 쯤에 보면 GPIOx->BSRR 이라고 나와요.)
13강 프로젝트생성해보기 관련 질문
0
22
3
난방실만들기.4 진행 중, m_state 값 초기화가 안됩니다..
0
35
2
IDE 설치 영상 관련 문의
0
51
2
[정보 공유] STM32CubeIDE 버전별 이슈 정리 (1.19 미만 / 2.0.0 이상)
0
137
2
스위치회로 value값 바뀌지 않음
0
46
2
FND 점등에 성공했는데, Controller.c 디버깅 중 문제가 생겼습니다.
0
61
2
FND 7세그먼트 처음 킬 때의 '7777'불이 안 들어옵니다.
0
74
2
포트에 안잡히면 x쉘에서 Port설정을 어떻게 하죠..?
0
59
2
빌드 및 디버깅 오류
0
114
2
보드에 불이 안들어옵니다.
0
74
2
씽크 오류
0
57
1
고추건조기 개발보드 전원연결 문제점..
0
74
2
회로도 핀 연결 질문
0
68
2
elf 파일을 찾을수 없다는 오류
0
72
2
Nucleo 보드로 대체
0
85
2
구매해야 하는 물품 문의
0
97
2
ST-Link 디버깅 에러
0
84
3
강의 사용하시는 pdf는 어디에 있나요?
0
111
2
이전 질문 재질문입니다.!
0
77
2
다른 개발 실습 보드 사용문의
0
96
2
smt32 Cube Ide 설치관련 에러입니다
0
229
2
제가 1년전에 구매해서 이제 뜯어봤는데 납땜이 겹쳐있는데 사용해도 괜찮을까요?
0
94
2
타이머 최대 주파수 질문
0
66
2
초기 신호에 대한 질문
0
90
2





