自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(60)
  • 收藏
  • 关注

原创 AI工具汇总

2026-09-22 14:12:04 202

原创 如果你嫌claude code,codex等太难搞,用VS Code配上国产大模型glm-5.3-flash,进行AI编程,性价比拉满,真香

本文推荐使用轻量高效组合:VS Code + GLM-5.3-Flash,替代高门槛的Claude Code、Codex。无需复杂配置,通过API Key接入国产大模型,即可在熟悉界面中实现代码生成、报错解析、测试编写、重构优化等日常开发任务。优势在于低门槛、低成本、响应快,适合个人开发者与中小型项目,真正实现“开箱即用”的AI编程体验。

2026-09-17 13:59:10 180

原创 GLM-5.3、GLM-5.3-Flash、GLM-5.2 如何选?

针对开发者选型,推荐:小团队或个人首选GLM-5.3-Flash,兼具高性价比与强大编程能力,支持1M上下文和多模态;追求极致性能选旗舰版GLM-5.3;老项目兼容可选GLM-5.2。GLM-5.3-Flash相较旗舰版性价比提升10倍,实用性强。

2026-09-15 16:48:23 547

原创 用 Claude Code / Codex 接国产大模型编程:Agent 能力拉满,成本直降 10 倍(附完整配置教程)

本文介绍如何通过国产AI助手(如腾讯WorkBuddy、通义千问)自动化部署Claude Code与Codex CLI,结合cc-switch工具实现多模型一键切换与故障自动备份,大幅降低开发成本。借助统一API平台“tokease.cn”,仅需一个Key即可调用多家国产大模型,按量计费更经济。实测显示,成本可降至原订阅制的1/10以下,真正实现高效、低成本的智能编程体验。

2026-09-13 12:01:51 94

原创 软硬件开发相关标准汇总

MISAR C是汽车行业C编码标准,由汽车产业软件可靠性协会(MISRA)发布,目的在提升嵌入式系统的安全性和可移植性。针对C++,也有对应标准MISRA C++。

2024-12-30 16:40:12 334

原创 如何将函数定义为另一个函数的参数?

2. 将另一个函数的参数类型定义为刚才用typedef定义的类型:

2024-11-26 14:30:16 323

原创 蓝牙CCCD客户端特性配置描述符

定义:CCCD是一种特殊的蓝牙描述符,用于配置BLE设备中特性的通知(Notification)或指示(Indication)功能。功能:通过向CCCD写入特定的值,客户端可以启用或禁用对某个特性的通知或指示功能。这允许BLE设备在数据发生变化时,主动向客户端发送更新,而无需客户端不断轮询设备以检查数据是否发生变化。

2024-10-17 13:57:43 2556

原创 RTL8762x芯片避坑总结之1——用GPIO模拟I2C

发现半个脉宽左右的异常信号。

2023-11-24 13:20:01 973

原创 如何在32位MCU用printf()函数打印64位数据

【代码】如何在32位MCU用printf()函数打印64位数据。

2023-09-22 10:04:41 2208

原创 逻辑分析仪分析I2C SlaveAddr时产生的疑惑

分析发现逻辑分析仪I2C协议解析有关于slave address display format选项,选shift时, slave address为。所以,当选shift时,取前7位:“1010 100”,shift后为“0101 0100”,即 slave address为。I2C slave address为地址字节的D7-D1位,D0位表示是读(‘0’)还是写(‘1’)。使用逻辑分析仪分析协议时,显示其 slave address为。,选unshift时为。,选unshift时为。

2023-08-21 15:41:31 703

原创 一个未初始化的局部变量引起的BUG(二)-PC13引脚异常

对于未明确初始化的局部变量,一定要慎重处理。

2023-05-29 11:04:13 1262

原创 一个未初始化的局部变量引起的BUG(一)

在定义局部变量时,尽量初始化局变量,以预防不可预知的BUG。

2023-04-14 13:41:51 268

原创 华大MCU固件加密研究

由于上面使能了数据加密,此时不能用离线烧录器烧录成功。用J-Flash erase chip后,再烧入即可。经比对.config文件中固件内容仍为明文。经烧录后,程序正常运行。文件加密后,前面的数据基本一样,后面全部被加密。先是一串可读的配置相关内容,后面跟固件内容。

2022-11-07 14:58:15 1734

原创 Docker与Vmware之间的切换

Docker与Vmware之间的切换

2022-10-27 13:56:38 1233

原创 git常用命令总结

git常用命令总结

2022-10-24 09:32:24 193

原创 秋登高椅岭

2022.10.9 细雨纷飞中登高椅岭。

2022-10-11 13:12:24 199

