摘要:
Ctrl+F搜索本页, Home键回到顶部 点我跳过本目录,直接查看博客文章列表 Shift+Space键/Space键 上下翻页 .......[编辑] 点左上角的菜单,里面有搜索等功能 算法入门推荐:LeetCode 的在线书: https://leetcode-cn.com/leetbook/ 阅读全文
摘要:
Linux/Golang/glibC系统调用 本文主要通过分析Linux环境下Golang的系统调用,以此阐明整个流程 有时候涉略过多,反而遭到质疑~,写点文章证明自己实力也好 Golang系统调用 找个函数来分析 https://pkg.go.dev/os/exec#Cmd.Wait 源码文件在s 阅读全文
摘要:
DMA(Direct memory access,内存直接存取),属于 Vectored I/O 方式,也是下沉运算的一种实现。 区别 Scatter-gather DMA 与 Block DMA(即普通DMA) 方式不同, Block DMA: 一次只传输一块物理上连续的数据,完成后中断,主机收到 阅读全文
摘要:
传输方式 DIO/QIO/DOUT/QPI QPI模式(Quad Peripheral Interface),所有阶段都通过4线传输。与之相对的是SPI。 SPI模式: 纯种SPI(MISO/MOSI两个数据线) DOUT 全称 Dual I/O,命令字和地址字均为单线,仅在数据阶段为双线。 QOU 阅读全文
摘要:
将uint32与byte[]互转 package main import ( "encoding/binary" "fmt" ) func main() { // 一个长度为4的byte切片,表示一个负数 bytes := []byte{0xFF, 0xFF, 0xFF, 0xFF} // 将byt 阅读全文
摘要:
SPI(Serial Peripheral Interface,串行外设接口)是一种同步串行的行业标准,但是并没有像I2C那样有标准文档,它还有主从、可片选的特性。 图源自Serial Peripheral Interface-wikipedia 时序图 放个经典老图,来源未知。相位和极性决定了采样 阅读全文
摘要:
I2C协议标准文档 THE I2C-BUS SPECIFICATION VERSION 2.1 JANUARY 2000: https://www.csd.uoc.gr/~hy428/reading/i2c_spec.pdf I2C全称Inter-IC,又写作IIC,有些又归类为TWI(Two-Wi 阅读全文
摘要:
官方文档很坑,新旧不分开,文档缺失/分类很乱 有些文档在IDE RT-STUDIO文档里,有些在RTThread标准版文档里,逆天 坑:不支持STM32CUBEMX的Advanced工程,记得重新保存生成basic工程才能用。不能使用.c/.h分离。 坑:适配CUBEMX工程的脚本要自己写 driv 阅读全文
摘要:
gin集成pporf main.go添加 import _ "net/http/pprof" gin路由添加 // r is *gin.Engine pprof.Register(r) 本地电脑链接到远程web服务进行分析 然后本地电脑打开 假设你的goweb程序服务地址是 192.168.2.25 阅读全文
摘要:
鉴于绝大部分文件、网络通信协议、非网络通信协议都有类似的结构{类型,长度,校验,不定长数据,结束标志},再高级点的会包含多个单层TLV,甚至嵌套TLV,状态机流转标志等等。所以编程语言上也需要采用一定的手法。 建立结构 结构体和联合体 例如 //结构体对齐宏 #if defined(__GNUC__ 阅读全文
摘要:
PNG图片,维基百科简介:https://zh.wikipedia.org/wiki/PNG 现在带透明通道的最常见的PNG文件都是PNG 32格式,所以首先将PNG文件解析为RGBA-8-8-8-8即32位真彩像素(PNG 32)(A代表Alpha透明通道) BMP 帧解析 BMP是最简单的图片文 阅读全文