Alcor6L/PicoLisp/pwm

This module contains functions for accessing the PWM (Pulse Width Modulation) modules of the Alcor6L CPU.

Functions

edit

pwm-setup

edit

Setup the PWM modules.

(pwm-setup id frequency duty)
  • id - the ID of the PWM module.
  • frequency - the frequency of the PWM module (in Hz).
  • duty - the duty cycle of the PWM module given in percents. This must be an integer between 0 and 100. Depending on the hardware, some duty cycles (particularly 0 and 100) might not be achievable.

Returns:

  • frequency - The actual frequency set on the PWM module. Depending on the hardware, this might have a different value than the frequency argument.

pwm-start

edit

Start the PWM signal on the given module.

(pwm-start id)
  • id - the ID of the PWM module.

Returns: NIL.

pwm-stop

edit

Stop the PWM signal on the given module.

(pwm-stop id)
  • id - the ID of the PWM module.

Returns: NIL.

pwm-setclock

edit

Set the base clock of the given PWM module.

(pwm-setclock id clock)
  • id - the ID of the PWM module.
  • clock - the desired base clock.

Returns:

  • clock - The actual base clock set on the PWM module. Depending on the hardware, this might have a different value than the clock argument.

pwm-getclock

edit

Get the base clock of the given PWM module.

(pwm-getclock id)
  • id - the ID of the PWM module.

Returns:

  • clock - The base clock of the PWM module.