我的项目开发经验分享

开发板推荐:天空星STM32F407VET6开发板

超高性价比 STM32主控 | 超高主频 | 一板兼容百芯 | 比赛神器 | 沉金彩色丝印

        以下是我的写作计划,欢迎评论与投票,意向较多的版块或子项会优先制作发布。内容是工作这些年沉淀的知识金库。编程语言用的C语言,软硬分层适用不同mcu,主要应用了面向对象思想、指针、函数指针等,适合基础较好的同学。

状态栏:        -已完成                🚩-编写中


目录

Keil5_MDK

我的按键驱动编年史

项目管理

通信协议

系统

数据结构

IC驱动

模组/模块开发

软件驱动

大型驱动

快速配置利器

C语言小技巧 

用C语言设计游戏

STM32练习生-题目详解

其他


Keil5_MDK

手把手教学一文安装Keil5(MDK)

手把手教学一文安装Keil5(MDK)固件支持包

手把手教学一文创建keil5工程模版(STM32F103C8)

Keil5报错与解决汇总


我的按键驱动编年史

介绍:讲述我的按键驱动的进化历程,堵塞延时-状态机-面向对象-分层。支持独立按键/矩阵按键、实现单击/短按抬起/长按/长按抬起/持续长按/连击/多键组合功能;以按键驱动为例子完整讲述一个驱动从耦合度高、移植性差、兼容性差到高度解耦、移植性强、兼容性强的过程。

终版驱动gitee仓库:

XxxSwitchScan_Driver: XxxSwitchScan_Driver可以简单的看作为一个C语言的按键驱动,使用简单、灵活且解耦,以面向对象思想结合状态机编写,同时适用于裸机与操作系统。最终实现响应事件有:短按/短按抬起/长按/持续长按/长按抬起/连击/单边沿触发。一开始仅为了实现按键驱动。后面把按键结合如高低电平的传感器、开关量的限位等进一步抽象为开关量的输入设备。由此我常会把项目中的开关量的输入设备通过该驱动统一管理。icon-default.png?t=N7T8https://gitee.com/wx_372d4eb42f/xxx-switch-scan_-driver

子项:

堵塞延时按键驱动(单个按键)初学者思路-掌握难度:⭐

🚩状态机按键驱动(单个按键)实际项目思路-掌握难度:⭐⭐

状态机按键驱动(多个按键)面向对象思想-掌握难度:⭐⭐⭐

状态机按键驱动(多个按键)面向对象思想进阶版-掌握难度:⭐⭐⭐⭐

状态机按键驱动(多个按键)分层思想-掌握难度:⭐⭐⭐⭐⭐


项目管理

工程文件管理

main函数合理的初始化顺序

doxygen代码注释规范

命名规范


通信协议

自定义协议编解码

AT指令编解码

ModbusRTU/TCP编解码


我的系统

时间片分散轮询OS

DWT延时

静态/动态内存管理

打印日志(Debug/Info/Error)

测试框架


数据结构

通用链表

环形队列

位图


IC驱动

LCD驱动(驱动IC为ST7735S)

74HC595驱动数码管

PCA953(扩展io芯片)驱动

XGZP6857D气压传感器驱动

SM9541气压传感器驱动

NTC(温度传感器)驱动


模组/模块开发

大彩串口屏

串口转网口模块(有人)


软件驱动

菜单驱动

数码管驱动

输出设备(LED等)特效驱动

编码器驱动(读电平方式,应用于高干扰情况)

多路AD采集驱动

温控驱动

PID算法驱动

S型加减速算法

CRC校验

内存映射驱动(晋级:实现Flash掉电保护)

软件I2C驱动

软件PWM驱动


大型驱动

Bootloader

Modbus(RTU/TCP)驱动

W25Qxx驱动

片内Flash驱动

步进/伺服电机开环控制驱动(控制脉冲频率方式,实现加匀减速过程、中途换向、定位移动、持续运动)

多轴电机运动规划框架

文件系统


快速配置利器

输入输出的GPIO快速配置模版

利用打印串口工具帮我们完成重复的初始化配置工作


C语言进阶技巧 

用指针玩转所有类型转换


用C语言设计游戏

2048游戏

推箱子游戏

五子棋


STM32练习生-题目详解

利用滴答定时器做微秒、毫秒、秒延时

闪烁灯与流水灯

按键控灯

串口控灯(以及printf重定向)

呼吸灯

玩转编码器(根据信号干扰情况,多种方式实现编码器读取)

玩转ADC采集

OLED屏(I2C)上显示爱心跳动

LCD屏(SPI)上实现上下左右滚屏

电子时钟

游戏手柄


其他

单片机配置启动赛灵思FPGA

大小端、MSB与LSB


以上是我的写作计划,欢迎评论与投票,意向较多的版块或子项会优先制作发布。投票项数目有限,欢迎催更以评论方式("版块名/子项名"+1)评论,我会一一总结。

开发板推荐:天空星STM32F407VET6开发板

超高性价比 STM32主控 | 超高主频 | 一板兼容百芯 | 比赛神器 | 沉金彩色丝印

评论 18
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小星星星球

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值