风织云
码龄4年
关注
提问 私信
  • 博客:18,721
    18,721
    总访问量
  • 16
    原创
  • 2,134,996
    排名
  • 9
    粉丝
  • 0
    铁粉
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:湖北省
  • 加入CSDN时间: 2021-01-20
博客简介:

qq_54761976的博客

查看详细资料
个人成就
  • 获得22次点赞
  • 内容获得5次评论
  • 获得144次收藏
创作历程
  • 16篇
    2022年
成就勋章
创作活动更多

2024 博客之星年度评选报名已开启

博主的专属年度盛宴,一年仅有一次!MAC mini、大疆无人机、华为手表等精美奖品等你来拿!

去参加
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

嵌入式RTOS编程

MDK-ARM\uCOS-III\Ports\ARM-Cortex-M3\Generic\RealView路径下选中以下文件,Add添加。MDK-ARM\uC-LIB\Ports\ARM-Cortex-M3\RealView路径下选中下图绿框文件,Add添加。MDK-ARM\uCOS-III\Source路径下选中以下全部 .c .h 文件,Add添加。MDK-ARM\uC-CONFIG路径下选中以下全部文件,Add添加。MDK-ARM\uC-BSP路径下选中以下全部文件,Add添加。
原创
发布博客 2022.11.06 ·
543 阅读 ·
0 点赞 ·
1 评论 ·
0 收藏

基于IIC和SPI协议的OLED显示

SPI(Serial Peripheral Interface)就是串行外围设备接口。SPI,是一种高速的,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线,节约了芯片的管脚。SPI 是一个环形总线结构,由 ss(cs)、sck、sdi、sdo 构成,时序主要是在 sck 的控制下,两个双向移位寄存器进行数据交换。上升沿发送、下降沿接收、高位先发送。上升沿到来的时候,sdo 上的电平将被发送到从设备的寄存器中。下降沿到来的时候,sdi 上的电平将被接收到主设备的寄存器中。
原创
发布博客 2022.11.03 ·
1340 阅读 ·
1 点赞 ·
0 评论 ·
9 收藏

基于IIC和SPI协议的温湿度采集

在消费电子,工业电子等领域,会使用各种类型的芯片,如微控制器,电源管理,显示驱动,传感器,存储器,转换器等,他们有着不同的功能,有时需要快速的进行数据的交互,为了使用最简单的方式使这些芯片互联互通,于是I2C诞生了,I2C(Inter-Integrated Circuit)是一种通用的总线协议。它是由Philips(飞利浦)公司,现NXP(恩智浦)半导体开发的一种简单的双向两线制总线协议标准。
原创
发布博客 2022.11.03 ·
427 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

定时器&PWM练习2

修改完成后,保存调试生成hex文件,然后通过串口助手将文件烧录完成后,实验就完成了。打开刚刚生成的代码找到并打开main.c文件,在此处添加代码。选择好芯片,创建新工程,接下来就是配置的问题。意为开始TIM2的通道2,输出PWM。做好一切准备后就可以保存生成代码了。意为定义一个变量,用来存储占空比。如图所示,和上一个实验的配置相同。然后在如图位置添加以下代码。接下来找到图所示位置。
原创
发布博客 2022.10.30 ·
348 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

定时器&PWM练习

这里我们使用定时器2来实现定时的功能。如图所示,依次点击位置1,选中定时器2;位置2,配置定时器2的时钟源为内部时钟;位置3,分频系数为71,向上计数模式,计数周期为5000,使能自动重载模式。分频系数那里虽然写的是71,但系统处理的时候会自动加上1,所以实际进行的是72分频。然后调试后生成hex文件,通过串口助手烧录,再根据配置连接上led灯就完成了。打开刚刚生成的文件,找到main.c文件中。如图,生成定时器2中断优先级配置代码。如图,开启定时器2的中断。
原创
发布博客 2022.10.30 ·
178 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

DMA (串口DMA发送接收)

DMA(Direct Memory Access,直接存储器访问) 是所有现代电脑的重要特色,它允许不同速度的硬件装置来沟通,而不需要依赖于 CPU 的大量中断负载。否则,CPU 需要从来源把每一片段的资料复制到暂存器,然后把它们再次写回到新的地方。在这个时间中,CPU 对于其他的工作来说就无法使用。
原创
发布博客 2022.10.23 ·
2682 阅读 ·
1 点赞 ·
0 评论 ·
6 收藏

HAL库中断方式进行串口通信

char c;//指令 0:停止 1:开始 char message [ ] = "hello Windows
";//输出信息 char tips [ ] = "CommandError
";//提示1 char tips1 [ ] = "Start.....
";//提示2 char tips2 [ ] = "Stop......
";//提示3 int flag = 0;//标志 0:停止发送 1.开始发送在此次实验中要求运用字符串对输出进行中断,未能及时完成,之后会进行思考完善。
原创
发布博客 2022.10.23 ·
1279 阅读 ·
3 点赞 ·
0 评论 ·
10 收藏

stm32外部中断模式控制灯亮灭

