Mculover666

其他

RTOS内功修炼记(八)— CMSIS RTOS API,内核通用API接口

通用等待函数CMSIS-RTOS提供的等待函数API如下:API描述osDelay等待指定的时间osWait(可选)等待信号、消息、邮箱的某个事件osDelayosStatus
2020年8月1日
其他

Mculover666 | 原创教程汇总(2020-06-20)

文章分享的技术领域内容主要包括C语言、STM32、RTOS、Linux、FPGA、IoT,除了分享技术知识之外,还会分享超级好玩的创客内容,大开脑洞,发现不一样的生活。内容发布平台
2020年6月20日
其他

第10期 | ringbuff,通用FIFO环形缓冲区实现库

嵌入式开源项目精选专栏本专栏由Mculover666创建,主要内容为寻找嵌入式领域内的优质开源项目,一是帮助开发者使用开源项目实现更多的功能,二是通过这些开源项目,学习大佬的代码及背后的实现思想,提升自己的代码水平,和其它专栏相比,本专栏的优势在于:不会单纯的介绍分享项目,还会包含作者亲自实践的过程分享,甚至还会有对它背后的设计思想解读。目前本专栏包含的开源项目有:cJSON
2020年6月6日
其他

RTOS内功修炼记(二)—— 优先级抢占式调度到底是怎么回事?

内容导读:本文从任务如何切换开始讲起,引出RTOS内核中的就绪列表、优先级表,一层一层为你揭开RTOS内核优先级抢占式调度方法的神秘面纱,只有对内核的深入了解,才能创造出更好的应用。1.知识点回顾1.1.
2020年6月3日
其他

数据结构 | TencentOS-tiny中的双向循环链表的实现及使用

field)获取到结构体的基地址,还愁访问不到其中的任何一个成员吗?最后的实验结果,你应该能猜到了,上图:「接收更多精彩文章及资源推送,欢迎订阅我的微信公众号:『mculover666』。」
2020年6月2日
其他

第9期 | CmBacktrace,一款 ARM Cortex-M 系列 MCU 错误追踪库

CmBacktrace的配置文件在cmb_cfg.h,针对不同的平台和场景,需要自行手动配置:本文使用的是Cortex-M4裸机平台,配置如下:
2020年5月30日
其他

RTOS内功修炼记(一)—— 任务到底应该怎么写?

Cortex-M3/4系列内核CrortexM3/4系列内核中的寄存器组都有16个寄存器,如图所示,寄存器组通常都是CPU用于数据处理和运行控制的,希望你可以大概知道每个寄存器的作用:①
2020年5月27日
其他

分享一下我学习RTOS的几个段位

莫问收获,但问耕耘。——曾国藩本文来和大家分享一下我在RTOS打怪升级路上经历的几个段位,仅供参考。青铜段位
2020年5月24日
其他

第8期 | jsmn,一个资源占用极少的json解析器

jsmn如何解析出每个token上述说到jsmn将每一个json数据段都抽象为一个token,那么jsmn是如何对整段json数据进行解析,得到每一个数据项的token呢?
2020年5月23日
其他

第7期 | cmd-parser,一个基于哈希匹配的超快命令解析器

以上就是关于使用RK算法超快匹配字符串的算法讲解,也是cmd-parser的设计灵魂所在,但是这种算法也有缺点:当hashcode冲突值较多时,就起不到优化作用了,和直接暴力匹配没有区别。
2020年5月16日
其他

第6期 | MultiTimer,一款可无限扩展的软件定时器

MultiTimer中所有的结点都是定时器,每个定时器之间相互独立,不存在先后次序关系,所以无论加到中间,还是加到尾部,还是加到头部,最后的功能都是一样的,但是在插入算法上有优劣性能之分。
2020年5月2日
其他

第5期 | EasyFlash,让 Flash 成为小型 KV 数据库

EasyFlash在测试阶段需要不断的设置环境变量、读取环境变量、开发板重新上电,这个特点刚好可以应用letter-shell,直接将两个常用函数导出为命令,在串口命令行测试。
2020年4月25日
其他

第4期 | SFUD,一款串行(SPI)Flash通用驱动库

SFUD中最重要的就是Flash设备对象,一切操作都是对这个Flash设备对象进行的,每个Flash设备对象独立,所以SFUD也支持系统中存在多个Flash设备对象。
2020年4月18日
自由知乎 自由微博
其他

第3期 | EasyLogger,一款轻量级且高性能的日志库

log);}这儿有个小知识点,%s表示字符串输出,.是精度控制格式符,输出字符时表示输出字符的位数,在精度控制时,小数点后的十进制数可以使用*来占位,在后面提供一个变量作为精度控制的具体值。
2020年4月12日
其他

好玩!C语言打印彩色字符,还能闪烁!

序列屏幕控制码,其实就是一些特殊的字符,将这些字符加入到printf打印的内容中,即可轻松实现在终端软件中以各种颜色、各种背景色显示内容,还可以高亮、加粗、闪烁,非常好玩!
2020年4月10日
其他

第2期 | letter-shell,一个功能强大的嵌入式shell

