自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

偶可不乖呢

努力争取不挨饿。

  • 博客(15)
  • 资源 (6)
  • 收藏
  • 关注

原创 Mifare Classic Crypto1加密流程

当Reader准备进行密钥认证时,发送至NFC卡片。

2023-12-12 10:52:52 280

原创 WCH RISC-V芯片RTOS移植

WCH RISC-V芯片,FreeRTOS、RT-Thread、LiteOS_m等RTOS移植例程。准备移植芯片:到CH583/CH592/CH32V208/CH32V203/CH32V303/CH32V305/CH32V307。

2023-10-20 16:31:29 336

原创 在MCU上更改默认的printf

MCU中会经常使用printf来打印调试日志,但是编译器默认的printf会使用malloc函数,而且无法自己修改。malloc对于一般MCU平台来说,是有风险的,能不用就不用。本仓库中,查看branch:my-mcu-version。此pirntf库打印都是在栈上进行的,不会使用堆,所以非常安全。至此我们就可以愉快的使用printf_来进行打印了,函数名比默认的printf多了一个下划线。所以移植第三方的printf库函数就是很有必要的事情。2.将输出字节的方法添加到函数中。

2023-03-06 07:37:21 237

原创 将cJson对MCU平台优化

cJson在物联网项目中经常使用,但是cJson毕竟不是专为MCU平台使用,所以做了很多通用性的东西,导致MCU平台项目中即使没有用到malloc,cJson也会将malloc引入到固件中,导致固件过大。2.在cJSON_malloc和cJSON_malloc函数接口中,添加项目的内存分配和释放函数。1.根据mcu编译平台,更改cJSON_INLINE宏定义,该宏为了将函数内联。3.后面一些杂项,如果你的项目中有自己实现的代码,可以更改。本仓库中,查看branch:my-mcu-version。

2023-03-06 07:22:29 393

原创 esp-idf v4.4.4 vscode环境配置注意

从esp-idf v4.4升级到v4.4.4时,VScode竟然报错,提示找不到riscv32-esp-elf-gdb.exe和xtensa-esp32-elf-gdb.exe。

2023-02-08 11:23:34 1002

原创 BLE LL的SN和NESN

BLE LL的SN和NESN

2023-02-06 16:03:13 621

原创 WCH RISC-V系列芯片使用cJson注意事项

由于cJSON使用了sscanf和sprintf等函数,并默认支持浮点数,无法更改,所以在Mounriver工程的配置中必须使能浮点库,不然cJSON添加number类型值时会返回失败:

2022-09-04 22:09:58 416

原创 WCH系列芯片CoreMark跑分

沁恒微电子WCH系列芯片Coremark性能跑分测试。CH32V307/CH32V208/CH582

2022-08-01 09:58:51 1859

原创 CH32V307 LwIP移植使用

CH32V307移植使用LWIP 2.1.3。

2022-04-21 10:51:13 8390 3

原创 哈希匹配算法在单片机上的应用

hash-match哈希匹配算法在单片机上的应用hash-match设计前言在单片机日常开发中,总会遇到根据收到的不同数据执行不同的程序,通常都会使用memcmp或者strcmp进行比较。在匹配数据情况不多时,的确很合适。但是一旦工程量变大,运行速度下降明显。比如有200个数据数组等待比较,每次都要比较很多次。经常可以看到有的工程里switch里面有上百个case strcmp():,极度影响代码运行效率。此时,将key的数组特征化,计算出特有的hash值,来代替比较,就可以给运行速度带来很大

2022-04-03 20:15:12 4347

原创 TinyFlashDB:一种超轻量的可纠错的通用单片机flash存储方案

TFDBTiny Flash Database for MCU.下载链接:https://github.com/smartmx/TFDBTinyFlashDB设计前言在单片机日常开发中,总会需要存储一些信息,这时就需要使用单片机FLASH存储的方案,目前单片机存储的方案有很多,比如:EASYFLASH、FLASHDB、OSAL_NV等等方案,他们程序都非常大,在存储不多的变量时不值得。而且现有方案的代码中很少有考虑到flash写入出错的情况。在实际产品中,嵌入式产品flash写入可能会受各种因素影

2022-03-15 11:28:35 2656

原创 单片机按键开发库-支持连击、长按等操作

Multi-Function Button Dectection单片机开发中,按键是经常需要处理的模块。一个合理的按键开发库可以大大减少开发工作量。Multi-Function Button Dectection,简称MFBD,是一个基于嵌入式C语言的按键库,自动消抖,支持单击、长按单次触发、长按连续触发、双击、多击(三击、四击等等,最大256击)按键操作,可以运行于裸机和各类RTOS。下载链接:https://github.com/smartmx/MFBDMFBD设计理念MFBD尽可能的减少了R

2022-02-27 19:56:37 2331

原创 小小调度器的优化版本:tiny macro os

基于小小调度器的优化版本,更适合32位单片机使用。

2022-02-21 18:55:28 2018 3

原创 伪RTOS-ProroThread在CH573芯片上的移植

沁恒的CH573芯片是一个非常便宜好用的蓝牙芯片,采用了RISC内核,主频可达60M,资源是18KB RAM + 448KB FLASH + 32KB DataFlash。在我们使用了芯片的蓝牙库后,会占用很多的ram,快速代码占用4k多,蓝牙协议栈还需要占用5k左右,还需要预留堆栈左右给芯片使用,留给客户的可用ram空间只剩下了8k不到,所以在给ch573移植操作系统时经常会遇到内存不够用的尴尬处境。对于这类情况,一般都是使用蓝牙库自带的TMOS进行任务的调度处理。但是TMOS有一个无法避免的缺陷

2022-01-06 12:25:51 3574

原创 沁恒MCU从EVT中提取文件建立MounRiver独立工程

沁恒的MCU开发包简称EVT,是沁恒官方给出的芯片使用参考例程。EVT开发包为了减少体积,将很多工程的文件复用。当修改一个公用文件(像link.ld,StdPeriphDriver文件夹中的库文件)时,就会导致其他的工程无法使用。然而复制整个EVT然后删除其他无用工程的做法,让每次打开工程都需要层层打开文件夹,比较麻烦。所以本文将讲解如何从EVT中提取文件,建立独立的工程。沁恒系列ARM内核的基本通过KEIL打开,KEIL网上教程众多,所以这里将只讲解在MounRiver下如何根据自己的习惯.

2021-12-29 10:49:52 6503 2

jlink_V498b_jflash.zip

jlink的windows驱动,v4.98b版本,官网已经无法下载,可以使用setsn指令修复jlink提示sn-1不能使用的情况。

2021-04-29

JLink_Windows_V686g.zip

JLink_Windows_V686g.exe,包含jflash等工具。官网下载太慢。

2021-01-25

sourceinsight4_patch_116.zip

sourceinsight4 patch包,4.00.01.0116版本,先完全卸载之前安装的版本,清除我的文档里面的缓存,然后重新安装,解压后将msimg32.dll放入安装文件夹中,然后替换sourceinsight4.exe即可

2020-09-22

souceinsight4 patch.zip

source insight 4.0.0.95/96 patch and lic。亲测可用,图片有讲解。

2020-09-13

sscom5131.zip

好用的串口调试工具,sscom5.13.1 没有广告等内容,清新版,欢迎下载使用。。。。。。。。。。。。。。。

2019-12-08

Contiki入门手册.pdf

Contiki入门手册,采用了proto thread思想,并融合了协议栈等,可以移植,非常好用。一点积分就可以下载,好好学习!!

2019-12-03

空空如也

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

TA关注的人

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