ABOV/이론

르네사스 MCU PWM기능 사용하기

원원 2021. 9. 19. 23:45

안녕하세요. 오늘은 르네사스 테스트보드(QB-R5F1026A) 기능인 PWM을 사용 해보겠습니다 .

PWM은 (Pulse Width Modulation)의 약자입니다. 

타이머 2채널을 사용해서 위상이 다른 PWM을 출력합니다.

한 채널은 마스터가 되고 다른 채널은 슬레이브가 됩니다. 

 

 

CK01,CK00은 분주비입니다

TS0n은 시작하는 레지스터입니다

TDR0n,TDR0p은 데이터 레지스터입니다

TCR0n,TCR0p는 카운터 레지스터입니다

 

 

 

 

사이클타임 1000ms, 듀티비 10%을 만들어보겠습니다

채널0을 MASTER, 채널1을 SLAVE로 했습니다

 

사이클을 1000ms로 했습니다

 

듀티비를 10%로 했습니다

 

 

코드제너레이터를 통해서 만들어진 레지스터를 확인해보겠습니다

Pulse period가 1000ms Duty factor 가 10%가 나오면 됩니다

 

1. Pulse period

현재 사용하는 MCU의 클럭은 8Mhz로 설정이 되어있습니다.

    TPS0 = _0007_TAU_CKM0_FCLK_7 | _0000_TAU_CKM1_FCLK_0 | _0000_TAU_CKM2_FCLK_1 | _0000_TAU_CKM3_FCLK_8;

_0007_TAU_CKM0_FCLK_7 는 0x0007입니다. 

주파수가 62.5kHz 이므로 주기는 0.000016s 입니다(Counter clock period)

TDR00은 62499입니다 (마스터꺼)

Pulse period = (62499+1)*0.000016 = 0.9992s (약1000ms)

 

2. Duty factor

TDR00은 62499입니다 (마스터꺼)

TDR01은 6250입니다(슬레이브꺼)

Duty factor = 6250*(62499+1)*100 = 10%

 

채널1을 슬레이브로 했으므로 TO01 에서 출력이 발생합니다

 

'ABOV > 이론' 카테고리의 다른 글

ABOV MCU (A94B114) 클럭  (0) 2021.10.30
르네사스 MCU STOP MODE 사용하기  (0) 2021.09.19