class TimerChannel – configurer un canal pour un minuteur¶
Un objet TimerChannel représente l’un des canaux de comparaison de sortie ou de capture d’entrée d’un Timer. Les canaux ne sont pas construits directement ; ils sont renvoyés par Timer.channel(), qui à la fois configure le canal et retourne l’objet d’encapsulation
timer = pyb.Timer(2, freq=1000)
ch2 = timer.channel(2, pyb.Timer.PWM, pin=pyb.Pin.board.P1,
pulse_width_percent=25)
Les méthodes ci-dessous ajustent à l’exécution le registre de comparaison/capture du canal et installent des fonctions de rappel propres à chaque canal.
Constructeurs¶
- class pyb.TimerChannel¶
Les objets
TimerChannelne sont pas construits directement. UtilisezTimer.channel()pour en obtenir un.Méthodes¶
- callback(fun: Callable[[Timer], None] | None) None¶
Définit la fonction à appeler lorsque le canal de minuteur se déclenche.
funreçoit 1 argument, l’objet minuteur. SifunvautNone, alors la fonction de rappel sera désactivée.
- capture(value: int | None = None) int | None¶
Lit ou définit la valeur de capture associée à un canal. capture, compare et pulse_width sont tous des alias de la même fonction. capture est le nom logique à utiliser lorsque le canal est en mode capture d’entrée.
- compare(value: int | None = None) int | None¶
Lit ou définit la valeur de comparaison associée à un canal. capture, compare et pulse_width sont tous des alias de la même fonction. compare est le nom logique à utiliser lorsque le canal est en mode comparaison de sortie.
- pulse_width(value: int | None = None) int | None¶
Lit ou définit la valeur de largeur d’impulsion associée à un canal. capture, compare et pulse_width sont tous des alias de la même fonction. pulse_width est le nom logique à utiliser lorsque le canal est en mode PWM.
En mode aligné sur les fronts (edge aligned), une pulse_width de
period + 1correspond à un rapport cyclique de 100 %. En mode aligné au centre (center aligned), une largeur d’impulsion deperiodcorrespond à un rapport cyclique de 100 %.
- pulse_width_percent(value: int | float | None = None) int | float | None¶
Lit ou définit le pourcentage de largeur d’impulsion associé à un canal. La valeur est un nombre compris entre 0 et 100 et définit le pourcentage de la période du minuteur pendant lequel l’impulsion est active. La valeur peut être un entier ou un nombre à virgule flottante pour plus de précision. Par exemple, une valeur de 25 donne un rapport cyclique de 25 %.