| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 嵌入式 -> # ringbuffer学习--软件RT-Thread Studio下配置STM32F4xx>>>ringbuffer+串口uart4发送数据-过度+进阶 -> 正文阅读 |
|
[嵌入式]# ringbuffer学习--软件RT-Thread Studio下配置STM32F4xx>>>ringbuffer+串口uart4发送数据-过度+进阶 |
# ringbuffer学习--软件RT-Thread Studio下配置STM32F4xx>>>ringbuffer+串口uart4发送数据-进阶(1)叙述最近学习并使用ringbuffer,因为要涉及多线程并发以及数据存储等问题,综合情况比较复杂,这个时候使用ringbuffer是一个非常好用的工具。 (2)原理:ringbuffer说明#(1)ringbuffer是什么(下定义) 另外:在维基百科上有如下解释: 举一个例子,有个环形的仓库和两个工人,一个(写)工人,只负责往仓库里装东西,有物品或货物来了(写数据),就按照顺序依次向仓储装,一个(读)工人,只负责从仓库取东西,谁需要东西,告诉他,他按照顺序拿物品或货物(取数据)。 为了更好说明上述例子,从维基上下载下来一张图片,比较形象。 #(2)ringbuffer原理实现 #(3)我们为什么使用ringbuffer
#(4)如果使用ringbuffer我们关心什么(关注点) (3)函数接口(1)接口函数:以下为罗列函数
(2)查函数的API手册:如果对于哪个函数不了直接查手册 (4)测试环境软件环境:RT-Thread Studio (5)先行步骤如果之前没有使用过RT-thread studio的话,建议一定要先看下之前文章,里面有很多配置细节,调试不好,很容易一头雾水,自己做本次实验也是基于之前代码,有很多坑都可以避免到,不必重复造轮子。 软件RT-Thread Studio下配置STM32F4xx串口uart2和uart4发送数据-基础样例 (6)步骤说明那么可以说回本次实验了,如果看到这里,那么默认你会使用RT-Thread Studio这款软件,能单独使用串口发出数据了。 具体使用ringbuffer步骤,共计6步:
以上就是具体步骤了,接下来我们将配合代码具体说明 (7) 代码细节如下,为本次测试主要功能代码了,因为要使用uart4发送数据,所以留了uart4的配置
(8) 踩坑细节(1)找到自己目录下的文件配置,自己也是使用之前文章里dome-test代码进行调试的,下下来,一编译发现了错了,按照之前介绍的,配置好文件后,就没有了,所以配置着,配置不好很容易陷在这里。 (9) 代码链接https://download.csdn.net/download/qq_22146161/85195223 (10) 后期验证设备没有任何增加,所以还是使用串口读取数据,效果图如下。 (11) 后续说明这里着只是说明ringbuff原理与初步使用,一般在并发和多线程中,会使用ringbuffer,并且“读-写”相互是不受影响的,但是在多个线程中“读-读”和“写-写”直接要考虑加锁的问题,避免同时访问,具体论述会再写一篇。 |
|
嵌入式 最新文章 |
基于高精度单片机开发红外测温仪方案 |
89C51单片机与DAC0832 |
基于51单片机宠物自动投料喂食器控制系统仿 |
《痞子衡嵌入式半月刊》 第 68 期 |
多思计组实验实验七 简单模型机实验 |
CSC7720 |
启明智显分享| ESP32学习笔记参考--PWM(脉冲 |
STM32初探 |
STM32 总结 |
【STM32】CubeMX例程四---定时器中断(附工 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 3:37:17- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |