[中文]

PWM

PWM API reference

Functions

OSStatus bk_pwm_initialize(bk_pwm_t pwm, uint32_t frequency, uint32_t duty_cycle)

Initialises a PWM.

Note

Prepares a Pulse-Width Modulation pin for use.

Parameters
  • pwm – : the PWM interface which should be initialised

  • frequency – : Output signal frequency in Hertz

  • duty_cycle – : Set pwm first level reversal time

Returns

  • kNoErr : on success.

  • kGeneralErr : if an error occurred with any step

OSStatus bk_pwm_start(bk_pwm_t pwm)

Starts PWM output on a PWM interface.

Note

Starts Pulse-Width Modulation signal output on a PWM pin

Parameters

pwm – : the PWM interface which should be started

Returns

  • kNoErr : on success.

  • kGeneralErr : if an error occurred with any step

OSStatus bk_pwm_update_param(bk_pwm_t pwm, uint32_t frequency, uint32_t duty_cycle)

updat PWM

Note

Update pwm cycle and duty_cycle when pwm working.

Parameters
  • pwm – : the PWM interface which should be started

  • frequency – : pwm frequency

  • duty_cycle – : set first level change time

Returns

  • kNoErr : on success.

  • kGeneralErr : if an error occurred with any step

OSStatus bk_pwm_stop(bk_pwm_t pwm)

Stops output on a PWM pin.

Note

Stops Pulse-Width Modulation signal output on a PWM pin

Parameters

pwm – : the PWM interface which should be stopped

Returns

kNoErr : on success.

kGeneralErr : if an error occurred with any step

OSStatus bk_pwm_capture_initialize(bk_pwm_t pwm, uint8_t cap_mode)

Initialises capture PWM.

Note

Initialises pwm as capture mode

Parameters
  • pwm – : the PWM interface which should be initialised

  • cap_mode – : capture mode: 4:posedge, 5:negedge, 6:both

Returns

  • kNoErr : on success.

  • kGeneralErr : if an error occurred with any step

OSStatus bk_pwm_capture_start(bk_pwm_t pwm)

Start capture PWM.

Note

start pwm as capture

Parameters

pwm – : the PWM interface which should be started

Returns

  • kNoErr : on success.

  • kGeneralErr : if an error occurred with any step

OSStatus bk_pwm_capture_stop(bk_pwm_t pwm)

Stop capture PWM.

Note

stop pwm as capture

Parameters

pwm – : the PWM interface which should be stopped

Returns

  • kNoErr : on success.

  • kGeneralErr : if an error occurred with any step

UINT32 bk_pwm_get_capvalue(bk_pwm_t pwm)

Get capture PWM value.

Note

get pwm captured value

Parameters

pwm – : the PWM interface which should be get

Returns

  • kNoErr : on success.

  • kGeneralErr : if an error occurred with any step

OSStatus bk_pwm_cw_initialize(bk_pwm_t pwm1, bk_pwm_t pwm2, uint32_t frequency, uint32_t duty_cycle1, uint32_t duty_cycle2, uint32_t dead_band)

Initialises two PWMs with group mode.

Note

Initialises pwm-group mode

Parameters
  • pwm1 – : the PWM1 interface which should be initialised low level first on pin

  • pwm2 – : the PWM2 interface which should be initialised, high level first on pin

  • frequency – : Output signal frequency in Hertz

  • duty_cycle1 – : Set pwm1 first level reversal time

  • duty_cycle2 – : Set pwm2 first level reversal time

  • dead_band – : Set reversal time between two pwms high level

Returns

  • kNoErr : on success.

  • kGeneralErr : if an error occurred with any step

OSStatus bk_pwm_cw_start(bk_pwm_t pwm1, bk_pwm_t pwm2)

Start two PWMs with group mode.

Note

Start pwm group mode

Parameters
  • pwm1 – : the PWM1 interface which should be started

  • pwm2 – : the PWM2 interface which should be started

Returns

  • kNoErr : on success.

  • kGeneralErr : if an error occurred with any step

OSStatus bk_pwm_cw_update_param(bk_pwm_t pwm1, bk_pwm_t pwm2, uint32_t frequency, uint32_t duty_cycle1, uint32_t duty_cycle, uint32_t dead_band)

Updata two PWMs with group mode.

Note

Updata param pwm-group mode

Parameters
  • pwm1 – : the PWM1 interface which should be updata, low level first on pin

  • pwm2 – : the PWM2 interface which should be updata, high level first on pin

  • frequency – : Output signal frequency in Hertz

  • duty_cycle1 – : Set pwm1 first level reversal time

  • duty_cycle2 – : Set pwm2 first level reversal time

  • dead_band – : Set reversal time between two pwms high level

Returns

  • kNoErr : on success.

  • kGeneralErr : if an error occurred with any step

OSStatus bk_pwm_cw_stop(bk_pwm_t pwm1, bk_pwm_t pwm2)

Stop two PWMs with group mode.

Note

Stop pwm group mode

Parameters
  • pwm1 – : the PWM1 interface which should be stopped

  • pwm2 – : the PWM2 interface which should be stopped

Returns

  • kNoErr : on success.

  • kGeneralErr : if an error occurred with any step

Enumerations

enum bk_pwm_t

Values:

enumerator BK_PWM_0
enumerator BK_PWM_1
enumerator BK_PWM_2
enumerator BK_PWM_3
enumerator BK_PWM_4
enumerator BK_PWM_5
enumerator BK_PWM_MAX
enumerator BK_PWM_NONE