笔记参考了宋宝华老师的《Linux设备驱动开发详解:基于最新的Linux 4.0内核》以及韦东山老师的嵌入式驱动教程 笔记开发环境: 单板:第一章到第八章使用TINY4412-1611;第九章及之 ...
笔记参考了宋宝华老师的《Linux设备驱动开发详解:基于最新的Linux 4.0内核》以及韦东山老师的嵌入式驱动教程 笔记开发环境: 单板:第一章到第八章使用TINY4412-1611;第九章及之 ...
一、MMC简介 eMMC使用BGA封装了Nand Flash和Flash控制器,向外提供MMC标准接口,其结构图如下图所示(图来自《eMMC5.1官方标准协议》)。eMMC的出现使得手机厂商就能专注 ...
和手机一样,开发板中也带有调整背光亮度的功能。 调整背光亮度依赖于PWM,它通过调节脉冲宽度来控制背光亮度,此方式需要使用PWM驱动。本章将对其进行讲解。 一、用户空间调整背光亮 ...
一、V4L2框架主要结构体分析 V4L2(video for linux version 2),是内核中视频设备的驱动框架,为上层访问视频设备提供统一接口。 V4L2整体框架如下图: ...
在读者学习本章以及后续章节之前,最好拥有ADC和触摸屏裸机基础,可以参考:ADC和触摸屏编程。 和按键驱动类似,触摸屏也是通过电平来体现按下或松开。因此如果想要写出通用的触摸屏驱动,需要 ...
由于之后的触摸屏驱动分析中使用到了GPIO子系统和i2c子系统,因此在分析触摸屏驱动之前我准备把这两个子系统进行简单分析。 在读者学习本章以及后续i2c相关章节之前,最好了解i2c通信方 ...
一、DMA简介 DMA(Direct Memory Access,直接内存存取),DMA传输将数据从一个地址空间复制到另外一个地址空间。传输过程由DMA控制器独立完成,它并没有拖延CPU的工作,可以 ...
一、USB固件和USB传输方式 USB固件: USB固件一般不需要我们编写,在此不做程序分析。 USB固件中包含USB设备的出厂信息,如厂商ID、产品ID、主版本号和次版本号等。这就是为什么当我 ...
由于之后的触摸屏驱动分析中使用到了GPIO子系统和i2c子系统,因此在分析触摸屏驱动之前我准备把这两个子系统进行简单分析。 之前我们使用GPIO引脚的方式并不是推荐的方式,当我们更改某一 ...
在读者学习本章以及后续LCD相关章节之前,最好拥有LCD裸机基础,可以参考:LCD编程。 在内核中,表示LCD使用的是framebuffer(帧缓冲,简写为fb),其内容对应于屏幕上的界 ...