博创嵌入式培训.ppt
文本预览下载声明
本章主要讲述嵌入式Linux的接口设计以及驱动程序,在虚拟驱动程序的框架基础上,阐述了AD、直流电机、触摸屏、FrameBuffer、视频设备和音频设备多个硬件的驱动程序和相关测试程序,理解驱动程序的框架、阅读与理解相关的代码是本章的重点与难点, 本章的驱动程序设计实现是基于Linux内核2.4版本的,对于2.6版本存在差异,读者可以在这些程序的思路上进行修改,从而使用相关代码。 1. 请列举出开发驱动程序的方法以及驱动程序的分类。 2. 请列举出使用devfs和不使用devfs编译驱动程序的区别。 3. 请列举出驱动程序和应用程序之间的区别。 4. 请列举出驱动程序的结构。 5. 请完成使用模数转换设备控制直流电机的实验。 6. 请完成使用FrameBuffer机制的实验。 7. 请完成使用触摸屏的实验。 8. 请完成使用V4L的相关实验。 9. 请完成使用OSS的相关实验。 10. 请完成本章的综合实验。 DBMS是一个系统软件。 数据库的核心应用是数据的查询 DBMS是一个系统软件。 数据库的核心应用是数据的查询 DBMS是一个系统软件。 数据库的核心应用是数据的查询 DBMS是一个系统软件。 数据库的核心应用是数据的查询 DBMS是一个系统软件。 数据库的核心应用是数据的查询 DBMS是一个系统软件。 数据库的核心应用是数据的查询 DBMS是一个系统软件。 数据库的核心应用是数据的查询 DBMS是一个系统软件。 数据库的核心应用是数据的查询 DBMS是一个系统软件。 数据库的核心应用是数据的查询 DBMS是一个系统软件。 数据库的核心应用是数据的查询 DBMS是一个系统软件。 数据库的核心应用是数据的查询 DBMS是一个系统软件。 数据库的核心应用是数据的查询 DBMS是一个系统软件。 数据库的核心应用是数据的查询 DBMS是一个系统软件。 数据库的核心应用是数据的查询 DBMS是一个系统软件。 数据库的核心应用是数据的查询 DBMS是一个系统软件。 数据库的核心应用是数据的查询 DBMS是一个系统软件。 数据库的核心应用是数据的查询 从缓冲帧操作集可以看到,关于FB的操作包括open、close、read、write、ioctl等,这些在之前的驱动程序中都做过介绍。内核通过fb_open()打开/dev/fb设备文件,之后通过fb_ioctl操作获得LCD的分辨率长宽和bpp等信息,并且通过mmap操作将其映射到用户空间之中。在这个过程中,可以通过fb_read和fb_write操作直接对FrameBuffer进行读写。在这里简单介绍一下mmap映射操作。 mmap映射操作可以将设备内存直接映射到用户空间。对于帧缓冲设备,可以通过映射操作直接将屏幕缓冲区的物理地址映射到用户空间的一段虚拟地址之中。之后用户就可以通过读写这段虚拟地址来直接在屏幕上绘图。 第五节 显示接口与Linux FrameBuffer(帧缓冲) —— 一、FrameBuffer机制介绍 FrameBuffer的体系结构 —— 集成了LCD控制器的嵌入式处理器体系结构 S3C2410芯片设备将LCD控制器直接嵌入到处理器系统之中,也就是说,通过处理器通往外面的接口可以直接连接SDRAM和LCD。这为嵌入式系统开发板关于显示功能的扩展提供了直接接口,非常方便 ? 第五节 显示接口与Linux FrameBuffer(帧缓冲) —— 一、FrameBuffer机制介绍 液晶显示器(Liquid Crystal Display )也简称为LCD,其构造是在两片平行的玻璃当中放置液态的晶体,两片玻璃中间有许多垂直和水平的细小电线,透过通电与否来控制杆状水晶分子改变方向,将光线折射出来产生画面。 1、背光选择 液晶显示器为被动发光型显示器,必须有外界光源,液晶显示器才会有显示。一般将液晶显示器分成透射式显示器、反射式显示器、半反半透式显示器三类。透射式液晶显示器必须加上背景光,反射式液晶显示器需要较强的环境光线,半反半透式液晶要求环境光线较强或加背光。 2、LCD的驱动方式 LCD的驱动方式有两种:使用LCD扫描芯片的LCD模块进行驱动,或者是通过LCD控制器直接扫描LCD屏幕。 第五节 显示接口与Linux FrameBuffer(帧缓冲) —— 二、LCD简介 3、S3C2410的LCD参数 (1)STN LCD 显示 ?支持三种LCD扫描模式:4位双扫描模式,4位单扫描模式,8位单扫描模式。 ?支持单色, 4级灰度和16级灰度。 ?支持256色和4096色的彩色STN LCD(cstn)。 ? 支持多种屏
显示全部