什么是PIO
PIO,最早是我在raspberry pi pico的介绍中偶然看到的一个新词
转载来在[https://zhuanlan.zhihu.com/p/347948344]
关于PIO的介绍如下:
MCU往往具备丰富的外设接口,这些接口往往设计成固定的符合相关标准或者协议的形式,如SPI/I2C等. 而PIO是完全可编程的接口,当前MCU的IO往往也具备一些可自定义的设计,但是并没有特别聚集在这个功能上面.
PIO本身硬件设计了对应的FIFO以及可以使用对应的汇编语言操作收发以及状态机,IO外部连接合适的RF电路,甚至可以 实现简单的通信功能.
从PIO的框架可以清晰的看到其是一个典型的可编程逻辑.
- 每个通路有独立的FIFO
- 编程器有状态和指令集
- 有中断和MCU通信
其编程器内部设计来看,是典型的PSM设计.
要是做PIO的编程的话,需要从汇编以及其提供的指令开始做起,典型的样式如下: