单片机/MCU论坛
直播中

王敏

7年用户 1393经验值
私信 关注
[问答]

用串口调试助手向单片机发送数据,单片机怎么接受并储存到一个数组中?

用串口调试助手向单片机发送数据,单片机怎么接受并储存到一个数组中?数据位128个单字节的16进制代码,并且要使其串口程序与LED的显示程序相结合起来

回帖(5)

h1654155275.5916

2023-5-15 15:01:13
你说的这种通信要求可以采用帧传送的方式,自己要确定一个帧格式,例如:
0X55//帧头标志
0XAA
//128字节数据
校验字节1
校验字节2
校验字节是防止数据传输错误,校验方式可自行选择。
如果数据不是很重要,定义一个132字节接收队列(全局变量数组),如果数据很重要,定义两个132字节接收队列,一个做接收缓冲,接受正确才更新正式队列。还要定义一个接收指针,当接收到帧头标志,接收指针清零,以后每接收一个字符,以接收指针做下标将数据存入接收数组。
举报

王敏

2023-5-15 15:01:22
我之前的程序是显示4个汉字并且用4种方式,现在我需要用串口调试助手来发送这四个汉字的16进制代码(如0x20),我需要将这128个的代码怎么给temp这个数组中?还有串口编译时有个main程序,我以前的程序中也有main程序,需要怎么调整?
举报

h1654155275.5916

2023-5-15 15:01:29
汉字字模数据有提取工具,可以直接生成数组变量。
程序调整按我上面说的思路。
举报

阿信509

2023-5-15 16:09:35
建议先去学学C语言,然后在编程序
举报

大懒猫54

2023-5-17 12:20:50
利用单片机的串口(含中断方式)处理啊。可以设置在接收到指定字节数据之后,启动数据的分析及显示处理。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分