学习笔记:https://www.bilibili.com/video/BV1m7411H7oT?p=7【1】开机后,LED1与LED2依次点亮,然后熄灭,进行灯光检测。【2】系统通过串口1向上位机发送一个字符串“stm32103”【3】LED1作为一个秒闪灯,系统向上位机发送完字符串后,开始亮0.5秒,灭0.5秒….循环闪烁,并开始启动系统运行时间记录,其时分秒格式为“XX:XX:XX”【4】
串口可以配置成用DMA方式接收数据,不过DMA需要定长才能产生接收中断,如何接收可变长度数据呢?方法有以下3种:1.将RX脚与一路时钟外部引脚相连,当串口一帧发完,即可利用此定时器产生超时中断.这个实时性较高,可以做到1个字节实时监测.2.不改变硬件,开启一个定时器监控DMA接收,如果超时则产生中断.这个实时性不高,因为超时时间必须要大于需要接收时间,精度不好控制.3.STM32单片机有的
权限:<uses-permission android:name="android.permission.READ_SMS"></uses-permission>< uses-permission android:name="android.permission.SEND_SMS"></uses-permission>发
原创 2015-04-10 22:21:44
787阅读
嵌入式系统中应用最广泛一种通讯设备,只要三根线(TX,RX,GND),合适低速长距离通讯。发送接收控制流程如下:1.初始化串口包括使能串口时钟,使能发送接收,定义引脚,波特率,数据位长度,奇偶校验方式,停止位位数。使能串口模块接收中断,此时不能使能发送中断[炸弹]。使能全局串口中断并设置优先级。定义一个接收超时定时器,设置好超时值,并使能超时中断,这此定时器是关闭状态。2. 发送定义控制结
CubeMX配置串口通讯(中断方式和DMA方式)前言一、中断方式1.CubeMX配置2.代码实现3.实验结果二、DMA方式1.CubeMX配置2.代码实现3.实验结果总结 前言本章继续介绍使用STM32CubeMX串口进行配置方法,串口通讯有三种方式:轮询,中断和DMA,上一章节实现了重载printf功能和串口轮询接收功能,本章介绍中断和DMA方式,上一章节已经对串口进行了介绍,附有连接和烧
HAL库+CubeMX 串口发送和中断接收字符串单个串口收发1、串口cubeMX中配置2、串口接收中断与空闲中断3、串口发送数据4、串口中断接收字符串数据注意:每次中断只能接收一个字符!!!为了实现多次数据返回,我们要在中断处理函数中添加HAL_UART_Receive_IT;另外,main函数在进入while循环前要调用HAL_UART_Receive_IT5、总体代码效果6、APB时钟计
硬件平台:正点原子STM32MINI开发板(STM32RCT6) 软件平台:STM32CubeMX KEIL5 实现功能:串口控制LED灯亮灭 串口向电脑发送数据 硬件连接: PA8 ->LED0 说明:有时候程序下载后不实现,可试着复位一下,也可在魔术棒配置中打开下载后复位。 (仅仅写了串口部分,其余初始化未做说明) 1、选择串口1,选择模式为异步通讯 2、配置串口相关数据,波特率此处配置
概述 上一篇写了 STM32CubeMX 串口使用,而这篇来扒一扒,它是怎么进行封装。可以学到知识STM32CubeMX 是怎么用结构体封装串口如何用结构体直接访问寄存器stm32外设时钟是怎么看stm32内存长什么样子常量指针如何使用...一.串口实例 我们都知道,其实单片机最后其实都是对 串口相关寄存器 进行操作,那么我们想扒一扒它流程,必然要先知道串口相关寄存器是哪些,因此
Qt demo, 做了一个Udp发送例子,参考:https://stackoverflow.com/questions/6515589/how-do-i-send-and-receive-udp-packets-in-qt代码如下:1. 引用与全局socket定义:#include <QUdpSocket>QUdpSocket *socketUdp;2. ...
原创 2021-06-01 16:35:41
4810阅读
Qt demo, 做了一个Tcp发送例子,参考:https://stackoverflow.com/questions/7923485/simplest-qt-tcp-client代码如下:1. 引用与全局socket定义:#include <QTcpSocket>QTcpSocket *socket;2. 发送与接收//发送void FormNetCo...
原创 2021-06-01 16:35:42
1835阅读
上一节我们学习了串口轮询收发,以及HAL库自带中断收发。也分析了优缺点,这一节我们来讲讲如何改写HAL库函数,使它能更高效地收发数据,更方便地使用。早些年在使用51单片机、AVR单片机时候,最有效办法是开两个环形缓冲区,一个用作发送、一个用作接收接收实现:开启接收数据中断;当收到数据产生中断时,在中断服务程序中,把收到数据放入接收环形fifo中;主循环中检测接收fifo中有无数据,有
UDP 发送与接收数据
原创 2017-12-05 13:39:02
5833阅读
3点赞
​TCP发送与接收数据
原创 2017-12-06 10:45:28
1691阅读
//发送端#include #include #include #include using namespace std; int main() { WSADATA wsaData; short version = MAKEWORD(2,0); WSAStartup(version,&wsaData);//初始化socket int sock = -1; if ((sock = socket(AF_INET, SOCK_DGRAM, 0)) == -1) { cout #include #include ...
转载 2013-07-29 19:46:00
238阅读
2评论
# Java Socket发送与接收实现教程 ## 一、整体流程 在实现Java Socket发送与接收过程中,我们可以按照以下步骤进行操作: ```mermaid journey title Java Socket发送与接收实现流程 section 创建Socket section 建立连接 section 发送数据 section 接收数据 ``
原创 2023-09-19 13:46:17
55阅读
1.简介 所有MQ产品从模型抽象上来说都是一样过程。消费者订阅某个队列。生产者创建消息,然后发布到队列,最后将消息发送到监听消费者。 AMQP(Advanced message queuing protocol)是一个提供统一消息服务应用层标准协议,基于此协议客户端与消息中间件可传递消息,并
原创 2021-07-15 10:17:16
676阅读
创建websocket对象,参数为服务器websockets地址:websocket = new WebSocket("ws:127.0.0.1:7001");1、发送文本数据websocket.send('我太笨了,不知道你说是啥')2、发送对象数据发送对象的话需要通过 JSON.parse() 和JSON.Stringify()来转换成字符串发送接收到之后解析字符串来实现,当然还有其他
原创 4月前
360阅读
首先,底层数据传输都是字节流,所以不管选择什么方式,都会被分解为一个一个字节。 1、选择Hex发送就代表你要发送内容是纯数字,由程序完成String到Int再到Byte转化。所以你应该保证每个你要发送数都是两位,如果是7就应该写07,因为程序会每两位每两位地读。如果你选择了Hex发送,而
原创 2022-03-21 14:53:52
7622阅读
  记录一下串口dma使用,dma好处在于他传输是不需要经过CPU,可以实现内存和外设直接双向通信。合理使用dma能使程序设计变得简单。以串口3为实例介绍一下串口dma配置过程,其他串口也是一样,只需要修改一下dma通道。  首先串口配置过程与常规配置基本一致,不过说明一点就是,如果使用dma接收不定长数据的话,比较常用一种方法是利用空闲中断。所以在配置
  • 1
  • 2
  • 3
  • 4
  • 5