嵌入式Linux下单色LCD驱动程序的研究与开发

嵌入式Linux下单色LCD驱动程序的研究与开发

论文摘要

随着计算机技术和通信技术的迅速发展以及Internet的不断扩展,嵌入式系统得到了越来越广泛的应用。由于嵌入式系统的复杂性不断增加,嵌入式操作系统已经成为嵌入式系统中最重要的组成部分。嵌入式Linux是一种适用于嵌入式系统的源码开放的抢占式实时多任务操作系统,是目前嵌入式操作系统领域中的一个研究热点。在嵌入式Linux系统开发中,最为主要的工作是驱动程序的开发。优秀的设备驱动程序可以更好的利用硬件的特性,提高系统的访问效率,改善整个应用系统的性能。本课题所开发的显示驱动程序主要是应用在铁路编组站手持终端中,实现终端单色液晶显示器(LCD)的显示功能。该手持终端采用了欧洲先进的铁路综合数字移动通信系统(GSM-R),是编组站通信平台由模拟集群改造为GSM-R网络的关键组成部分。硬件方面,根据编组站工作环境的特殊要求,课题采用了ARM处理器作为主控制器,并采用单色LCD作为显示单元。在系统方面,首先通过对多种嵌入式操作系统的分析比较,选取了Linux作为终端的操作系统。而后根据终端的具体硬件结构和功能要求,构建了完整的嵌入式操作系统,为后面进一步的程序开发提供了完整的开发环境,构建工作主要包括:嵌入式Linux内核的定制与移植、Bootloader启动程序的移植以及嵌入式根文件系统的建立与移植。在驱动方面,首先分析研究了Linux设备驱动的模型结构,并实现了本显示驱动模块的基本功能如打开、关闭、读写等。而后在对Linux内存管理机制深入分析研究的基础上实现了显存的分配与映射。最后根据所设计的显示单元接口电路,实现了Linux下对ARM GPIO端口的控制,进而通过GPIO端口实现了对LCD显示的控制操作。

