登录
首页 » Others » 真正实现了STM32 HAL串口不定长数据的接收发送功能(DMA方式,不用限定单次接收长度和添加结束标志)

真正实现了STM32 HAL串口不定长数据的接收发送功能(DMA方式,不用限定单次接收长度和添加结束标志)

于 2020-11-27 发布
0 313
下载积分: 1 下载次数: 4

代码说明:

网上使用HAL串口时很多都没有实现不定长数据的接收,要么是限定数据长度,要么是加“0x0a 0x0d”来控制接收完成,找了很久都没有真正找到一个能用的,在很多通信中不可能是定义的,或是加上“0x0a 0x0d”来实现的,由于项目需要,自己阅读STM32 HAL的文档,写出了一个Demo程序,可以实现回显功能(就是通过给STM32发送不定长的数据,可以实现一模一样接收发送的数据),在STM32F429IGT6上验证过,跑了一天没有出现丢失数据的问题,使用DMA发送与接收方式,可以释放CPU部分运算资源,程序中的UART_RX_BUF_SIZE定义为128,就是一次最大接收为128,我在项目中通过

下载说明:请别用迅雷下载,失败请重下,重下不扣分!

发表评论

0 个回复

  • cc2430电路及pcb
    电子文档 电路原理图和pdf的pcb图 ti的资料
    2020-11-30下载
    积分:1
  • 时域特征值MATLAB
    提取了将近10种时域特征值,包括平均值,方差,均方根,四分位间距等
    2020-11-27下载
    积分:1
  • PyGame官方手册(官方API)包含中文和英文(全)
    PyGame官方手册(官方API)包含中文和英文(全)内容包含:Pygame官方中文文档(v1.9.2).pdfPygame官方英文文档(v1.9.2).pdf
    2020-12-06下载
    积分:1
  • dwt算法matlab实现
    语音识别的dtw算法matlab实现 特定人识别
    2020-12-08下载
    积分:1
  • 涡旋光束空间相位模拟
    近年来,涡旋光束由于在囚禁和操控原子及其他微粒中的应用而引起了不少关注和研究。涡旋光束在光束的传播方向上有一个位相项e(ilθ),而且它拥有一个光束轨道角动量,该matlab程序实现了从一个高斯基模变换到涡旋光束的基本功能。
    2020-12-05下载
    积分:1
  • cnn 经典matlab代码
    卷积神经网络经典代码,非常详细,可直接运行
    2020-11-28下载
    积分:1
  • 模糊综合评价方法的软件实现
    本文介绍了使用matlab来进行模糊综合评价的方法
    2020-12-03下载
    积分:1
  • 基于STM32单片机的多路数据采集系统设计
       本文是基于ARM Cortex-M3的STM32系列嵌入式微控制器的应用实践,介绍了基于STM32单片机的数据采集的硬件设计和软件设计,数据采集系统是模拟域与数字域之间必不可少的纽带,它的存在具有着非常重要的作用。本文介绍的重点是数据采集系统,而该系统硬件部分的重心在于单片机。数据采集与通信控制采用了模块化的设计,数据采集与通信控制采用了单片机STM32来实现,硬件部分是以单片机为核心,还包括A/D模数转换模块,显示模块,和串行接口部分。该系统从机负责数据采集并应答主机的命令。输入数据是由现场模拟信号产生器产生,8路被测电压再通过模数转换器ADC0809进行模数转换,实现对采集到的数据进
    2020-12-03下载
    积分:1
  • 硬石电机控制专指导手册_20180515.zip
    本文档是电机控制基础,分为硬件设计和软件设计两大部分,主要设计的电机控制有伺服电机、步进电机、无刷直流电机、舵机的控制。分析了各种电机的工作原理、构成。对于BLDC的矢量控制,svpwm。等等
    2020-12-07下载
    积分:1
  • WinCC V7.2与S7 1200和1500通讯手册
    WinCC V7.2与S7-1200/1500 PLC常规通讯,此文档主要讲述如何使用“SIMATIC S7-1200, S7-1500 Channel”通道,组态与S7-1200/1500的以太网通讯。1概述自 WinccⅥ7.2版本起,软件新増加了“ SIMATIC S7-1200,S7-1500 Channel”通道,用于 Wincc与S7-1200/S7-1500PLC之间的通信。此驱动只支持以太网通讯,使用TCP/IP协议。此文档上要讲述如何使用“ SIMATIC S7-1200,S7-1500 Channel”迸道,组态与S71200/1500的以太网通讯。在win℃C项目中可添加此驱动,如图1-1所示,打开变量管理界面,选择“变量管理”点击鼠标右键,选择“添加新的驱动程序”,在驱动列表中选择“ SIMATIC S7-1200,S7-1500 Channe1”驱动。文件编辑E)视图帮助什变量管理《变量管理数结构变导入Modbus TCPIPOPC5Profibus DP6Profibus FmsSIMATIC 505 TCPIP8SIMATIC S5 Ethernet Layer 410SIMATIC S5 Profibus FDL本本本符本符符符符本本11SIMATIC $5 Progr ammers Port AS51112SIMATIC S5 Serial 3964R1314SIMATIC ST-1200. S7-1500 Channel1516SIMATIC TI Serial点17Simotion18System Info19图1-1添加驱动文档示例的软硬件环境件: Wincc项目运行的电脑自带普通以太內卡、CPU1214C、CPU1511-1PN软件: WinCc7.2Upd6、 Simatic net v8.2SPl、Step7Ⅵ13(用于组态S71500/1200)2 Wincc v7.2与S7-1200PLC常规通讯2.1设置PLC通讯参数在Step?Ⅵ13组态软件中打开S7-1200项目,关丁PLC硬件组态步骤在此不详述。在树形菜单中打开“设备和內络”,打开网终视图点击CPU1214C通讯端口,在“属性”界面中设置通讯参数,在“子网”列表中可把接口连接到某一子网,设置“IP电址”和“子网掩码”参数。简单通讯情况下,可以不用启用IP路由尜,如图2-1所小。□项目157-1200鱼设备和网络PLC 1CPU 12140Pu1511-1PN571500AC/DC/RlyPLC设备组态旦在和诊断程序块「工艺对象细外部原文件PLc变里PLc数据类型圆出控与强制表约程序信息PROFINET接口1[X1:PN(LAN墨设备代理数据属性「信息S诊断文本列表常规0变量系统常数文本□本模块□吒C2[Uu15111刚太网地址以太网地址设备组态高级接口连接到旦在线和诊断时间同步程序块硬件标识符子网:PNE2工艺对象添加新子网外部原文件FLC变里PLc数据类型P协议监控与强制表UTra⊙在项目中设置P地址设备代理据P地址:[19216840120ˇ详细视图子阿镜吗:[255:2552550图2-1S7-1200通讯参数将组态下载到CPU,PLC组态完成2.2 Wincc软件组态步骤2.2.1电脑网卡参数设置在操作系统网络连接中设置此网卡的IP地址以及子网掩码,在此例中,IP地址和PIC的IP地址在同一样网段中,子网掩码一致,如图2-2所示。在PLC和电脑之间接入以太网通讯电缆,测试电脑与PC之间物理连接是否正常。选择操作系统左下角“开始”菜单,在最下一行运行栏中输入“CⅧ”命令,然后敲回车进入DOS命令界面。在界面中输入pins命令,格式:pingping192.168.48,120在Ping192.16841.128具有32字节的数据:自192168,48,128的节=32时间< ms TTL=128自192168.4.128的节=32时间
    2020-12-11下载
    积分:1
  • 696516资源总数
  • 106409会员总数
  • 8今日下载