上一页 1 ··· 5 6 7 8 9 10 下一页
摘要: 问题:选取数组中最小的前k个数,见剑指 Offer 40. 最小的 k 个数(基于快速排序的数组划分,清晰图解) - 最小的k个数 - 力扣(LeetCode) 方法1:快速排序: 哨兵划分:选取一个哨兵,将大于哨兵的移到哨兵右侧;小于哨兵的移到哨兵左侧。 递归操作:递归的将左右子数组进行哨兵划分, 阅读全文
posted @ 2023-02-12 19:32 QianFa01 阅读(82) 评论(0) 推荐(0)
摘要: 摘自韦东山驱动开发 阅读全文
posted @ 2022-11-10 15:26 QianFa01 阅读(108) 评论(0) 推荐(0)
摘要: 摘自韦东山驱动入门 阅读全文
posted @ 2022-11-09 21:06 QianFa01 阅读(80) 评论(0) 推荐(0)
摘要: DS18B20模块 单总线设备,可读可写; 可测范围:-55℃~ +125℃,温度/数据对应关系如下: 当启动温转命令后,读寄存器的前两个字节的值得到温度数据:默认上电是12位精度,分辨率是0.0625,高字节的Bit11-Bit15是符号位; 实现驱动中的读函数(代码来自百问网): static 阅读全文
posted @ 2022-11-04 16:16 QianFa01 阅读(227) 评论(0) 推荐(0)
摘要: dth11模块调试发现的问题: gpio引脚输出时不该再设置方向。 static void dht11_start(void) { //此处bug gpiod_direction_output(dht11_data_pin, GPIOD_OUT_LOW); mdelay(18); gpiod_dir 阅读全文
posted @ 2022-11-02 11:57 QianFa01 阅读(344) 评论(0) 推荐(0)
摘要: GIC:generic interrupt controller ,ARM系统中通用中断控制器, 分级:gpio中断 → gpc控制器(虚拟的) → intc控制器 interrupt-parent :指定 父系 中断控制器;interrupt-controller :表明是一个中断;interru 阅读全文
posted @ 2022-10-13 17:49 QianFa01 阅读(76) 评论(0) 推荐(0)
摘要: 设备树的引入:由于platform_device驱动大都是.c文件,会造成代码的臃肿;设备树是一种配置文件,与内核相隔开。 创建设备节点的格式: [label:] node-name[@unit-address] { [properties definitions] [child nodes] }; 阅读全文
posted @ 2022-10-11 15:10 QianFa01 阅读(292) 评论(0) 推荐(0)
摘要: 驱动中引入分离的思想和总线设备模型,platform_bus_type结构体用来实现这种虚拟的机制。总线主要分为platform_driver(驱动)、platform_device(设备)两大类,这两大类下有各种各种的具体驱动、设备,可以理解为两条链表结构;两者都需要注册,注册函数分别为:plat 阅读全文
posted @ 2022-10-07 10:37 QianFa01 阅读(119) 评论(0) 推荐(0)
摘要: 3.4.1的基础上, 在drivers/char目录下,创建一个目录。mkdir hello_drive ; 把hello.c驱动文件复制到该目录下,创建一个Kconfig文件,touch Kconfig ;并编辑如下代码: 3. 创建Makefile文件,编辑如下代码: 4. 回到char目录下, 阅读全文
posted @ 2022-10-05 21:56 QianFa01 阅读(74) 评论(0) 推荐(0)
摘要: 在内核目录里的源码:可以编译为.ko;可以编译进内核映像文件zImage。make zImage 把驱动程序放进内核:可以编译进内核,也可以编译为模块。怎么放进内核文件? Linux的配置系统包括Makefile 、Kconfig、配置工具。Makefile存在于内核源代码中,定义Linux的内核编 阅读全文
posted @ 2022-10-04 21:29 QianFa01 阅读(787) 评论(0) 推荐(0)
上一页 1 ··· 5 6 7 8 9 10 下一页