PIO 类 – 高级 PIO 使用¶
本PIO
类提供访问RP2040的PIO(可编程I / O)接口的一个实例。
与 PIO 交互的首选方式是使用rp2.StateMachine
,PIO 类用于高级用途。
有关汇编 PIO 程序的信息,请参阅rp2.asm_pio()
。
方法¶
-
PIO.
add_program
(program)¶ 将程序添加到该 PIO 实例的指令存储器中。
每个 PIO 实例上可供程序使用的内存量是有限的。如果 PIO 的程序存储器中没有足够的空间,此方法将引发
OSError(ENOMEM)
.
-
PIO.
remove_program
([program])¶ 从此 PIO 实例的指令存储器中删除程序。
如果没有提供程序,它会删除所有程序。
删除已经删除的程序不是错误。
-
PIO.
state_machine
(id[, program, ...])¶ 获取编号为id的状态机。在 RP2040 上,每个 PIO 实例有四个状态机,编号为 0 到 3。
任选一个初始化程序:见
StateMachine.init
.>>> rp2.PIO(1).state_machine(3) StateMachine(7)
-
PIO.
irq
(handler=None, trigger=IRQ_SM0 | IRQ_SM1 | IRQ_SM2 | IRQ_SM3, hard=False)¶ 返回此 PIO 实例的 IRQ 对象。
MicroPython 仅在每个 PIO 实例上使用 IRQ 0。IRQ 1 不可用。
可选地配置它。