特别注意图中三个地方,前两个红圈,提醒在保存代码的路径和文件名不要出现中文,否则保存的代码会出问题。,将P1设置为高电平,P7为低电平,这里可以对引脚进行命名,方便调试,但也可以不用修改。红圈处的代码是我后来自己加的,原处这里没有代码,找到这个地方,将以下代码粘贴到此处。找到keil上方工具栏中的魔法棒的图标,检查Output处是否勾选了。打开刚刚生成的keil代码文件,找到main.c文件中的这个地方。烧录成功后,就可以根据引脚功能连接灯,并对灯进行调试。生成代码之前,还需要调整相关设置,
原创
发布博客 2022.10.23 ·
306 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

搭建STM32开发环境——STM32CubeMX,Keil5

GPIO mode:推挽输出和开漏输出两者模式,两者模式的区别在于推挽输出中1代表VCC,0表示GND;下面第一个按钮是从本地安装(已经在本地下载了对应的固件库),Install now是通过网络下载,一般不推荐这种方式。Maxinum output speed:最大的输出速度,一般选择low就可以了。GPIO output level:有low和high两种选择,一般选择low。选择File,点击New Project,选择需要的芯片类型。选择Configuration,接着选择GPIO。
原创
发布博客 2022.10.16 ·
1144 阅读 ·
1 点赞 ·
0 评论 ·
11 收藏

基于 MDK 创建 STM32 汇编程序:串口输出 Hello world

通用同步异步收发器(Universal Synchronous Asynchronous Receiver and Transmitter)是一个串行通信设备,可以灵活地与外部设备进行全双工数据交换。有别于 USART 还有一个UART(Universal Asynchronous Receiver and Transmitter),它是在 USART 基础上裁剪掉了同步通信功能,只有异步通信。简单区分同步和异步就是看通信时需不需要对外提供时钟输出,我们平时用的串口通信基本都是 UART。
原创
发布博客 2022.10.16 ·
492 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

用寄存器&HAL库完成LED流水灯程序

寄存器的功能是存储二进制代码,它是由具有存储功能的触发器组合起来构成的。一个触发器可以存储1位二进制代码,故存放n位二进制代码的寄存器,需用n个触发器来构成。按照功能的不同,可将寄存器分为基本寄存器和移位寄存器两大类。基本寄存器只能并行送入数据,也只能并行输出。移位寄存器中的数据可以在移位脉冲作用下依次逐位右移或左移,数据既可以并行输入、并行输出,也可以串行输入、串行输出,还可以并行输入、串行输出,或串行输入、并行输出,十分灵活,用途也很广。
原创
发布博客 2022.10.10 ·
482 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

ARM汇编语言编程入门实践

分析第一行的内容:020000040800F2,可以看成:0x02,0x00,0x00,0x04,0x08,0x00,0xF2。0x08,0x00 :该行两个字节的数据,数据类型是 04 ,即该行记录的是一个拓展地址(0x08 0x00 是地址信息,用法是将该地址(0x0800
原创
发布博客 2022.10.04 ·
680 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Opencv的基本使用和示例图片、视频

由于过程太过复杂,我安装的时候忘记截图了,不过可以看看下面这个博客,堪称保姆级教学https://blog.csdn.net/ssj925319/article/details/109231145。此时在code文件夹里面就会出现test.png的新图片格式,且呈现效果不同。由于电脑摄像头坏了,录制的视频是黑屏,我就不放视频截图了。输入**g++ test2.cpp -o test2。因为文件时.cpp文件,所以不再是运用gcc命令。输入执行命令**./test1**code文件生成一个.avi文件。
原创
发布博客 2022.09.25 ·
1596 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

gcc不是一个人在战斗,了解EFF文件格式

为创建可执行文件,链接器必须要完成的主要任务是:符号解析(把目标文件中符号的定义和引用联系起来)和重定位(把符号定义和内存地址对应起来然后修改所有对符号的引用)。~在 Linux 系 统中,gcc 编 译链 接时 的动 态库 搜索 路径 的 顺序 通常 为:首 先从 gcc 命 令的参 数-L 指 定的 路径 寻找;C 标准库定义了一组标准头文件,每个头文件中包含一些相关的函数、变量、类型声明和宏定义,譬如常见的 printf 函数便是一个 C 标准库函数,其原型定义在 stdio 头文件中。
原创
发布博客 2022.09.25 ·
441 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

用gcc生成静态库和动态库

先在终端窗口创建并打开有个文件,以备之后的程序存储所用。在运行之前,需要先将动态库复制到此目录下。在创建函数库前,我们需准备示例的程序。Esc退出到命令模式:wq保存并退出。完成编写后,同样输入:wq保存并退出。同样可以输入ls -l查看是否生成。然后输入./main执行程序,输出。同样也是输入ls -l可以查看。,将文件转换成.o格式文件。同理生成sub.a文件格式。同样编写完后记得保存。连接静态库,其实就是。./main运行程序。
原创
发布博客 2022.09.24 ·
1182 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

ubuntu系统下C语言编写简单程序

学习了解基础ubuntu系统操作和简单程序编译
原创
发布博客 2022.09.09 ·
5501 阅读 ·
15 点赞 ·
4 评论 ·
104 收藏
加载更多