QB杂货铺
底层劳动人民的不解忧杂货铺
摘要:背景 没有电池的嵌入式设备,很容易发生随机掉电。因此要让产品可靠稳定,就必须保证各种场景下的掉电安全。 例如系统更新过程随机掉电,不能导致系统无法启动。例如正常读写flash过程中掉电,最多正在传输的数据丢掉,但不能导致flash其他数据出错,否则轻则丢数据,重则直接变砖无法启动。本文主要分析fla 阅读全文
posted @ 2020-01-12 16:39 zqb-all 阅读 (79) 评论 (0) 编辑
摘要:SPI协议 对于spinor和spinand flash,其通信总线为SPI总线。 SPI有四种工作模式,对应不同的极性和相位组合 极性,一般表示为CPOL(Clock POLarity),即SPI空闲时时钟信号SCLK的电平(0:空闲为低电平; 1:空闲为高电平) 相位,一般表示为CPHA(Clo 阅读全文
posted @ 2020-01-05 22:15 zqb-all 阅读 (67) 评论 (0) 编辑
摘要:背景 支持一款nor flash时,出于性能考虑,一般会查看其nor支持的最高频率以及主控端spi控制器的最高频率,以选择一个合适的运行频率。 对于一款主控支持多款flash的情况,还得考虑好兼容性等问题。 主控端的最高频率,可以查看主控的规格书,本文主要说下nor的频率限制。 让我们带着问题出发, 阅读全文
posted @ 2019-12-29 16:37 zqb-all 阅读 (64) 评论 (0) 编辑
摘要:背景 littlefs是arm面向嵌入式设备推出的一款掉电安全的小型文件系统,具有抗掉电,动态磨损均衡,RAM/ROM需求少等特点,具体介绍可见 "https://github.com/ARMmbed/littlefs" 作为一款在嵌入式设备上使用的文件系统,出问题时,一般是需要将数据dump出来进 阅读全文
posted @ 2019-12-22 00:13 zqb-all 阅读 (140) 评论 (0) 编辑
摘要:安装依赖 这一步其实我没做,直接下载编译成功了。估计有些包不是必需的。姑且列在这里供参考 下载源码 编译安装 由于我希望能在无sudo权限机器,所以决定安装到~/usr目录下。这个可以通过 prefix指定 使用新的vim 安装后的vim在 配置下环境变量的PATH,即在~/.bashrc中添加一行 阅读全文
posted @ 2019-12-15 21:01 zqb-all 阅读 (12) 评论 (0) 编辑
摘要:打算重新折腾下环境,看中了gtags ,可参考 "Vim 8 中 C/C++ 符号索引:GTags 篇" ,先记录下编译过程 源码 下载并解压源码 最新的代码到官方下载页面获取 https://www.gnu.org/software/global/download.html 例如我下载的是 下载后 阅读全文
posted @ 2019-12-08 14:26 zqb-all 阅读 (25) 评论 (0) 编辑
摘要:背景 在项目中需要用到解压功能,之前还记录了下,将uboot解压代码移植到另外的bootloader中时,碰到的效率问题。最终查明是cache的配置导致的。 https://www.cnblogs.com/zqb all/p/11443127.html 优化前速度是uboot的十分之一,优化后速度达 阅读全文
posted @ 2019-12-01 22:47 zqb-all 阅读 (134) 评论 (0) 编辑
摘要:背景 有时候我们需要在某个二进制文件的尾部增加一些字节,使文件大小对齐到某个边界,以便满足某些操作的需求。例如某个文件下一步的写入操作需要块对齐。 有时候我们需要将某个二进制文件尾部的大量十六进制0字节去除。例如某工具生成的文件系统镜像,实际包含的有效数据不多,但尾部默认用0填充到了整个文件系统大小 阅读全文
posted @ 2019-11-24 15:43 zqb-all 阅读 (50) 评论 (0) 编辑
摘要:背景 项目需求,得用1500000波特率进行,即1.5M的波特率进行串口通信。 最开始以为minicom不支持,因为第一眼在配置界面的选项中没看见。后来发现其实是支持的 方式一 启动时带参数 b 1500000即可 方式二 在配置波特率的界面中,多次按A,即"A : next "选项,直到选到150 阅读全文
posted @ 2019-11-17 23:50 zqb-all 阅读 (177) 评论 (0) 编辑
摘要:简介 当使用git, find等工具时,一般需要进一步打开文件或跳转目录。 通常的做法是使用鼠标复制黏贴,或者手工输入。 PathMarker提供一种快速通过标号,编辑相关文件,跳转相关目录的方法,提高效率。 效果演示 安装使用 最新的安装说明请参考 https://github.com/zqb a 阅读全文
posted @ 2019-09-17 00:04 zqb-all 阅读 (94) 评论 (0) 编辑