原创 AM335x初始化代码分析

AM335x初始化代码分析

2022-07-16 15:55:00 554

原创 软件开发相关工具汇总

1. DoxygenGenerate documentation from source codehttps://www.doxygen.nl/index.html2. PlantUMLPlantUML是一个可以快速编写UML图的组件https://plantuml.com/zh/

2022-06-24 10:45:46 243

原创 移远DTU调试笔记

一、透传方式mqtt透传报文:在UART2 串口发送数据时,使用格式:<topic_id>,<msg_len>,<crc32>,<msg_data>0,6,2584251182,ijklmn(注意,不要用引号)topic_id与.json文件中配置的发布主题ID号一致。...

2022-05-09 19:09:57 490

原创 个人常用命令等汇总

python build.py ipcamera_hi3516dv300 -b debug\\192.168.94.128\Publichttp://192.168.94.128:18083(emqx登录)http://127.0.0.1:1880/ (node-red本地进入编辑)http://192.168.94.128:1880/(node-red登录进入编辑)http://192.168.94.128:1880/ui (node-red查看布署的ui界面)./bm set -s di.

2022-05-06 22:05:23 143

原创 通过umqtt库连接使用EMQX云平台步骤

请参阅官方文档:https://docs.emqx.com/zh/cloud/latest/quick_start/introduction.html

2022-04-28 11:25:50 782

原创 网络相关名词解析

CSS全称为“层叠样式表 (Cascading Style Sheets)“

2022-04-24 10:26:50 207

转载 C++开发知识点

const_castconst_cast是一个基于C语言编程开发的运算方法,其主要作用是:修改类型的const或volatile属性。使用该运算方法可以返回一个指向非常量的指针(或引用)指向b1,就可以通过该指针(或引用)对它的数据成员任意改变。:const_cast<type_id> (expression)该运算符用来修改类型的const或volatile属性。除了const 或volatile修饰之外, type_id和expression的类型是一样的。一、常量指针被转化成非.

2022-04-12 14:48:41 263

原创 QT概览之1-Qthread

需要实现虚函数run()The thread does not begin executing until start() is called.start() begins execution of the thread by calling run().run() The starting point for the thread. After calling start(), the newly created thread calls this function. The default im.

2022-04-08 13:44:25 172

原创 如何用docker搭建编译环境

一、查看sh,将sh指向bashroot@9df73602a1a4:/opt/win# ls -l /usr/bin/shlrwxrwxrwx 1 root root 4 Jul 18 2019 /usr/bin/sh -> dashroot@9df73602a1a4:/opt/win/# rm /usr/bin/shroot@9df73602a1a4:/opt/win/# ln -s /usr/bin/bash /usr/bin/shroot@9df73602a1a4:/opt/win/

2022-03-18 22:16:44 1918

原创 编译QT APP时,提示“bash: ./moc: No such file or directory”的解决办法

编译QT APP时,总是编译不过。使用bash -x跟踪编译脚本,发现在执行./moc编译指令时出错单独执行./moc编译指令: /usr/bin/moc TcpClient.h >> ..moc_TcpClient.cppbash: /usr/bin/moc: No such file or directory因为是可执行程序,怀疑是缺少相应动态链接库,使用ldd命令查询root@88f0e1b828f9:# ldd /usr/bin/moc not a dyna

2022-03-18 15:12:54 2056

原创 Docker常用命令汇总

Docker常用命令汇总创建容器-挂载目录 ,docker run -it -v /e/UbuntuShare:/opt/win/ --name ubuntu_tcu chenqh023/ubuntu_tcu:0.0.1 /bin/bash

2022-03-15 15:09:00 395

原创 shell执行自动编译脚本时,提示“no such file or directory”的解决办法

一般情况下,出现这种情况是因为shell脚本保存为了windows下的DOS格式。在windows上编辑好sh后到linux下运行时常会出现“no such file or directory”,这一般是格式的问题,改成unix格式就可以,具体步骤如下:用vi打开文件:vi 文件名按‘:’号键,输入查看文件的格式命令set ff或set fileformat显示为:fileformat=dos,表明保存为了DOS格式。再按‘:’键输入set ff=unix 或 set fileforma

2022-02-21 22:06:01 9638 1

原创 用sourcetree从头添加gitee账号拉取仓库

1.使用以下命令生成 SSH Key:$ ssh-keygen -t rsa -C “youremail@example.com”2.成功的话会在 ~/ 下生成 ~/.ssh/id_rsa.pub,打开 id_rsa.pub,复制里面的 key,添加到gitee网站。3.用gitbash切换到想要保存仓库的目录。4.git clone git@gitee.com:xxxx/xxxx.git5.clone完后,用sourcetree打开仓库工作目录即可。...

