随笔分类 - 程序框架
摘要:前言 主要记录回调函数的部分用途。 李柱明博客:https://www.cnblogs.com/lizhuming/p/15486882.html 概念 嵌入式编程,一定要理解指针。 本人认为,指针是基础,用指针的思维去进行细节编程,甚至架构搭建。 回调函数就是让 CPU 跳到该函数地址去执行,而该
阅读全文
摘要:前言 本文记录通过回调函数通知到多线程的框架。 本文链接:李柱明博客-框架:https://www.cnblogs.com/lizhuming/p/15205560.html 主要用于解耦。 实现原理 就是把多个回调函数插入到一个链表中,在对应的地方执行这个链表中的所有回调函数。 用途 通知业务只是
阅读全文
摘要:前言 本笔记记录的是 单个服务端并发式处理多个客户端。 下次有空在发个 单线程多个服务端并发式处理多种客户端。其实就是本笔记的一个改良版,用到select() / poll() / epoll()。 原文:https://www.cnblogs.com/lizhuming/p/14943969.ht
阅读全文
摘要:前言 参考文档: 内核文档链接:https://www.kernel.org/doc/Documentation/ 内核源码doc:Documentation/devicetree/bindings/pinctrl/pinctrl-bindings.txt 如在开发过程中遇到问题,建议可以查找内核源
阅读全文
摘要:前言 参考文档: 内核文档链接:https://www.kernel.org/doc/Documentation/ 内核源码doc:Documentation/devicetree/bindings/pinctrl/pinctrl-bindings.txt 建议配合 GPIO 子系统使用。 建议,复
阅读全文
摘要:前言 建议:去原文链接观看,排版、观感便于学习。 链接: 本文原文链接:https://www.cnblogs.com/lizhuming/p/14627195.html 李柱明博客:https://www.cnblogs.com/lizhuming/ 参考:用到野火提供的工具脚本。 9. Linu
阅读全文
摘要:前言 参考 设备树 8. Linux设备树 Linux3.x 以后引入了设备树,用于描述一个硬件平台的板级细节。 8.1 设备树简介 设备树可以被 bootloader(uboot)传递到内核,内核从中获取设备树中的硬件信息。 设备树的两个特点: 一:以 树状结构 描述硬件资源。 二:设备树可以像头
阅读全文
摘要:前言 链接: 李柱明博客:https://www.cnblogs.com/lizhuming/ 区分设备驱动模型和平台设备驱动模型。 设备驱动模型 可以理解为 总线、设备、驱动。 平台设备驱动模型 就是那些 Linux 内核管理没有物理总线(即是不需要特殊时序控制的设备)(也是Linux内核没有自动
阅读全文
摘要:前言 6. 总线-设备-驱动 总线-设备-驱动 又称为 设备驱动模型。 6.1 概念 总线(bus):负责管理挂载对应总线的设备以及驱动; 设备(device):挂载在某个总线的物理设备; 驱动(driver):与特定设备相关的软件,负责初始化该设备以及提供一些操作该设备的操作方式; 类(class
阅读全文
摘要:前言 以野火i.M 6U为例 3. 字符设备驱动 需要明确的是模块和驱动是两回事。 本笔记开始记录驱动的相关知识。 3.1 Linux设备分类 Linux设备可分为三:字符设备、块设备和网络设备。 网络设备:是一种特殊设备,它并不存在于/dev下面,主要用于网络数据的收发。 Linux系统将设备分别
阅读全文
摘要:前言 SPI 介绍为搜集百度资料+个人理解 其余为原创(有误请指正) 集四种模式于一身 demo 采用MX25L64的FLASH芯片 李柱明博客:https://www.cnblogs.com/lizhuming/ 本文链接:https://www.cnblogs.com/lizhuming/p/1
阅读全文
摘要:前言 SPI 介绍为搜集百度资料+个人理解 其余为原创(有误请指正) 集四种模式于一身 李柱明博客:https://www.cnblogs.com/lizhuming/ 本文链接:https://www.cnblogs.com/lizhuming/p/13907267.html 笔录草稿 SPI介绍
阅读全文
摘要:前言 本笔记主要传达一种设备驱动拆分的概念和实现。 使得写好一个驱动框架后,随意添加相应设备,提高开发效率。 使用到以空间换时间的方法,即是数组管理设备,使得时间复杂度为 O(1)。(数组直接定位)。 本笔记的框架支持 N个设备 绑定 X个驱动 李柱明博客:https://www.cnblogs.c
阅读全文