K210 串口通信

news/2025/2/5 3:47:25/

1. 头文件

#需要调用的库文件
from machine import UART
from Maix import GPIO
from fpioa_manager import fm
import ustruct
  • from 模块 import 方法或者函数

    函数可以直接使用,不用 machine.UART

2. 管脚映射

#映射UART2的两个引脚
fm.register(GPIO.GPIOHS10, fm.fpioa.UART2_TX)
fm.register(GPIO.GPIOHS11, fm.fpioa.UART2_RX)
  • maix dock 有两个串口。

    • IO7 -- WIFI_RX;

      IO6 -- WIFI_TX;

    • IO5 -- ISP_TX;

      IO4 -- ISP_RX;

3. 串口初始化并发送数据

#初始化串口,返回调用句柄
uart = UART(UART.UART2, 115200, 8, None, 1, timeout=1000, read_buf_len=4096)
def seding_data(num1,num2):global uart;data_after = ustruct.pack("<bbhhb",    #格式为俩个字符俩个短整型(2字节)0xb3,               #帧头10xb3,               #帧头2int(num1),          #数据1int(num2),          #数据20x58)               #帧尾uart.write(data_after);	#用于使用串口发送字节数据
  • uart = machine.UART(uart, baudrate, bits, parity, stop, timeout, read_buf_len)
    • uart : UART 号,使用指定的 UART,可以通过 machine.UART. 按tab键来补全。

    • baudrate: UART 波特率

    • bits: UART 数据宽度,支持 5/6/7/8 (默认的 REPL 使用的串口(UARTHS)只支持 8 位模式), 默认 8

    • parity: 奇偶校验位,支持 None, machine.UART.PARITY_ODD, machine.UART.PARITY_EVEN (默认的 REPL 使用的串口(UARTHS)只支持 None), 默认 None

    • stop: 停止位, 支持 11.5, 2, 默认 1

    • timeout: 串口接收超时时间

    • read_buf_len: 串口接收缓冲,串口通过中断来接收数据,如果缓冲满了,将自动停止数据接收。

  • struct.pack(fmt, v1, v2, ...)
    • 功能:将Python的值根据格式符,转换为[字符串](因为Python中没有字节(Byte)类型,可以把这里的字符串理解为字节流,或字节数组)。

    • fmt是格式字符串。具体介绍看下表,注意写的时候要加" "

    • v1, v2, ...表示要转换的python值。

  • "bbhhb"简单来说就是要发送数据的声明

    bbhhb共五个,代表发送五个数据,对照下面的表,可以知道五个数据按时序发送为 signer char、signed char、short、short、signed char

  • 0xb3为数据帧的帧头,即检测到数据流的开始,但是一个帧头可能会出现偶然性,因此设置两个帧头0xb3与0xb3以便在中断中检测是否检测到了帧头以便存放有用数据。

  • 0x58帧尾,即数据帧结束的标志。

格式C类型Python类型标准大小
xpad byteno value
ccharstring of length 11
bsigned charinteger1
Bunsigned charinteger1
?_Boolbool1
hshortinteger2
Hunsigned shortinteger2
iintinteger4
I(字母i大写)unsigned intinteger4
l(字母L小写)longinteger4
Lunsigned longinteger4
qlong longinteger8
Qunsigned long longinteger8
ffloatfloat4
ddoublefloat8
schar[]string1
pchar[]string
Pvoid *integer

http://www.ppmy.cn/news/110763.html

相关文章

【K210】K210学习笔记(总)

【K210】K210学习笔记&#xff08;总&#xff09; 前言K210学习笔记传送门 前言 先说一下本篇博文是用于对 K210 系列学习笔记做一个集中传送门的&#xff0c;方便后续大家可以快速找到对应博文&#xff0c;因此本篇博文对大家的帮助可能要随着时间才能越来越大哦&#xff08;…

KDC+NFS 服务配置

Linux1.skills.com Linux1.skills.com 10.10.20.101 DNS服务器 Linux2.skills.com Linux2.skills.com 10.10.20.102 KDC服务器 Linux3.skills.com Linux3.skills.com 10.10.20.103 NFS和kdc客户 Linux4.skills.com Linux4.skills.com 10.10.20.104 NFS和kdc客户…

K210开发1--简介

基于Sipeed Maixduino 开发板 开发 因为对python熟悉&#xff0c;先由maixpy进行开发&#xff0c;在使用boss的固件系统开发。 硬件 型号:Maixduino 芯片&#xff1a;k210-AI模块 esr32-WiFi蓝牙 模组&#xff1a; 项目说明CPURISC-V双核64比他、内置FPU、400Mhz标准频(可超频…

K210系列开发板介绍

勘智K210是一款什么样的芯片&#xff1f; 勘智K210是小编去年买的一块AIRV R3开发套件时接触的一款芯片。性价比不错&#xff0c;如下图所示&#xff1a;具有双核64位处理器&#xff0c;并自带独立FPU&#xff1b;有一块KPU用于神经网络加速单元&#xff1b;还有一块APU用于语音…

Kendryte K210板级支持包说明

Kendryte K210板级支持包说明 1. 简介 Kendryte K210 是集成机器视觉与机器听觉能力的系统级芯片(SoC)。使用台积电 (TSMC) 超低功耗的 28 纳米先进制程&#xff0c;具有双核64位处理器&#xff0c;拥有较好的功耗性能&#xff0c;稳定性与可靠性。该方案力求零门槛开发&…

K210入门必看(MAIX DOCK)(一)

目录 K210芯片上IO口 板子上的引脚 如何理解【引脚]映射[内部功能]&#xff1f; fpioa_manage 类 1、register(pin, func, forceTrue) 2、unregister(pin) 介绍 3、get_pin_by_function(pin) 4、 get_gpio_used() FPIOA类介绍 1、set_function(pin, func)函数 2、…

K210使用和测试

B站链接&#xff1a; https://www.bilibili.com/video/BV1ET4y1c7rw/ CSDN文件下载&#xff1a; https://download.csdn.net/download/qq_38649386/12920715 目录 前言 4 1 Kendryte开发 5 1.1 IDE环境 5 1.2 开发使用 6 1.2.1 驱动安装 6 1.2.2 使用教程 6 1.3…

K210入门教程

前言 历经了电赛&#xff0c;视觉部分由于openmv高昂的价格难以承担&#xff0c;于是将目光转移到了K210身上&#xff0c;这块一二百块钱即可拥有神经网络的摄像头&#xff0c;拿它做点小项目练练手。 提示&#xff1a;以下是本篇文章正文内容&#xff0c;下面案例可供参考 一…