- 博客(68)
- 资源 (18)
- 收藏
- 关注
原创 05-HAL库硬件SPI点亮板载LCD屏幕
1.1、HAL库硬件SPI 在cubemx中的配置及注意事项;1.2、HAL库SPI详解与结构介绍;1.3、实现硬件SPI驱动板载ST7789显示屏,240*240像素;源码地址:https://gitee.com/MR_Wyf/hal-cubemx-rt-thread/tree/hal_rttNano_st7789_menu/或者关注公众号,后台回复“TFT”,获取本章节源码。
2024-01-16 22:47:27
1473
原创 10分钟搞定在QT环境模拟LVGL V8
LVGL是一款非常不错的开源图形界面库,易于移植,嵌入式图形界面开发中,LVGL可以说是非常受欢迎的,如何快速的模拟lvgl开发效果,快速移植到嵌入式产品中,我们可以先通过PC端模拟器开发效果,然后无缝移植到嵌入式环境中。PC端模拟器可以用Visual Studio,也可以用QT,本节小飞哥带大家一起看看如何在QT中部署LVGL模拟器。
2023-05-20 22:31:36
2220
1
原创 树莓派4B搭建homeassistant 物联网平台
树莓派4B搭建homeassistant平台,不错的开源物联网平台,一起玩起来吧!!!
2022-12-06 23:40:43
2421
3
原创 HAL库与Cubemx\rt-thread Nano系列教程-03-HAL库GPIO输入与多功能按键实现
rt-thread与HAL库、cubemx系列教程持续更新中,欢迎关注,文章内容、相关资料链接已发布在公众号
2022-11-01 23:17:02
617
原创 HAL库与Cubemx\rt-thread Nano系列教程-02-rt-thread 任务创建与HAL库点灯
rt-thread与HAL库、cubemx系列教程持续更新中,欢迎关注,文章内容、相关资料链接已发布在公众号
2022-10-18 22:42:07
964
原创 HAL库与Cubemx\rt-thread Nano系列教程-01-新建HAL工程及移植RT-Nano到Alios Developer Kit
HAL库、CUBEMX、RT-Thread联合开发,你想不想学,我教你呀,教程正式开启啦,欢迎关注,持续更新
2022-09-25 12:21:21
1637
原创 从0到1学ESP32-01-设计自己的esp32开发板
背景这两年嵌入式开发难啊,作为嵌入式开发工程师,最近两年体会最多的就是老产品、新方案,功能什么都不变,迫于成本只能更换更为便宜、好用的芯片,这也导致了很多产品设计方案的变更比如,3年前做一个智能家居平台,实现温湿度的采集并上传云端,我们最先想到的是STM32+ESP8266模组,ESP32仅仅作为云平台连接,控制部分采用STM32,这样会造成资源的很大浪费,多出来一颗STM32,价格起飞...现在设计完全就不用采用MCU+ESP模组的方案了,一颗ESP32轻松搞定,不仅价格大幅降低,ES
2022-05-15 20:15:40
15293
2
原创 聊一聊STM32的低功耗管理(附源码)
废话不多说,直接开干...先来看看STM系列手册为例看看STM32的几种工作模式,小飞哥最近用到STM32G0系列的MCU,就拿G0的手册来聊一聊吧,其他的都类似,功耗方面有些差别测试代码连接在文末评论区,可以下载测试STM32系列MCU的几种工作模式正常运行模式就不聊了,刚开始学单片机时候,什么都不干,down个代码就能跑起来的大多是这种模式,不缺电,不需要省电...从STM32G070手册来看,模式还是比较丰富的,下面来看看各个模式的意思1、睡眠模式(sleep mode)
2022-04-26 22:11:18
3879
5
原创 hex文件详解及常用合并方法介绍
前言在很多复杂的系统中,或者多人参与设计的系统中,程序分区必不可免,拿最简单的IAP升级来说,包含两个程序区,BOOT区和APP区,BOOT区的主要职责是引导代码进去APP区执行目标功能,但是在下载的时候,往往提供一个hex文件即可,提供两个分别下载当然也可行,但是生产过程中增加一个工序就是一个工序的价格,再说了,完全没必要,这就涉及到了本章介绍的hex文件合并(BIN文件当然OK的)什么是hex文件hex文件格式是可以烧写到单片机中,被单片机执行的一种文件格式,生成Hex文件的方式有很多种,可
2022-03-25 19:57:29
9419
2
原创 Cubemx与HAL库系列教程|系统时钟配置详解及源码分析
STM32时钟系统简介STM32种类繁多,时钟系统也不尽相同,但基本的还是大差不差,今日小飞哥就F1系列的MCU简单聊一聊STM32的时钟系统1、时钟种类介绍:先来看一看时钟树图,包含了整个系统的始终来源及各个外设的始终来源STM32 有5个时钟源:HSI、HSE、LSI、LSE、PLL。接下来,各个时钟的含义听小飞哥白话白话,自己看ST手册也可以哒 1.1 HSI时钟(内部高速时钟) HSI时钟信号由内部8MHz的RC振荡器产生,可直接作为系统时钟或在2分频后作为PLL输
2022-02-15 22:11:47
6736
3
原创 如何制定通讯协议及如何解析协议数据
什么是通讯协议?通讯协议又称通信规程,是指通信双方对数据传送控制的一种约定。约定中包括对数据格式,同步方式,传送速度,传送步骤,检纠错方式以及控制字符定义等问题做出统一规定,通信双方必须共同遵守,它也叫做链路控制规程。电脑与电脑之间的沟通必须讲述相同的语言,才能互相传输信息,自然资料在国际互联网上传递,每一份都要符合一定的规格(即是相同的语言),否则中国送出的资料,在美国那边要怎么收下呢?这些规格(语言)的规定都是事先在会议上讲好的,一般我们称之为“协议”(英文称为protocol),而这种在网
2022-01-08 18:32:51
13167
2
原创 10分钟教你玩起来freemodbus
源码获取本节教程源码资料获取方式:1、公众号后台回复“modbus”2、小飞哥gitee仓库自提3、留言区获取资料链接freemodbus是什么?简介及应用场景FreeMODBUS是一个奥地利人写的Modbus协议。它是一个针对嵌入式应用的一个免费(自由)的通用MODBUS协议的移植。Modbus是一个工业制造环境中应用的一个通用协议。Modbus通信协议栈包括两层:Modbus应用层协议,该层定义了数据模式和功能;另外一层是网络层。协议介绍FreeMODBUS 提供了R
2021-12-16 23:28:51
11279
2
原创 还不懂函数回调机制,看这篇就够了
什么是回调函数友情提示:原理介绍部分摘自:https://www.jianshu.com/p/2f695d6fd64f有一定基础的直接跳过即可,直接查看后面精彩部分...回调函数就是一个通过函数指针调用的函数。如果你把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用来调用其所指向的函数时,我们就说这是回调函数。回调函数不是由该函数的实现方直接调用,而是在特定的事件或条件发生时由另外的一方调用的,用于对该事件或条件进行响应。一幅图来说明什么是回调:结合这幅图和上面对回调函数的
2021-12-05 10:41:15
869
原创 RT-Thread实战笔记|MPU6050使用详解及DMP姿态解算
小伙伴们大家好,好久不更新RT-Thread实战笔记啦,今天来搞一搞MPU6050,话不多说,淦!本章源码获取欢迎文末留言区或者公众号后台回复“MPU6050”即可获取本教程源码MPU6050简介某宝买的,吃灰许久了...有钱,不想受那鸟气的,看这个,自己画一个,对比价格,我劝你买个吧,知道自己行就行了...典型用法:可在官网下载最新的芯片手册和寄存器映射和描述,参看:MPU6050 官网基本功能:MPU-60X0是世界上第一款集成 6 轴MotionTr
2021-11-27 11:45:38
8110
4
原创 Cubemx与HAL库系列教程|ADC+DMA多通道采集详解
什么是ADC资料获取见文末你以为的ADC哈哈,开个玩笑~~~说起来ADC,先来聊聊模拟信号与数字信号,简单来说就是模拟信号与数字信号简介 模拟信号 模拟电压信号在时间上和幅值上均是连续的信号叫做模拟信号。此类信号的特点是,在一定动态范围内幅值可取任意值。 数字信号 与模拟信号相对应,时间和幅值均离散( 不连续 ) 的信号叫做数字信号。数字信号的特点是幅值只可以取有限个值。下文引自:https://baijiahao.baidu.com/s?id=17014
2021-10-28 22:03:07
9748
3
原创 十分钟让你的JLINK成为调试利器
摘要想要打印调试信息,发现串口不够用了,手边没有USB转TTL模块?代码自己测试好好的,屏蔽了打印信息之后,代码运行异常了,咋整?EASY!今天小飞哥教你如何让你手中的JLINK成为调试利器,10分钟搞不定,你打我~觉得有用,别忘了点个赞哦,测试源码,关注公众号,后台回复“RTT”即可获取哦J-LINK 驱动安装可以在官网下载,选择对应的系统,对应的JLINK驱动版本https://www.segger.com/downloads/jlink当然了,也可以通过文章中放的资料链接下
2021-10-16 09:38:56
5974
1
转载 编码器计数原理与电机测速原理——多图解析
什么是编码器编码器,是一种用来测量机械旋转或位移的传感器。它能够测量机械部件在旋转或直线运动时的位移位置或速度等信息,并将其转换成一系列电信号。编码器分类按监测原理分类 光电编码器 光电编码器:是一种通过光电转换将输出轴上的机械几何位移量转换成脉冲或数字量的传感器。这是目前应用最多的传感器,光电编码器是由光源、光码盘和光敏元件组成。光栅盘是在一定直径的圆板上等分地开通若干个长方形孔。由于光电码盘与电动机同轴,电动机旋转时,光栅盘与电动机同速旋转,经发光二极管等电子元件组成的检测
2021-09-24 21:08:00
12287
原创 git获取仓库分支文件方法
下载安装git,小乌龟工具,可以在我的仓库中下载,地址:git工具下载也可以在网上自己下载,安装自行百度,比较简单本地新建一个文件夹,gittest,进入文件夹,右击鼠标,选择git bash here然后输入git init接着 git remote add -f origin 仓库地址,这里以小飞哥公众号源码仓库地址为例git remote add -f origin https://gitee.com/MR_Wyf/official-account-inform
2021-09-21 11:52:17
533
原创 不错哦|多级菜单实现起来就是这么简单!
摘要产品是面向用户的,用户需要的仅仅是功能以及有好的交互界面,多级菜单在其中扮演着重要的角色,有限的按键实现复杂的界面,层层相扣,标志法对于菜单的管理相当费劲,多了自己都会被自己绕晕...下面介绍一种还算不错的多级菜单是实现方式这个框架本身不复杂,小伙伴们可以直接看源码,有什么问题,可以一起交流硬件连接STM32F407ZGT6ST7789 LCD屏(SPI1,复用开发板NRF24L01接口)3个按键 PC7、PC8、PC9代码实现实现起来比较简单,直接进入代码部分,我使用的
2021-09-18 22:34:57
2665
原创 IAP固件升级原理及实现详解
什么是IAP升级?IAP,即In Application Programming,IAP是用户自己的程序在运行过程中对User Flash的部分区域进行烧写。简单来说,就是开发者代码出bug了或者添加新功能了,能够利用预留的通讯接口,对代码进行升级UART、SPI、IIC、USB等等,当然还有wifi、4G、蓝牙等无线通讯手段,都可以作为IAP升级的方式,今天主要介绍如何使用串口对固件进行升级STM32的代码启动过程要想设计IAP,首先需要对MCU的代码启动过程有个了解,先来看看STM32的
2021-09-18 22:32:56
17869
3
原创 RT-Thread实战笔记|语音控制获取心知天气信息
前言上篇文章介绍了LD3320的用法,小飞哥“灵光一现”,何不做一个语音控制获取天气信息的东东,既然想了,那就干它,来,淦~小飞哥前面说过rt-thread好用,那今天一起来看看到底有多好用...完整连接:演示效果见公众号硬件环境ART-PI(其他开发板也可以)LD3320语音模块板载wifi(ESP8266也可以)“一张会说话的嘴”软件环境RT-Thread studio 版本2.1.1 软件包 webclient V2.1.2mbedtls V2
2021-08-21 09:41:06
913
1
原创 RT-Thread实战笔记|LD3320非限定词条语音控制器使用详解
效果演示既然能够语音识别了,来,咱们一起和它对对话,分别对他说:你好,你来自哪里,背一首诗,世界这么大 识别之后分别对应输出相应的内容:资料获取关注公众号,后台回复“LD3320”即可获取源码资料,欢迎添加小飞哥好友,进群交流...
2021-08-16 21:32:25
1623
原创 物联网这么火了,怎么能不懂点低功耗设计
前言随着物联网的兴起,各式各样的物联网设备涌向市场,这些设备有一个共同的特点就是电池供电,电池的容量是有限的,如何在电池容量有限的情况下延长设备的使用时间呢?万恶始于源头,最好的办法就是在设计中降低设备的功耗,设计又进一步分为软件设计、硬件设计。硬件设计根据低功耗的产品需求,一般会有两种方式,一种是平时处于断电状态,需要使用的时候上电即可,工作一会继续断电。另一种是一直处于待机状态,使用的时候,“唤醒”产品,工作一会继续“睡觉”。低功耗产品一般是通过锂电池或者干电池供电的,前者主要用于易于携
2021-08-10 22:24:57
3993
8
原创 Cubemx与HAL库系列教程|PWM呼吸灯详解
摘要上节介绍了点亮LED灯,本章还是点灯,但是小飞哥带大家换一种点灯方式,利用PWM功能实现“呼吸灯”,什么是呼吸灯?顾名思义,像人呼吸一样的灯...简而言之就是,吸气...呼气...实现灯光渐亮渐灭的效果。PWM原理介绍脉冲宽度调制(PWM),是英文“Pulse Width Modulation” 的缩写,简称脉宽调制,是利用 微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术。简单一点,就是对脉冲宽 度的控制,如下图(摘自正点原子手册)PWM 原理示意图上图就是一个简单的
2021-08-10 22:20:42
3348
1
原创 RT-Thread学习笔记|TCS34725 RGB 颜色识别传感器详解
rt-thread是什么?RT-Thread 是一个集实时操作系统(RTOS)内核、中间件组件和开发者社区于一体的技术平台,组件完整丰富、高度可伸缩、简易开发、超低功耗、高安全性的物联网操作系统。RT-Thread 拥有良好的软件生态,支持市面上所有主流的编译工具如 GCC、Keil、IAR 等,工具链完善、友好,支持各类标准接口,如 POSIX、CMSIS、C++应用环境、Javascript 执行环境等,方便开发者移植各类应用程序。商用支持所有主流MCU架构,如 ARM Cortex-M/R/A,
2021-08-10 22:16:47
7357
1
原创 RT-Thread学习笔记|74HC595驱动数码管详解
Part1 74HC595简介74HC595是一个串行输入、并行输出的位移缓存器:并行输出为三态输出。在SCK 的上升沿,串行数据由SDL输入到内部的8位位移缓存器,并由Q7'输出,而并行输出则是在RCK的上升沿将在8位位移缓存器的数据存入到8位并行输出缓存器。当串行数据输入端OE的控制信号为低使能时,并行输出端的输出值等于并行输出缓存器所存储的值。74HC595是具有三态输出功能(即具有高电平、低电平和高阻抗三种输出状态)的门电路。输出寄存器可以直接清除。具有100MHz的移位频率。引脚介绍
2021-08-10 22:11:44
5610
原创 RT-Thread与cubemx|74HC595驱动数码管详解
Part1 74HC595简介74HC595是一个8位串行输入、并行输出的位移缓存器:并行输出为三态输出。在SCK 的上升沿,串行数据由SDL输入到内部的8位位移缓存器,并由Q7'输出,而并行输出则是在LCK的上升沿将在8位位移缓存器的数据存入到8位并行输出缓存器。当串行数据输入端OE的控制信号为低使能时,并行输出端的输出值等于并行输出缓存器所存储的值。74HC595是具有三态输出功能(即具有高电平、低电平和高阻抗三种输出状态)的门电路。输出寄存器可以直接清除。具有100MHz的移位频率。引脚介
2021-07-04 14:54:26
1289
2
原创 点亮LED灯
摘要本章节主要讲述如何使用cubemx、HAL库点亮LED灯,希望教程对正在学习HAL库的你有用哦~系列教程主要在STM32F407ZGT6探索者开发板完成,部分在自设计fallingstar board完成。cubemx配置不知道怎么新建工程的童鞋,麻烦移步新建工程章节,新建工程:见新建工程详解硬件连接,可以看到,F407探索者的LED灯是连接在PF9、PF10引脚上的,采用的是灌电流的设计方式,亮灯只需要控制相应IO就可以了: 高电平:熄灭 低电平:亮 选择需要配置
2021-06-28 23:11:36
331
1
原创 辛苦加班设计的电路板刚上电就挂了
前言 小伙伴们有没有经历过辛辛苦苦,加班加点设计的PCB,终于发出去制版了,接下来焦急并且忐忑地等待回板,焊接,验证,一上电,挂了...自己费力不讨好且不说,耽误项目周期才是心头大事,又开始紧急的排查,找问题...最终发现,是打过孔,地线跟电源搞一起去了,但是在做DRC检查的时候却没报错。难道去怪PCB设计软件的锅,没人会理的,为什么别人用都没问题,一把辛酸泪,费力不讨好。 那么除了PCB设计软件的规则检查之外,还能怎么办?总不能一根线、一个过孔去查看吧。答案当然是否定的,既然你出了这样的问题,
2021-06-20 09:18:46
553
1
原创 在VScode 中使用RT-Thread Studio初体验
前言工欲善其事,必先利其器,VScode是什么东东,想必大家都非常熟悉了,丰富的插件,有好的开发界面,是很多程序开发者的不二之选,RT-Thread竟然也开发了Vscode插件,真的是非常的nice啦,接下来小飞哥就带大家一起来看看,RT-Thread工程在vscode中如何开发。安装Vscode用久了各式各样的破解软件,心里是不是又有一点小担心,这个软件怎么破解?小伙伴们不用担心,Vscode是免费的并且不需要破解的,当然了,有些插件是需要付费的,一般也很少用。在下面连接中下载即可,选择自
2021-06-20 09:15:53
3408
3
转载 编译后的程序内存分布
一般 MCU 包含的存储空间有:片内 Flash 与片内 RAM,RAM 相当于内存,Flash 相当于硬盘。编译器会将一个程序分类为好几个部分,分别存储在 MCU 不同的存储区。Keil 工程在编译完之后,会有相应的程序所占用的空间提示信息,如下所示:...
2021-06-10 18:58:29
339
原创 HAL库与Cubemx系列|Systick-系统滴答定时器详解
Systick是什么?关于Systick,在Context-M3权威指南中如此描述:SysTick定时器被捆绑在NVIC中,用于产生SYSTICK异常(异常号: 15)。在以前,大多操作系统需要一个硬件定时器来产生操作系统需要的滴答中断,作为整个系统的时基。例如,为多个任务许以不同数目的时间片,确保没有一个任务能霸占系统;或者把每个定时器周期的某个时间范围赐予特定的任务等,还有操作系统提供的各种定时功能,都与这个滴答定时器有关。因此,需要一个定时器来产生周期性的中断,而且最好还让用户程序不能随意访问
2021-06-09 23:47:47
7495
5
EasyARM-iMX283教你设计蜂鸣器电路V1.05.pdf
2020-01-09
HAL库硬件SPI+MAX7219点阵+LCD12864+ADC采集
2018-09-03
LM2576+L298N+ADXL345+NRF24l01+STM32F103C8T6
2018-03-28
MPU6050 DMP+ADXL345+NRF24L01+HAL库+STM32F103C8T6
2018-03-28
codeblocks编译器文件
2018-01-10
stm32F407ZGT6+cubex生成HAL库工程+软件模拟IIC读取博世BME280温度、湿度、气压值
2018-01-09
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人