单线SPI的在线编程方案


“串口下载”是大多数工程师最早接触的程序下载方式,尤其是一开始使用51单片机的工程师们。随着硬件集成度越来越高,芯片资源不断被压缩,工程师也想到了另一种“串口下载”方式,只需一根数据线即可。
串口,即串行接口(Serial Interface),是一种用于在设备之间进行数据传输的通信接口。它逐位传输数据,一次只传输一个比特,这种传输方式所需的传输线较少,适合长距离通信和一些对线路成本敏感的应用场景。以下为你详细介绍:
分类
异步串口(UART)
工作原理:不需要时钟信号来同步发送方和接收方,而是通过约定好的波特率(每秒传输的比特数)来协调数据传输。数据以帧为单位进行传输,每帧包含起始位、数据位、奇偶校验位(可选)和停止位。
应用场景:在嵌入式系统中广泛应用,如单片机与传感器、蓝牙模块、计算机等设备之间的通信。常见的波特率有 9600、115200 等。
同步串口
工作原理:使用一个时钟信号来同步发送方和接收方的操作,确保数据的准确传输。时钟信号可以由发送方提供,也可以由外部时钟源提供。同步串口通常用于高速数据传输,能够实现更高的数据传输速率。
应用场景:常用于一些对数据传输速率和同步性要求较高的场景,如 SD 卡接口、SPI(串行外设接口)、I²C(集成电路总线)等。
“串口下载”是大多数工程师最早接触的程序下载方式,尤其是一开始使用51单片机的工程师们。随着硬件集成度越来越高,芯片资源不断被压缩,工程师也想到了另一种“串口下载”方式,只需一根数据线即可。
硬件开发不可避免要与串口打交道,使用python下的pyserial可以使串口测试和设备调用的工作自动化。这里介绍pyserial的一些基础知识。
1、安装pyserial
linux上直接安装: