
驱动开发笔记
文章平均质量分 89
在学习驱动过程中做的记录
ShallowGreen
这个作者很懒,什么都没留下…
展开
-
裸机启动流程
目录 初识开发板: 1裸机启动流程: 2烧录代码命令 3交叉编译工具 4编译点亮led灯的代码 初识开发板: 核心板:三星exynos4412猎户座系统芯片;CPU主频 1.4GHZ,基于ARM-cortex A9;四核处理器,同时处理四个进程;内部IROM:内部集成的一个存储的 64k;内部IRAM:256k;外部扩充ROM:4G存储空间,RAM:1G的内存空间。 底板:蜂鸣器:1个;UART口:3个;usb:2个;网口:1个;拨码开关:2个(左边控制电源,右边控制启动位置);IIC:4套原创 2022-01-28 20:33:38 · 4477 阅读 · 0 评论 -
内核模块化编程
目录 内核模块的概念介绍 模块化编程框架 模块加载函数 模块卸载函数 模块的开源协议与声明 模块编译 Makefile 模板 单模块的编程步骤 1 编写内核模块文件test.c 2 编写Makefile 3 编译生成test.ko 内核模块的概念介绍 Linux 内核整体结构已经很庞大,包含了很多的组件,而对于我们工程师而言,有两种方法将需要的功能包含进内核当中。 一:将所有的功能都编译进 Linux 内核(静态加载模块)。 二:将需要的功能编译成模块...原创 2022-01-29 17:00:27 · 2168 阅读 · 1 评论 -
3种字符设备驱动编程
目录 1 杂项字符设备 核心结构体 操作函数 杂项字符设备注册应用 2 早期经典方式注册 操作函数 经典设备注册应用 3 Linux2.6字符设备 核心结构体 操作函数 Linux2.6设备注册应用 Linux系统借鉴了面向对象的思想来管理设备驱动,每一类设备都会有定义一个特定的结构体来描述它,这个结构体包含了设备的基本信息,以及操作设备方法(函数指针)所以,编写程序实际上就是实现核心结构体,然后把这个结构体注册到内核中。 驱动程序就是向下控制硬件,向上提供接口,这...原创 2022-01-29 18:30:05 · 1749 阅读 · 0 评论