关于Proteus在编译时提示"Failed to set firmware property."的问题


原因是我之前打开了defender的文件夹限制访问,defender会拦截程序修改特定目录文件属性的行为(避免病毒利用个人文件进行扩散传播,猜想主要是禁止设置执行位),直接关闭defender的文件夹限制访问功能即可。 关闭方法: 打开Windows Defender->病毒和威胁防护->病毒和威胁

FOC调试笔记


电机抖动原因记录: 一、电角度零点和磁编码器零点位置对齐。对齐前调整电机位置应设置ud参数而不是uq.(即产生的电场角度和转子目 标角度相等,而不是相差90度) 二、磁编码器读取速度不够。as5600采用12位,占用两个8位寄存器,读取寄存器时如果使用单词读取一个字节读两次的 方式读取数据可能会导致

cmake编译stm项目提示“selected processor does not support `isb 0xF' in ARM mode”


使用cmake编译stm32f4项目时报错: /tmp/ccPlYrhB.s: Assembler messages: /tmp/ccPlYrhB.s:1014: Error: selected processor does not support `isb 0xF' in ARM mode 原因

图灵完备——迷宫


可能是较为通用的迷宫题解?

图灵完备——条件判断


0x01 最少器件方案(10器件) 解析什么的过两天再写吧。今天累了,开摆 0x02 门延迟较小方案 实际就是把上面一个方案中的异或门改成一位解码器和一位开关,这样是两门的延迟,比异或门少一门。

图灵完备——四与非门构建异或门


图灵完备引发的一点小思考。

stm32f4 USB host无法解析hid键盘数据

随笔 

故障表现: 使用st官方hal库函数写项目时发现始终无法读取键盘的按键值,使用调试器发现 USBH_HID_GetKeybdInfo(&hUsbHostFS) 函数始终返回NULL;删除后续iic显示函数后可以正常读取hid数据,初步猜测是轮训间隔过长导致无法读取键盘值。 解决方案: 修改usbh_

/root/.debug目录占用过大的问题

随笔 

查到linux mint论坛的一篇文章有和我一样的问题,回复是~/.debug目录有可能是perf工具分析性能问题时留下的转储文件、调试信息等帮助调试的缓存文件。结合论坛文章给出的命令:find ~/.debug -type f | xargs ls -ltr 查找后发现文件船舰时间和我上一次运行p

halo博客配置微软SSO指南


博客系统更新说明


博客系统从solo换到halo啦,感觉之前的solo用起来还是不是很方便,评论和上传要做的话会比较麻烦,而且文档不好找,所以三思之后还是选择了halo框架。UI上来说,halo框架感觉比较简洁、现代化;功能上来说,halo框架也是比叫齐全。 文章的话也是稍微删除整理了一下,一些没有内容不多的文章就直