0;}//导出到命令列表里SHELL_EXPORT_CMD(SHELL_CMD_PERMISSION(0)|SHELL_CMD_TYPE(SHELL_TYPE_CMD_FUNC),
2020年4月4日
其他

第1期 | MultiButton,一个小巧简单易用的事件驱动型按键驱动模块

这个项目非常精简,只有两个文件,可无限量扩展按键,按键事件的回调异步处理方式可以简化程序结构,去除冗余的按键处理硬编码,让你的按键业务逻辑更清晰。MuliButton
2020年3月21日
其他

STM32CubeMX-27(补充) | 系统滴答定时器Systick的使用

是一个24位的向下计数定时器,当计到0时,将从RELOAD寄存器中自动重装载定时初值并继续计数,且同时触发中断,SysTick
2020年3月20日
其他

STM32CubeMX + STM32F1系列开发时遇到的四个问题及解决方案分享

No-Debug,不会配置下载器所使用到的SWDIO引脚和SWCLK引脚:结果就是单片机里之前的程序是正常的,所以这个工程编译出的程序可以成功下载进去,但是一旦下载进去之后,就凉了……
2020年3月11日
其他

VSCode和SourceInsight,到底哪个看源码爽?

中打开文件时也有同样的功能,但又是一股脑的按照顺序将所有函数声明和定义列出,实际查看时也没有什么太多作用:在文件整体架构方面,Source
2020年2月26日
其他

一行代码就能写一个日志打印组件,你信吗?为你揭晓RTOS中日志打印组件的核心

其实,这些RTOS系统之所以准确的打印出了代码所在函数及所在位置,不是用于了多么复杂高深的技术,同样也只是在代码里巧妙的利用了C语言的一个不常用知识点
2020年2月3日
其他

RT-Thread、LiteOS这些操作系统中,编译出的程序为什么能打印出当前时间?

系统打印出的当前时间这是RT-Thread刚上电时控制台默认打印的内容,可以看到日期在今天:再来看看LiteOS的,不仅能打印出当前日期,还能精确到时分秒:3.
2020年2月2日
其他

Mculover666 | 原创教程+文章精选(2020-01-20更新)

文章分享的技术领域内容主要包括C语言、Python语言、STM32、RTOS、Linux、FPGA、IoT,除了分享技术知识之外,还会分享超级好玩的创客内容,大开脑洞,发现不一样的生活。
2020年1月20日
其他

CoAP | 物联网中的RESTful架构实现

所谓"资源",就是网络上的一个实体,或者说是网络上的一个具体信息。它可以是一段文本、一张图片、一首歌曲、一种服务,总之就是一个具体的实在。你可以用一个
2020年1月15日
其他

CoAP协议详细讲解+服务器搭建测试+数据抓包分析

所以,CoAP系列教程开篇先良心推荐这两个视频,了解了CoAP协议之后,后面我会讲解如何使用CoAPthon编写CoAP测试客户端,如何搭建自己的私有CoAP服务器并进行对接测试。
2020年1月14日
其他

paho | 支持10种语言编写mqtt客户端,总有一款适合你!

凭着与生俱来对嵌入式的热情专注于这个领域,分享自己的感悟,记录学习的过程,快乐只有分享给别人,才会获得双倍的快乐~
2020年1月11日
其他

EMQX MQTT 服务器(下篇)| 开启客户端身份安全认证并使用mqtt.fx测试

https://blog.csdn.net/Mculover666/article/details/103799033
2020年1月8日
其他

mqtt.fx | 一款超级好用的Mqtt客户端软件(下载、安装、使用详解)

凭着与生俱来对嵌入式的热情专注于这个领域,分享自己的感悟,记录学习的过程,快乐只有分享给别人,才会获得双倍的快乐~
2020年1月7日
其他

EMQ X | 百万级的开源MQTT消息服务器(搭建一个私有MQTT服务器)

https://www.emqx.io/downloads/broker/v3.1.0/emqx-ubuntu18.04-v3.1.0.zip下载zip包解压
2020年1月5日
其他

骚操作!快速创建JSON数据和解析JSON数据

socket发送和接收json数据进行交互,之前专门写了一篇文章,介绍cJSON的使用,而,看了乐鑫给的官方代码后,正应了这句话,突如其来的骚,闪了老子的腰!
2020年1月1日
其他

(新年祝福)cJSON下篇 | 如何解析JSON数据及内存钩子的使用方法

上一篇文章中详细的讲述了cJSON的设计思想,数据结构,以及如何封装json数据,本节我们接着来讲如何封装,以及在实际中常常使用到的内存钩子的使用方法。
2019年12月31日
其他

妙哉!cJSON设计思想解读及封装JSON数据方法示例

它采用完全独立于编程语言的文本格式来存储和表示数据,语法简洁、层次结构清晰,易于人阅读和编写,同时也易于机器解析和生成,有效的提升了网络传输效率。
2019年12月30日
其他

STM32Cube-23(补充) | 使用硬件I2C读取温湿度传感器数据(HTS221)

本篇详细的记录了如何使用STM32CubeMX配置STM32L431RCT6的硬件I2C外设,读取HTS221温湿度传感器的数据并通过串口发送。
2019年12月29日
其他

