博文

目前显示的是 三月, 2025的博文

硬件故障 之 电容损坏 #3

客户机器经常打不出墨, 发现是 0805 10uF 50V 电容损坏, 损坏现象为短路, 导致24V线路烧断, 原因是贴片厂用了2012年的库存电容, 特此记录

Kicad 文字编辑卡顿

# 定位问题 当时 Kicad 某次更新之后一直卡顿, 以为是 Kicad 自身的问题, 用了几个月之后发现是文字编辑的时候才会卡, 而且别人的 Linux 是不会卡的, 所以怀疑是字体太多, 导致每次字体编辑都会遍历这些字体 # 查询 Fonts 路径 找到 /usr/share/fonts 路径, 对比别人系统, 发现我的大小800M, 是别人的20倍, 大部分是 google 的 noto 字体, 里面包含了很多小语种的字体, 问题应该是在这里 注: noto = (no more tofu), 是 google 为了解决小语种问题做的东西 # 解决问题 1. 尝试过给 Kicad 指定字体路径等, 结果不行 ``` mkdir -p ~/.kicad_fonts cp /usr/share/fonts/truetype/dejavu/DejaVuSans.ttf ~/.kicad_fonts/ export FONTCONFIG_PATH=~/.kicad_fonts kicad ``` 2. 尝试手动删除 Fonts 路径里的 noto 字体, 但是太多了, 不知道删除哪些, 删除 opentype 之后字体变得很怪, 删除 truetype 之后电脑所有字体变成了 tofu(豆腐块), 放弃这个做法 3. 直接在 apt 管理里列出所有字体, 并且卸载 ``` sudo apt-get remove font Display all 119 possibilities? (y or n) fontconfig fonts-sahadeva ... ``` 但是数量太多了, 删了几个之后放弃这个做法, 而且删的应该是系统里的文字, 这种做法不太好, 顺便在此记录一下尝试过程中删除了哪些字体: ``` sudo apt-get remove fonts-beng* sudo apt-get remove fonts-kacst* sudo apt-get remove fonts-arphic-u* sudo apt-get remove fonts-deva* sudo apt-get remove fonts-gujr* sudo apt-get remove fo...

烧录AT32

# 安装pyocd ``` pip install pyocd ``` # 下载AT的包 [雅特力pack包下载地址](https://www.arterytek.com/cn/support/index.jsp) 下载这个 -> 支持AT32 MCU型号于Keil MDK运行 # 添加路径 解压好后, 在~/.bashrc里添加路径, 对应型号对应包 ``` export AT32F405_DFP_PACK_FILE="xxx/Keil5_AT32MCU_AddOn_V2.4.2_ZH/ArteryTek.AT32F402_405_DFP.2.1.1.pack" ``` # 操作芯片 操作时, 在指令后面添加 --pack=$AT32F405_DFP_PACK_FILE, 例如 ``` pyocd list --targets --pack=$AT32F405_DFP_PACK_FILE pyocd flash -t at32f405cbt7 build/*.hex --pack=$AT32F405_DFP_PACK_FILE ``` # 自己的操作 1. 拷贝key, key里define开启, 关掉if 1, 编译A.hex放一边, 烧录A.hex 2. 关闭keydefine, 开启if 1, 编译正式app, 烧录 # 20250515 方法1: 1. 普通烧录bl 2. 开key, if 0, stlink编译烧录 3. 关key, if 1, stlink编译烧录 方法2: 1. 普通烧录bl 2. 开key, if 1, stlink编译烧录(可以编译完长期不改, 放一边) 3. 关key, if 1, cdbus gui 烧录_e