2022-01-20 22:32:56 3406

转载 使用脚本(命令行)编译KEIL工程

参考KEIL官网http://www.keil.com/support/man/docs/uv4/uv4_commandline.htmKeil_Build.bat脚本@echo offset UV=D:\Keil_v5\UV4\UV4.exeset UV_PRO_PATH=F:\source\systick\Keil_5\systick.uvprojxecho Init building …echo .>build_log.txt%UV% -j0 -r %UV_PRO_PATH% -

2021-12-23 10:12:43 2400

原创 Keil编译设置里的“fromelf.exe --bin -o “$L@L.bin“ “#L“到底什么意思?

% File name with extension (PROJECT1.UVPROJ)·# File name with extension and complete path specification (C:\MYPROJECT\PROJECT1.UVPROJ)@ File name without extension or path specification (PROJECT1)$ Path name of a file. Path names get extended w.

2021-12-23 09:29:23 5454

原创 __attribute__((packed))

struct str_a{ uint8_t a; uint32_t b; uint8_t c[1];};printf("str_a:%d\n",sizeof(struct str_a)); struct str_b{ uint8_t a; uint32_t b; uint8_t c[1];} __attribute__((packed));printf("packet str_b:%d\n",sizeof(struct str_b));k

2021-10-14 09:47:55 416

原创 gcc常用编译命令

gcc -Wall main.cpp -o main -lstdc++

2021-08-25 11:38:14 259

原创 bitbucket代码仓服务器端项目名称变更后,本地代码仓与远程同步失败问题解决。

1、查询bitbucket代码仓服务器端项目名称变更后的网业地址:https://bitbucket.org/apac_eco_system/xxx-project/commits/"xxx-project"为修改后新的项目名称2、本地端,打开原对应项目,点右上角设置按钮。双击远程仓库路径进行编辑。在最后修改新的项目名称。https://rulaifinger@bitbucket.org/apac_eco_system/xxx-project.git点击确定后,即将本地代码仓与改名后的代码

2021-08-12 09:41:01 481

原创 不使用、使用ARM C microlib的编译结果

1 不使用ARM C microlib的编译结果:2 使用ARM C microlib的编译结果:

2021-07-30 10:44:32 293

原创 Keil自动编译生成、合并hex、bin文件

一、生成hex、bin文件生成hex文件就不用多说了,利用keil自带的fromelf.exe工具生成bin文件。C:\Keil_v5\ARM\ARMCC\bin\fromelf.exe --bin -o ./output/release/app.bin ./output/release/HC32L17X.axf二、合并文件使用srec_cat.exe工具,既可合并hex文件,亦可合并bin文件。利用此功能,可以将bootloader与app文件合并成一个文件,减少生产烧录工序,提高生产效率。

2021-07-29 09:46:16 4385

转载 KEIL生成BIN文件的两种方式

2 输出Bin文件配置KEIL生成bin文件,根据输入命令的相对\绝对路径来分,有两种方式,都是通过自带的fromelf.exe来生成2.1 绝对路径方式绝对路径方式,如果更换电脑等,需要手动修改MDK工具链(formelf.exe)所在路径与项目文件名(例如test_app)“D:\Program Files\MDK516\ARM\ARMCC\bin\fromelf.exe” --bin -o ./obj/test_app.bin ./obj/test_app.axf"2.2 相对路径方式使用

2021-07-27 11:09:49 1745

原创 电风扇调速器原理

电风扇调速器原理: 目前有三种调速器,较老式的叫电抗器,实际上是带抽头的自耦变压器(一般自耦变压器不带抽头),可以改变不同的电压,风扇就有了不同的转速,另一种是电子调速器,是使用可控硅加电位器改变电压,属于无级调速,再有一种就是变频器,它不调整电压,而是改变交流电的频率,也达到了调速的目的,因为电风扇基本上采用交流异步电动机,因此改变频率即可调速。 电风扇调速器类型:调速器有电感式和电子调速式,电感式调速器就是一个可调电感串接在风扇电机电路中,用以改变风扇上的电压降,达到分档调整转速的目的,电子调...

2021-06-22 13:22:35 11132

原创 低功耗调试总结

1、AD采样引脚配置引起功耗过大。

2021-03-08 14:06:12 201

原创 华大单片机开发总结

1、初始化华大MCU HC32L136K8TA-LQ64 PA05为GPIO时,与PA06一起初始化为输出。实测不具有输出功能。分开初始化时,才正常。

2021-02-24 11:07:56 2136

空空如也

空空如也

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

TA关注的人

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