论文目录

  • 摘要
  • ABSTRACT
  • 第一章 绪论
  • 1.1 课题背景和研究内容
  • 1.1.1 中国铁路信息化发展
  • 1.1.2 GSM-R 系统简介
  • 1.1.3 铁路编组站通信系统
  • 1.1.4 课题研究的主要内容
  • 1.2 相关背景知识概述
  • 1.2.1 嵌入式系统
  • 1.2.2 ARM
  • 1.2.3 嵌入式软件的基本开发流程
  • 第二章 手持终端的总体设计
  • 2.1 S3C2410A 处理器介绍
  • 2.2 显示单元
  • 2.2.1 终端显示要求
  • 2.2.2 单、彩色液晶屏的特点及选型
  • 2.2.3 TNS-G320200FTDLY-1W 单色屏介绍
  • 2.2.4 液晶屏与ARM 接口设计
  • 2.3 操作单元
  • 2.4 通信单元
  • 第三章 嵌入式Linux 操作系统分析
  • 3.1 嵌入式操作系统
  • 3.1.1 VxWorks
  • 3.1.2 Palm OS
  • 3.1.3 Windows CE
  • 3.1.4 Linux
  • 3.1.5 四种操作系统对比
  • 3.2 Linux 内核体系结构
  • 3.3 Linux 进程管理与调度
  • 3.3.1 进程描述符
  • 3.3.2 进程状态
  • 3.3.3 进程创建
  • 3.3.4 进程终结
  • 3.3.5 进程调度
  • 3.4 Linux 内存管理
  • 3.4.1 虚拟内存管理
  • 3.4.2 内存地址空间划分
  • 第四章 Bootloader 及Linux 内核移植
  • 4.1 Bootloader
  • 4.1.1 Bootloader 介绍
  • 4.1.2 Bootloader 启动流程
  • 4.1.3 vivi 启动过程分析
  • 4.1.4 ViVi 移植
  • 4.2 Linux 内核移植
  • 4.2.1 Linux 内核代码结构
  • 4.2.2 Linux 内核移植
  • 4.3 文件系统
  • 4.3.1 嵌入式文件系统
  • 4.3.2 Linux 根文件系统
  • 4.3.3 常见的嵌入式文件系统
  • 4.3.4 Busybox 构建根文件系统
  • 第五章 LCD 显示驱动开发
  • 5.1 Linux 设备驱动程序介绍
  • 5.1.1 Linux 设备驱动功能
  • 5.1.2 Linux 设备驱动程序特点
  • 5.1.3 设备驱动模块加载
  • 5.1.4 设备号
  • 5.1.5 设备分类
  • 5.2 字符型设备驱动结构
  • 5.2.1 重要数据结构
  • 5.2.2 设备注册与注销
  • 5.2.3 设备打开与释放
  • 5.2.4 设备的读/写操作
  • 5.3 LCD 显示驱动开发设计
  • 5.3.1 总体设计
  • 5.3.2 帧缓冲(Framebuffer)设备
  • 5.3.3 帧缓冲(Framebuffer)设备驱动架构
  • 5.3.4 帧缓冲设备驱动层注册
  • 5.3.5 帧缓冲内存分配
  • 5.3.6 LCD 端口控制
  • 5.3.7 显示数据的传输控制
  • 结束语
  • 参考文献
  • 发表论文和参加科研情况说明
  • 致谢
  • 相关论文文献

    • [1].高性能嵌入式驱动程序防篡改自检测仿真研究[J]. 计算机仿真 2019(12)
    • [2].驱动程序安装专题问答[J]. 网络安全和信息化 2020(08)
    • [3].计算机硬件设备驱动程序分析[J]. 电子制作 2018(17)
    • [4].计算机驱动程序测试模块开发研究[J]. 科技创新与应用 2017(15)
    • [5].驱动程序也要云检测[J]. 电脑迷 2011(02)
    • [6].驱动程序 装还是不装?[J]. 电脑爱好者 2009(18)
    • [7].系统背后的无名英雄驱动程序[J]. 电脑爱好者 2013(17)
    • [8].精彩的幕后英雄──驱动程序[J]. 中国信息技术教育 2013(12)
    • [9].探讨计算机驱动程序测试模块开发[J]. 计算机产品与流通 2017(10)
    • [10].再说驱动[J]. 中国信息技术教育 2014(01)
    • [11].51环境下按键驱动程序的优化[J]. 电子技术与软件工程 2013(09)
    • [12].为何无法安装驱动程序[J]. 电脑爱好者 2010(01)
    • [13].教你正确安装驱动程序的顺序[J]. 网络与信息 2010(03)
    • [14].驱动管理莫用愁 有个天使等着你[J]. 电脑爱好者(普及版) 2009(05)
    • [15].在线应用集锦 驱动程序在线装[J]. 电脑爱好者(普及版) 2010(04)
    • [16].扫清残余部队——图解清理旧驱动程序残余文件[J]. 电脑爱好者(普及版) 2010(11)
    • [17].为驱动程序植入自动指令[J]. 电脑爱好者 2014(15)
    • [18].你的驱动程序签名了吗?[J]. 网友世界 2011(02)
    • [19].编写驱动程序防止木马入侵[J]. 电脑编程技巧与维护 2008(08)
    • [20].软件特工队[J]. 电脑迷 2010(19)
    • [21].Windows 8里的那些驱动程序[J]. 电脑爱好者 2013(17)
    • [22].USB完全即插即用[J]. 电脑爱好者 2008(09)
    • [23].基于端口操作的虚拟还原穿透驱动程序的设计[J]. 无线互联科技 2014(09)
    • [24].POS机钱箱驱动程序的开发[J]. 北京工业职业技术学院学报 2011(02)
    • [25].面向信号的仪器驱动程序建模[J]. 火力与指挥控制 2010(08)
    • [26].基于数据库的通用驱动程序自动编写算法研究[J]. 电子设计工程 2019(15)
    • [27].驱动升级我有捷径[J]. 网友世界 2010(12)
    • [28].基于WDF过滤驱动的监控系统的设计与实现[J]. 计算机光盘软件与应用 2014(11)
    • [29].聊聊安装驱动那些事[J]. 计算机与网络 2014(06)
    • [30].最新动态[J]. 国内外机电一体化技术 2008(01)

    标签:;  ;  ;  ;  

    嵌入式Linux下单色LCD驱动程序的研究与开发
    下载Doc文档

    猜你喜欢