AIOT时代来临,物联网平台(IoT Platform)真有那么重要吗?大白话来科普一下

科技改变生活,当初一部iphone使我们的生活大变样,如今AI+IoT全方位布局,准备迎接即将到来的AIoT时代,作为一名IoT领域的从业者,今天就来为大家揭开物联网平台的神秘面纱,即IoT
2019年12月14日
其他

10min教你编写C#上位机控制Arduino板载LED

拿到这个任务,首先要确定一些不确定的因素(非常重要,不然,产品经理和攻城狮的故事,你懂得~)。比如在这个任务中只是说编写一个电脑上位机,具体的问题没有说明:
2019年12月10日
其他

STM32Cube-22(补充) | 使用硬件I2C驱动OLED(SSD1306)

本篇详细的记录了如何使用STM32CubeMX配置STM32L431RCT6的硬件I2C外设驱动0.96'OLED屏幕。
2019年12月9日
其他

STM32Cube-21(补充) | 使用通用定时器产生PWM驱动舵机

舵机是电机的一种,又叫伺服电机,舵机的优势是可以设定转到指定的位置,本文中使用的SG90型号的舵机可以在0°-180°的范围内转动到指定角度,在实际项目中使用非常广泛。
2019年12月6日
其他

Hexo进阶教程(四)| 部署Hexo到自己的服务器

(Ubuntu16.04+.、Debian9.0+),确保是干净的操作系统,没有安装过其它环境带的Apache/Nginx/php/MySQL(已有环境不可安装)
2019年12月4日
其他

STM32Cube-20(补充) | 在SD卡上移植FATFS文件系统

这样问题就定位到了,我们使用的SD卡是之前用于裸机实验的卡,SD卡分区被破坏,SD卡文件系统被破坏,所以FATFS创建文件时才会提示FR_NO_FILESYSTEM问题。
2019年11月16日
其他

Hexo博客进阶教程(三)| 自有云图床配合Mpic,轻松解决md插图问题

复制一张图片或者截图,之后该工具就会自动上传,不用管,上传完成之后会在屏幕右上角给出上传成功的信息,这时直接按Ctrl+V就会粘贴该图片的md外链,是不是很方便呢?
2019年11月13日
其他

Hexo博客进阶教程(二)| 使用Appveyor备份并持续集成博客

.DS_StoreThumbs.dbdb.json*.lognode_modules/public/.deploy*/public/package-lock.json然后执行如下git命令开始推送:
2019年11月12日
其他

Hexo博客进阶教程(一)| 优化文章永久链接为数字编号

凭着与生俱来对嵌入式的热情专注于这个领域,分享自己的感悟,记录学习的过程,快乐只有分享给别人,才会获得双倍的快乐~
2019年11月11日
其他

Hexo博客教程(四)| 换一个炫酷的响应式主题 —— Matery

)上有非常多的主题,可以选择一套自己喜欢的,并且这些主题都是开源的,基本参考readme文档就可以完成更换,如果你懂点前端知识的话,还可以进行修改,贡献代码。
2019年11月5日
其他

Hexo博客教程(三)| Github、Coding 部署Hexo站点详解

这样设置后Coding会经常莫名其妙容易挂掉,所以非常不建议这样设置,一心还是不要二用,脚踩两只船,迟早翻船,对吧择Github或者Coding单一平台部署即可!这个了解一下就好。
2019年11月4日
其他

Hexo博客教程(二)| 如何写作新文章并发布

凭着与生俱来对嵌入式的热情专注于这个领域,分享自己的感悟,记录学习的过程,快乐只有分享给别人,才会获得双倍的快乐~
2019年11月1日
其他

Hexo博客详细教程(一)| 建立本地站点

凭着与生俱来对嵌入式的热情专注于这个领域,分享自己的感悟,记录学习的过程,快乐只有分享给别人,才会获得双倍的快乐~
2019年10月31日
其他

Mculover666 | 原创文章精选(2019-10-30更新)

文章分享的技术领域内容主要包括C语言、Python语言、STM32、RTOS、Linux、FPGA、IoT,除了分享技术知识之外,还会分享超级好玩的创客内容,大开脑洞,发现不一样的生活。
2019年10月30日
其他

创客必备 | 值得每天逛几十次的硬件开源项目网站 — Hackday

接下来可以查看该项目开源的文件,包括该项目中在树莓派上的运行脚本,Python脚本,还有外壳的3D模型文件,可以直接使用3D打印机打印:
2019年10月29日
其他

创客系列首发 | 是的,做一名创客,热爱生活!

除了代码,别忘了,还有生活!创客的生活是我所憧憬的,在家里打造一个属于自己的角落,放上电脑,显示器,电洛铁,风枪,3D打印机等等……每天都可以享受着创作的乐趣,对生活充满热爱,人生应如此!
2019年10月28日
其他

Git & Github实用教程 | 两本经典书籍推荐(附PDF)

篇文章,每篇文章阅读时间在2min左右,但是需要花20min跟着教程一起做,在不知不觉中轻松学会Git常用操作,并能在Github上开心的玩耍。
2019年10月27日