티스토리 뷰
4. TIM(timer) PWM(Pulse Width Modulation)
-이번장은 timer를 이용하여 펄스 폭 변조를 배운다.
-PWM파형은 모터속도제어, LED 밝기 제어 등에 사용 된다.
-아래 예제는 1초 주기의 PWM 파형 duty rate 30% 의 예제이다.
CUBE MX 설정
TIM10 PWM CH1을 설정하면 PF6핀이 설정된다 이 핀을 통해 PWM 파형이 나온다.
현재 Clock Configuration 상태는 위와 같을 것이다 기본 셋팅으로 예제를 돌릴 것이므로 빨간부분(APB2 timer clocks)가 위와 같다면 건드릴 필요 없다.
TIM10의 PWM 모드를 선택했더니 위와 같이 PWM Generation Channel 1이라는 설정이 생겼다
Mode: PWM mode 1,2가 있다 간단히 300 카운터까지의 출력을 High, Low 설정이다 (RM0090 데이터시트의 OC1M 레지스터 참고)
Pulse(16 bits value): 위의 Counter Period가 전체 주기라면 Pulse값은 그 주기의 비율을 설정한다고 보면 된다 현재 300이므로 듀티비 300/1000 * 100 = 30%의 듀티비가 생성 된다
Fast Mode: PF6의 논리값 변화 속도에 대한 설정이다 현재는 느려도 상관이 없으니 Disable 설정을 한다(더욱 자세한 설명은 RM0090의 OC1FE레지스터를 참고)
CH Polarity: TIMx_CCER의 CC1P레지스터 참고
Sorce Code
/* USER CODE BEGIN 2 */
HAL_TIM_PWM_Start(&htim10,TIM_CHANNEL_1);
/* USER CODE END 2 */
실행 결과
'STM32Fxx' 카테고리의 다른 글
STM32F429 - DAC를 이용한 LED밝기 조절 (0) | 2018.09.10 |
---|---|
STM32F429 - TIM Counter (CUBE MX) (0) | 2018.09.10 |
STM32F429-TIM를 이용하여 LED 제어 (CUBE MX) (1) | 2018.09.10 |
STM32F429_CUBE MX를 이용한 EXTI 설정 (0) | 2018.09.10 |
STM32F429 - CUBE MX를 이용한 - GPIO제어 (0) | 2018.09.10 |
- Total
- Today
- Yesterday
- STM 입출력
- 전세지킴보증서
- atmega 개발
- 홈서비스
- MCG
- 중기청
- atmel studio7
- vba
- STM32F429
- 제목행
- 착한운전자마일리지
- 파일복사
- STM32F GPIO
- atmega 설치방법
- STM32F429 GPIO
- GPIO
- STM32F
- CUBE MX GPIO
- Dir
- 중소기업청년
- 정부주택대출
- 수은건전지
- 폴더생성
- atmel studio 설치
- atmega128 설치
- filecopy
- STM GPIO
- 틀고정
- STM CUBE MX
- 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 |