티스토리 뷰
2. EXIT(External Interrupt-외부 인터럽트)
-이번 장은 외부 인터럽트를 이용하여 LED를 키고 끄는 방법을 익힌다.
-주로 외부에서 어떤 자극이 발생했을 시 실행 되어야 하는 소스가 있을 시 사용된다.
-아래 예제는 PA0에 rising edge(Low->High)가 발생 했을 시 PG14핀이 On Off
회로도
STM32F429i Discovery Board의 PA0는 USER 버튼이 연결되어 있다.
기본 pull-down 저항이 배치되어 있어 기본 상태는 0V이며 버튼을 누를 시 5V가 PA0에 공급 된다.
위의 그림은 링크에서 UM1670 데이터 시트를 통해 참고한다.
CUBE MX
SYS설정후
PA0포트에 EXTI0, PG14는
Output 설정을 해준다
위의 Modified는 기본 셋팅을 사용자가 변경시 체크 되며 신경 쓸 필요 없다.
포트에 EXTI를 설정하였을 경우 아래와 같은 설정을 할 수 있다.
GPIO mode: 외부 인터럽트의 발생 방식을 설정할 수 있으며 Rising, Falling Edge가 있다.
GPIO Pull-up/Pull-down: PA0포트에 풀업, 풀다운 저항을 설정할 수 있으며 현재 보드의 PA0는 풀다운 저항이 회로로 구성되어 있으므로 설정할 필요가 없다.
Source Code(main)
/* USER CODE BEGIN 4 */
void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin){
if(GPIO_Pin == GPIO_PIN_0){ //PA0에 Riging Edge 입력시 아래의 함수 실행
HAL_GPIO_TogglePin(GPIOG, GPIO_PIN_14);//PG14가 토클된다 On->Off, Off->On
}
}
/* USER CODE END 4 */
실행 결과
USER 버튼을 누를 때마다 LED On, Off 된다.
'STM32Fxx' 카테고리의 다른 글
STM32F429 - DAC를 이용한 LED밝기 조절 (0) | 2018.09.10 |
---|---|
STM32F429 - TIM Counter (CUBE MX) (0) | 2018.09.10 |
STM32F429- TIM PWM 제어 (CUBE MX) (0) | 2018.09.10 |
STM32F429-TIM를 이용하여 LED 제어 (CUBE MX) (1) | 2018.09.10 |
STM32F429 - CUBE MX를 이용한 - GPIO제어 (0) | 2018.09.10 |
- Total
- Today
- Yesterday
- vba
- STM32F429
- Dir
- 수은건전지
- 착한운전자마일리지
- 홈서비스
- 폴더생성
- STM 입출력
- GPIO
- CUBE MX GPIO
- 정부주택대출
- MCG
- 전세지킴보증서
- 틀고정
- STM CUBE MX
- STM32F
- atmega 설치방법
- 중기청
- STM32F429 GPIO
- STM32F GPIO
- atmel studio 설치
- 파일복사
- atmega 개발
- 제목행
- 중소기업청년
- STM GPIO
- atmel studio7
- atmega128 설치
- filecopy
- Excel
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |