- 博客(212)
- 资源 (2)
- 收藏
- 关注
原创 将RK3588平台的TMC等USB function驱动挪出内核源码树
先加载ko,再在configfs里执行mkdir func、ln -s func config/、echo gadget > UDC三步骤
2024-09-04 15:01:37 539
原创 STM32作为SPI slave与主机异步通信
slave开机后处于SPI接收主机command状态,收到用户输入后abort当前的接收,进入SPI发送状态,发送完毕后,恢复接收command状态。
2024-03-02 16:57:20 1733
原创 STM32 HAL库函数HAL_SPI_Receive_IT和HAL_SPI_Receive的区别
带IT后缀的版本只开启中断,实际的接收在中断回调里完成。
2023-11-18 17:23:58 4360
原创 从Linux的tty_struct指针获取驱动上下文
ctx = container_of(tty->port, struct gpib_tty_ctx, port);
2023-10-21 12:05:02 577
原创 将ISP DMA写到DDR的数据unpack成可被7yuv预览的RAW图
ISP DMA的特点是一端字节对齐访问,一端流式访问,且净荷数据不一定是8bit的整数倍
2023-04-21 10:19:07 625
原创 对匿名联合体的一些理解
概念匿名联合体是一种语法糖,用于定义结构体内一类互斥的字段,但这些字段从语义层面上来说又是跟结构体内其他字段平级的。它跟匿名结构体的语法类似,但用处感觉比后者更大些。注意事项1. 可以定义多个匿名联合体,只要字段不重复即可,匿名结构体同理。2. 包含匿名联合体的`命名类型`不一定非得是struct,也可以是另一个union,代表`互斥`场景内的`子互斥`场景。
2022-04-16 10:54:23 957
原创 移植QT程序到petalinux平台
petalinux不带GCC,无法在里面编译QT应用,本文选择在arm版ubuntu里编译,再部署到petalinux
2021-12-25 19:11:39 2299 2
原创 将USB转串口驱动pl2303从5.10内核向后移植(back port)到4.15内核
背景公司的USB转串口设备是绿联的,在windows上识别为[Prolific 旺玖科技](Prolific 旺玖科技股份有限公司)的pl2303系列,但是在ubuntu 1604.4(内核版本4.15)上无法驱动。运行lsusb能看到它的product id是0x23c3,浏览公司ftp上几个linux内核源码包,发现4.19也不支持该设备,支持的起码是5.x内核。失败的尝试:升级内核到5.10在1604上编译5.10内核,安装后启动失败。搜索资料得知ubuntu LTS版本包含2种内核,一种是
2021-11-20 08:24:15 791
原创 让运行ubuntu20.04的笔记本电脑实现关闭盖子自动休眠
背景每次关盖都不休眠,而是睡眠解决办法默认安装的ubuntu不添加swap分区,需要先resize2fs加fdisk缩小主分区,然后用fdisk将腾出来的空间划成swap分区再解决grub的问题:Oct 7 11:10:08 whp-Inspiron-5537 steam.desktop[4837]: LuaDbg - Debugging stoppedOct 7 11:10:08 whp-Inspiron-5537 steam.desktop[4837]: CSteam3Client::S
2021-10-10 10:34:49 2139 3
原创 ubuntu自动登录tty终端的最简方法
背景在嵌入式系统经常需要自动登录tty,以实现业务程序开机启动的效果。网上有篇文章ubuntu自动登录tty1(shell,text)配置转发挺多,但我弄明白原理后,觉得可以进一步简化,经测试,简化成功。自动登录原理修改/etc/init/tty1.confUbuntu默认的tty1.conf内容如下# tty1 - getty## This service maintains a getty on tty1 from the point the system is# started un
2021-09-28 17:34:59 4941
原创 获取Linux内核卡死前的日志
Linux侧开启rsyslog的UDP转发,Windows侧用Visual Syslog Server for Windows查看
2021-09-10 18:16:30 8638
原创 将sudo命令自动化执行
背景在嵌入式开发环境,我们经常需要执行一些特权指令,但是每次执行执行都要手工输入密码(无法在命令行参数里直接传递密码),如果能将这些操作自动化就好了。解决办法,使用expect程序expect命令是一个能自动化执行sudo等交互式命令的程序。安装嵌入式设备一般不能连外网,所以需要离线安装,expect包依赖tcl-expect包,所以需要一起下载一起安装apt-get download tcl-expectapt-get download expectscp tcl-expect_5.45-
2021-09-07 11:33:31 690
原创 用bash分割字符串
背景最近负责移植固件升级功能,发现原来的升级脚本将固件的路径名和文件名不做区分,导致脚本必须跟固件在同一路径下才能正确调用,殊为不便。上代码:sudo mkdir -p /lib/firmware/F260/sudo cp $1 /lib/firmware/F260/echo Updating $2 ...echo F260/$1 > /sys/class/misc/PCIE_SubFpga1/d_${2}_update脚本命令行第一个参数$1就是固件的路径名,$2是器件名(表明FPG
2021-09-02 14:44:12 1670
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人