본문으로 바로가기

[STM32] GPIO 설정할때 주의

category MicroProcessor/STM32 2015.04.15 00:30

 

흠 .. 뻘짓을 겁나 했군..

 

GPIO Configureation Register Low 의 초기값은 0x4444 4444 임

 

즉 CNF 비트는 01로 Floating input 상태로 되어 있고

 

MODE는 00 이 되어 있으므로 Input mode를 유지하고 있다.

 

Port Direction을 위해 비트를 설정할 때 기존 GPIO 비트들을 유지하기 위해

 

or 연산을 사용하는데..

 

이때 마스킹을 해서 리셋이나 해당 비트만 바꿀 수 있도록 해주자..

 

단순하게 GPIOA-> CRL |= GPIO_CRL_MODE5_0 로 해주니..

 

모드는 Output으로 변하지만 Output 설정이 Opendrain이 되어 버리면서 출력을 못하게 된다 -_-

 

PushPull 을 써주기 위해선 꼭 CNF 비트를 0으로 초기화 해주자~ 그럼 기본적인 PushPull이 탄생된다.. ㅡㅜ

 

 

 

 

 

'MicroProcessor > STM32' 카테고리의 다른 글

[Em::Block] math.h include하기  (0) 2015.08.05
GPIO_PinRemapConfig 순서  (0) 2015.07.29
ST 자이로스코프 L3GD20  (0) 2015.07.25
[STM32] GPIO 설정할때 주의  (0) 2015.04.15
[ResetDy] EmBlocks 에서 svd 파일 추가하기  (0) 2015.04.14
[STM32] hex 2 bin 파일링크  (0) 2015.04.13

댓글을 달아 주세요