- 博客(13)
- 资源 (1)
- 收藏
- 关注
原创 基于LORA的智能地下停车场系统
基于LoRa的智能地下停车场系统 物联网工程毕业设计,stm32开发、LoRa组网 、安卓APP远程控制 、MQTT 上位机开发 、AD电路板设计、ONENET云平台
2024-03-31 18:35:27
605
1
原创 层次状态机-HSM应用解析
至此层次状态机-HSM应用解析到此结束,上一篇文章和本文章是紧密结合的,必须看懂前者才能看明白上述的相机工作例子。理解HSM的状态调度机制和事件调度机制非常重要,笔者总结能力有限,可能没办法很清晰的描述出来,但是建议读者使用笔将整个状态和事件关系列举出来,相信会有不一样的收获哦。
2023-03-27 21:47:39
1338
原创 层次状态机-HSM代码解析
有限状态机在学习和工作中经常能够遇到,前面的文章也有使用到。但是对于层次状态机网上的学习资源却很少,导致一直不理解这个工作机制,后面偶然在GitHub看到一篇文章,深入学习后发现层次状态机太实用了,如果将其在项目上结合,肯定能够创造出一个比较好的代码框架。
2023-03-26 23:47:06
2726
原创 面向对象-类-C语言实现
最近在看《C嵌入式编程设计模式》这本书时,发现书中介绍面向对象编程时用结构体去实现类和类的继承,正好前段时间也在学习C++的基础语法,反向思维去理解面向对象也挺有意思的,所以做一下笔记。虽然说教科书把C语言定义为面向过程语言,C++定义为面对象语言,但是更多时候阅读开源的项目代码时,还是可以看到使用C语言去实现面向对象的开发。
2022-10-30 23:07:37
961
1
原创 内存管理
近在gd32上使用freertos进行项目开发时碰到内存不够的情况,发现了我缺乏对于操作系统的内存及其空间的分配的知识,经常会被flash、ROM、RAM、bss段、data段、text段、堆、栈、Code、Ro-data、 ZI-data、RW-data这些搞混,故写下该文章进行学习总结。
2022-10-24 01:15:32
1054
原创 C语言section关键字初始化函数列表-keil环境
在嵌入式学习工作中,初始化硬件时一般都是写一个初始化函数然后去到main函数去调用,当不需要用到某一个硬件模块时,如果没有去main函数删除对应的硬件初始化函数,程序就会报错,这样程序耦合性就变高了。我们将需要初始化函数以指针形式存在字段中,只需要记录字段的首地址和结束地址,在mian函数将字段中的函数指针遍历就可以调用对应的初始化函数,从事实现自动初始化函数列表。
2022-10-17 00:38:31
5260
原创 FreeRTOS-任务间共享数据的管理框架
本文章介绍一种在FreeRTOS项目中任务间共享数据的管理框架,思路比较简单,任务在更新和获取共享数据时利用互斥量进行上锁保护数据,操作完之后进行解锁,并且当共享数据更新时调用对应的回调函数,后续可以根据回调函数判断数据是否发生变化来进行另外的程序操作。
2022-10-08 21:32:36
1857
2
原创 【GD32】FreeRTOS-USART-DMA
本文章介绍一种在FreeRTOS项目中比较常用的LOG调试方法,不同任务通过DEBUG_LOG()接口通过队列发送调试日志,再通过log发送任务集中获取数据向串口发送,避免数据因为各个任务优先级不同造成打印数据丢失。
2022-09-25 16:38:01
1758
1
原创 MultiButton开源项目实现单击双击长按
MultiButton 是一个小巧简单易用的事件驱动型按键驱动模块,可无限量扩展按键,按键事件的回调异步处理方式可以简化你的程序结构,去除冗余的按键处理硬编码,让你的按键业务逻辑更清晰。
2022-09-24 13:38:41
1114
2
原创 FreeRTOS-系统移植
本文主要介绍在KEIL环境下移植FreeRTOS实时操作系统到GD32芯片上,采用的是较为稳定的FreeRTOSv9.0.0版本和GD32F3x0芯片作为例子。
2022-09-18 23:12:51
954
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人