先来看看实验的结果吧,k210的9口为RX,10口为TX。接线:
9口接usb转ttl的TX
10口接usb转ttl的RX
下面介绍一下k210需要使用的模块:
K210 一共有 3 个串口,每个串口可以自由映射引脚。 例:
# IO10→RX1,IO9→TX1
fm.register(9, fm.fpioa.UART1_RX, force=True)
fm.register(10, fm.fpioa.UART1_TX, force=True)
构造函数
machine.UART(uart,baudrate,bits,parity,stop,timeout, read_buf_len)
创建 UART 对象。
【uart】串口编号。[UART.UART1~UART3]
【baudrate】波特率,常用 115200、9600
【bits】数据位,默认 8
【parity】校验;默认 None, 0(偶校验),1(奇校验)
【stop】停止位,默认 1
【timeout】串口接收超时时间
【read_buf_len】串口接收缓冲大小。
使用方法
UART.read(num)
读取串口缓冲数据
【num】读取字节数
UART.readline(num)
读取串口缓冲数据的行
【num】行数
UART.write(buf)
串口发送数据
【buf】需要发送的数据
UART.deinit()
注销串口
下面是程序:
from machine import UART # 导入串口模块
from fpioa_manager import fm # 导入fm模块
fm.register(9, fm.fpioa.UART1_RX, force=True) # 注册9口为串口的RX接口
fm.register(10, fm.fpioa.UART1_TX, force=True) # 注册10口为串口的TX接口
uart = UART(UART.UART1, 115200, read_buf_len=4096)
uart.write('hello!')
while True:
text=uart.read() #读取数据
if text: #如果读取到了数据
print(text.decode('utf-8')) #REPL 打印
uart.write('wo shou dao le:'+ text.decode('utf-8')) #数据回传
接下来就可以用电脑和k210用串口交互了。