自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 收藏
  • 关注

原创 最佳按键检测消抖与外部中断策略 基于FREERTOS

既能尽可能的提升消抖效果,又能减少资源占用与CPU开销。在电平跳变时进入外部中断,写入队列传递GPIO使用引脚信息,然后唤醒按键处理任务并退出中断,等到再次检测到电平跳变时再进入,通过优先级设置可以保证响应及时性,同时将任务分为两个部分,耗时的在中断以外处理,这样可以确保其他中断进行,同时及时的中断响应处理简单任务,确保电平检测及时。事实上,你在CSDN搜索消抖,没有任何一个令人满意的技术,不论是低通滤波还是其他,都不够好,所以我写了一个专门的消抖,基于FREERTOS,保证中断及时处理又能按键消抖。

2024-05-11 15:24:45 362 1

原创 CUBEMX HAL库 FREERTOS STM32H723 练习项目:简易MP3播放器(U8G2多级菜单)

本工程采用 PROTEUS 仿真和 CUBEMX 生成初始代码, KEIL DEBUG+VSCODE 编译 进行开发使用HAL 库(由于已经掌握标准库用HAL 库练手、易于移植)和FREERTOS 实现 OLED PROTEUS 内部编号 OLED12863I2C)的多级菜单(采用 U8G2 图形库),功能包含通过外部中断进行操作, RTOS 保证实时性,实现多任务系统,蜂鸣器在音乐菜单进行简单音乐播放(共两首用于展示,可自由添加),同时实现流水灯(共三个动画用于展示,其余自由添加)操作与变换。

2024-05-11 14:59:56 1045 4

原创 KEIL安装破解问题解决大全

最近因为使用无线DAP需要,重新装了最新版KEIL,然后出现了一些问题,下面是问题和解决方案1.打开时出现TOOLS.INI - Section [C51]‘: missing ‘PATH‘ entry !这个解决方法有两个,一个是安装C51的芯片包,然后在TOOLS.INI里设置路径另一种是以前用51现在不需要那就直接把TOOLS.INI开头部分的[C51]部分删除2.出现无法破解的情况,error:the code size of this image (60874 bytes) exceeds the

2023-11-23 19:42:02 5159

原创 关于PID的加速度改进示例

由此出发,我们分析一下PID常用的控制,其控制缺乏前置反馈,是针对现有测得数据进行计算,所以应当考虑加入前置控制,最简单的办法是先在知道要加速前先设定一个较低的速度环预期速度,从而使加速度较小,但是如果前置速度环预期速度和后面的SETSPEED相差较大仍然会导致较大的波动与加速,这种方式更适合在减速时使用(速度环),所以如果我们增加前置速度设置呢,是不是就可以进行离散化,运用分辨率的思想,我们这样设计程序。于2023年8月5日。如此一来就实现了速度环的加速度控制,具体值仍然需要根据与其加速度控制。

2023-08-05 13:26:44 379 1

原创 激光传感器STP23L在F4系列运用移植示例

激光传感器STP23L在F4系列运用移植示例

2023-08-05 13:06:50 313 4

原创 手把手教你做一个物联网垃圾桶(ARDUINO ESP8266)

最近自创的项目结题了,就顺手将相关的技术细节记录一下,也给需要做自创的同学提供一个简单的可复制的小项目。ESP8266(上)和UNOR3(下)如果对于接线有疑问可以留言咨询。

2023-05-27 21:33:52 2412 25

原创 基于51单片机的蜂鸣器音乐,李宗盛林忆莲《为你我受冷风吹》

下面是主程序,这套模板也可以用于其他的蜂鸣器音乐编程,相关的音调由计算和后期调改(频率试听)得出,由于后期才想起51单片机内存资源相当有限,而音调是无需修改的常量,可以使用关键词CODE实现存储于ROM之中,从而实现所有音调都可以表示,不过实际用处不大,高频蜂鸣器声音非常难听且音调不准,一般都进行降调处理,本次程序已经经过降调处理,音调后三行是要按数值大小前插(如果借用本程序写新的音乐的话)以上就是全部内容了,建议不要久听,对听力影响较大。也可以使用12MHZ区别不大,将NOP删掉即可。

2023-03-16 22:51:08 867 1

原创 ARDUINO编码器反馈电机初步代码

由于ARDUINO R3的定时器资源比较紧缺,考虑到模块化移植,尽可能减少了对定时器资源的占用 使用的是定次数计时间的方法,该方法在低速下会出现较大误差,可以适当调小指定次数值,考虑到直流电机转速不会太慢(低速很多时候会停转),固此种方法大多是情况下非常实际用,且转速越高误差越低,如果追求低速定时测量可以直接使用定时器定时间进行方波计数,此外本代码目前仅写出了测量速度而没有考虑电机AB相可以测量方向,若要添加AB相可以将代码IO接口加一个,并且测量上升沿的先后顺序得出转向,相关代码后续小比赛结束后会放出。

2023-03-16 11:46:18 956 1

原创 PTA 7-5 字符串排序 算法改进

总体解析:此算法通过先选取一个参考值然后再分区,将比这个数大的数全放在它的右边,小于或等于全放在左边,再对左右区间重复分区,直至区间仅一个数。定义一个二维数组,由于题目自身只会给出五个字符串,为减少数组量,将一个数组既用于排序又用于存储缓存量,此外字符串最长为。定义一个二维数组,由于题目自身只会给出五个字符串,为减少数组量,将一个数组既用于排序又用于存储缓存量,此外字符串最长为。由前向后找比它大的数,找到后也挖出此数填到前一个坑。由后向前找比它小的数,找到后挖出此数填前一个坑。个不同整数,每个整数最小为。

2023-03-15 22:55:54 1498 2

CUBEMX HAL库 FREERTOS STM32H723 U8G2图像库与多级菜单 练习项目:简易MP3播放器

免费,如果被调整为付费请与我联系 本工程采用 PROTEUS 仿真和 CUBEMX 生成初始代码, KEIL DEBUG+VSCODE 编译 进行开发 使用HAL 库(由于已经掌握标准库用HAL 库练手、易于移植)和FREERTOS 实现 OLED(PROTEUS 内部编号 OLED12863I2C)的多级菜单(采用 U8G2 图形库),功能包含通过外部中断进行操作, RTOS 保证实时性,实现多任务系统,蜂鸣器在音乐菜单进行简单音乐播放(共两首用于展示,可自由添加),同时实现流水灯(共三个动画用于展示,其余自由添加)操作与变换。 实物硬件平台为 STM32H723ZGT6 硬件问题:电路板上的元件可能会损坏或者失效,导致设备无法正常工作。此外,电路板的设计可能存在问题,例如电路板上的元件之间的连接可能不正确,或者电路板上的元件可能不兼容。 软件问题:软件可能存在错误或者缺陷,导致设备无法正常工作,最常见的是任务调度的实时性,按键检测的实时性,任务间通信的解耦 供电问题:设备可能无法正常工作,因为它没有足够的电源。例如,如果使用的是电池供电,电池可能会耗尽电量,导致设备无法正常工作。

2024-05-11

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除