Elmagnifico's Blog

云深不知归处

nRF-Kconfig插件解析

Kconfig、VScode、nRF、Extension

Foreword 之前刚好看过一点VScode插件原理,这里就能用上了,看一下nRF-Kconfig是怎么实现的,改一个通用版本来,方便大家使用 nRF-Kconfig Kconfig插件的安装目录在这里 C:\Users\用户名\.vscode\extensions\nordic-semiconductor.nrf-kconfig-2024.12.13 实际这个插件也没有加密或...

Zephyr build 架构

Kconfig、CMake、nRF SDK

Foreword Zephyr 工程的整个构建体系是怎样的,这里做一个具体的分析和学习 最近小米的Vele 也开源了,不过由于缺少文档,而且架构非常庞大,光是仓库就传了两三百个,想看明白不太容易,但是基础的CMake、Kconfig等等全都有。 CMake 创建构建目录:保持源代码目录整洁。 使用 CMake 生成构建文件:配置项目并生成适合平台的构建文件。 编译和构建...

配置管理工具之kconfig

Kconfig、menuconfig、makefile、macro、nRF SDK

Foreword 绕了这么大一圈,似乎只有kconfig是比较成熟的,能与之相媲美的管理工具很少 Kconfig 安装 在windows下使用Kconfig,至少得有python,否则界面等内容无法正常显示 python需要先安装这几个包 python -m pip install windows-curses python -m pip install kconfiglib ...

QEMU模拟运行FreeRTOS

STM32

Foreword 测试一下QEMU模拟运行FreeRTOS QEMU QEMU安装需要先安装MSYS2 直接下载安装 https://www.msys2.org/ 安装完成以后,QEMU使用pacman包进行安装 https://www.qemu.org/download/#windows pacman -S mingw-w64-x86_64-qemu 添...

宏管理工具之lite-manager

Kconfig、menuconfig、makefile、macro

Foreword 体验一下群友的宏管理工具 lite-manager https://gitee.com/li-shan-asked/lite-manager 群友的宏管理工具,主要在gitee上更新,github更新不及时,release文件可能不能用 主要是用来方便管理宏定义和生成Makefile,但是大部分设置还是要熟悉Makefile本身,你才能完成lm的配置文件编...

构建工具之xmake

Kconfig、menuconfig、makefile、macro

Foreword 当一套代码兼容了多个软件、硬件,需要面对不同情况下,进行不同的build的时候,就需要额外的工具来辅助完成这一个事情。 通常IDE构建 多数情况下,我们使用的各种IDE都有自己的一套UI或者配置文件来完成这个事情。 以VS为例,一般情况对于一个项目的整体构建的配置大概是这样的 顶级就是Solution 一个解决方案,一个方案下面可能有多个工程共同构成,比如某些...

Python gRPC

RPC、stream、流式传输、protobuf

Foreword gRPC example测试 安装gRPC库 pip install grpcio 安装gRPC工具 pip install grpcio-tools 下载官方例程 git clone -b v1.66.0 --depth 1 --shallow-submodules https://github.com/grpc/grpc 演示用例在这里 grp...

ChatGPT-Mirror部署和体验

cws、dairoot、oaifree

Foreword cws一直有问题,而且只支持access token,经常要换很麻烦。之前有关注到dairoot的mirror,这次刚好试一下,发现体验还行 ChatGPT-Mirror https://github.com/dairoot/ChatGPT-Mirror 项目很简单 https://chatgpt.dairoot.cn/ 官方体验站,也可以使用免...

STM32 MCU移植SSH

SSL、SFTP、Crypto、Lwip

Foreword 给MCU移植Crypto、SSL、SSH、SFTP等库,真的找不到一个例子,目前看到的库大部分都是商用的。 比如wolfssh、CycloneSSH、libssh2、TinySSH、microSSH、Dropbear,这些库可能linux使用比较多,但是那边安装移植也方便多了,降到MCU一库难求,更别说详细的移植文档了,基本没有 wolfssh https:/...

GitLab联动Jenkins

集成、action、构建

Foreword GitLab联动Jenkins完成CI\CD流程 webhooks方式 Jenkins Jenkins升级 Jenkins自动升级,完成以后Jenkins就无法启动了,查log可以看到提示说明java版本太老了 Jenkins升级后不再支持java11的,需要安装java17或者21,我这里直接选择21 进入Jenkins目录下,修改jenkins.xml...