目录
1.K210如何打包发送HEX数据包
1.1导入需要的库
from fpioa_manager import fm #用于映射IO口
from machine import UART #用于串口配置
from machine import Timer #用于产生定时器中断 用于读取是否接收到数据包
1.2串口初始化及定义发送的数据格式
fm.register(17, fm.fpioa.UART1_TX, force=True)
fm.register(21, fm.fpioa.UART1_RX, force=True)
#8位数据位,无校验位,1位停止位 波特率115200 另外一个单片机的配置需要相同
uart_A = UART(UART.UART1, 115200, 8, 0, 1, timeout=1000, read_buf_len=4096)
class K210_transmit():
head = 0xAA
x = 256
y = 312
end = 0xAF
K210 = K210_transmit()
#单片机一般都是一个字节一个字节读取串口数据,所以我们要把数据一个字节一个字节的进行发送
#我们通常使用K210都是发送坐标数据给其它单片机,但是坐标范围明显超过了一个字节大小(255),所以把
#x,y坐标拆分成高8位和低8位发送,确保数据不会因为超出范围产生错误
def K210_data():
data=bytearray([K210.head,
K210.x>>8,K210.x,
K210.y>>8,K210.y,
K210.end])
return data
1.3发送数据包
uart_A.write(K210_data())
2.STM32如何发送特定格式数据包
STM32单片机的串口初始化我这里就不过多介绍了,相信大家学到了K210单片机,STM32自然是没有问题的,我们只需要将其配置为115200,8位数据位,无校验位,1位停止位即可。
void USART1_init(int botelv)
{
RCC_APB2P

本文详细介绍了如何在K210和STM32单片机上打包和发送HEX格式数据包,包括串口配置、数据格式拆分、发送函数以及STM32的特定格式数据包发送与接收处理。
最低0.47元/天 解锁文章
4746





