2020年12月10日
摘要:
一、I2C总线概述 I2C是由Philips公司开发的一种简单的、双向同步串行总线,它只需要两条线即可在连接于总线上的器件之间传送信息,其硬件连接框图如下所示: SCL:串行时钟线,数据传输过程中用于同步的时钟信号,低电平时允许SDA线上数据改变。 SDA:串行数据线,在时钟信号作用下,数据按位在数
阅读全文
posted @ 2020-12-10 22:35
quinoa
阅读(1194)
推荐(0)
2020年11月29日
摘要:
前面一节简单分析了Linux内核网卡驱动程序的框架,并编写了一个虚拟网卡驱动程序。这一节我们开始学习网卡芯片DM9000C,尝试将官方提供的DM900C网卡驱动程序移植到jz2440开发板使用的内核里。 内核版本:Linux-3.4.2 官方网卡驱动版本:2.09 1、DM900C连接方式 DM90
阅读全文
posted @ 2020-11-29 19:16
quinoa
阅读(559)
推荐(0)
2020年11月22日
摘要:
学习目的: 熟悉Linux网卡驱动基本框架以及驱动程序编写步骤 实现一个虚拟网卡驱动程序 1、概述 网卡工作在OSI的最后两层,物理层和数据链路层,主要是负责收发网络的数据包,它将网络通信上层协议传递下来的数据包以特定的媒介访问控制方式进行发送,并将接收到的数据包传递给上层协议。在知道了网卡的工作内
阅读全文
posted @ 2020-11-22 17:49
quinoa
阅读(5435)
推荐(1)
2020年11月21日
摘要:
前面学习了Linux内核中Nand Flash驱动程序的编写,现在继续学习如何编写NOR Flash驱动程序,在编写自己的NOR Flash驱动前,我们还是先来弄清楚NOR Flash驱动程序编写的框架。 我们知道在MTD系统层次下,Flash硬件驱动通过mtd_info结构体和上层的设备层进行交互
阅读全文
posted @ 2020-11-21 23:34
quinoa
阅读(983)
推荐(0)
2020年11月18日
摘要:
学习目的 掌握Nand Flash驱动程序的编写 通过前面对MTD系统层次进行分析,理清了内核中MTD系统框架。内核MTD系统已经实现了设备节点、MTD设备层、MTD原始设备层构建,并预留接口用于硬件驱动层的注册。驱动程序编写者只需完成硬件相关的操作,如提供硬件初始化和访问函数、填充mtd_info
阅读全文
posted @ 2020-11-18 20:34
quinoa
阅读(621)
推荐(0)
2020年11月16日
摘要:
学习目的: 分析Linux内核中MTD系统层次,为后面编写Nand Flash、NOR Flash驱动打下基础 前面我们实现了用内存模拟磁盘的块设备驱动程序,由于操作的是内存,优化合并后的bio请求在队列请求处理函数中被取出后,可直接根据请求数据传输方向、大小使用memcpy完成数据读写。但像Nan
阅读全文
posted @ 2020-11-16 00:43
quinoa
阅读(1658)
推荐(1)
2020年11月8日
摘要:
学习目的: 使用simulink封装一个子系统,并将封装子系统放入到自定义的库中,可供建模时重复使用 功能:封装一个能够检测输入信号下降沿跳变的边沿检测模块,该模块可支持双击时修改内部参数。封装完成后,将封装好的模块添加到自定义的simulink库中,方便建模日常使用 Matlab版本:2018a
阅读全文
posted @ 2020-11-08 16:15
quinoa
阅读(6788)
推荐(0)
摘要:
前面在Linux块设备驱动程序的引入一节,通过例子讲述了块设备驱动程序引入的原因,并从文件系统和设备层之间入口函数ll_rw_block开始分析,层层递进,理清了I/O调度层到块设备驱动之间的调用关系,最后根据这些关系,参考内核drivers\block\acsi.c设备驱动,总结出来注册块设备驱动
阅读全文
posted @ 2020-11-08 09:20
quinoa
阅读(928)
推荐(0)
2020年11月5日
摘要:
1、块设备驱动引入 前面学习了字符设备驱动程序的编写,在字符设备驱动程序中,open、read等系统调用最终访问到驱动程序中注册的file_operations结构体提供的xxx_open、xxx_read成员函数,从而实现了对硬件的访问。字符设备这种访问机制在对设备发出读/写请求时,实际的硬件I/
阅读全文
posted @ 2020-11-05 23:54
quinoa
阅读(594)
推荐(0)
2020年11月3日
摘要:
学习目的: 编写usb鼠标驱动程序,模拟l、s、enter按键值按下 前面对Linux中USB层次进行了简单分析,了解到内核中USB驱动分为两类:USB主机控制器驱动程序(Host Controller Driver)、USB设备驱动程序(USB device drivers)。USB主机控制器驱动
阅读全文
posted @ 2020-11-03 22:20
quinoa
阅读(1147)
推荐(0)