基于arm微处理器的键盘程序设计.doc
约78页DOC格式手机打开展开
基于arm微处理器的键盘程序设计,基于arm微处理器的键盘程序设计本文共计78页,32803字;摘要随着计算机网络技术、电子技术的迅猛发展,计算机已迈入了另一个充满机遇的阶段╠╠后pc时代。后pc时代的到来,使得人们开始越来越多地接触到一个新的概念╠╠嵌入式系统。形式多样的嵌入式数字化产品已经开始继pc机之后成为信息处理的一大主要工具,并且正在逐步形成...
内容介绍
此文档由会员 刘瑞 发布
基于ARM微处理器的键盘程序设计
本文共计78页,32803字;
摘 要
随着计算机网络技术、电子技术的迅猛发展,计算机已迈入了另一个充满机遇的阶段――后PC时代。后PC时代的到来,使得人们开始越来越多地接触到一个新的概念――嵌入式系统。形式多样的嵌入式数字化产品已经开始继PC机之后成为信息处理的一大主要工具,并且正在逐步形成一个充满商机的巨大产业。
本文着重介绍了在嵌入式设备中,基于特定的ARM嵌入式系统开发设计出合理完善的键盘程序。首先介绍了嵌入式系统,嵌入式技术发展现状和前景以及ARM微处理器的应用领域、结构、应用选型。接着简略介绍了硬件开发环境Easy ARM 2100,并详细介绍了相关硬件电路和设计中使用到的CPU管脚、相关寄存器。重点分析了键盘接口的确定,键盘程序设计的工作原理、方案和实现方法,以及重要模块的实现。分别用扫描法和中断法来实现了键盘程序,在程序设计、调试的过程中解决了抖动和连续发送键值等问题。最后,列举出利用键盘对云台控制的事例来说明键盘程序的应用。在程序的实际测试中遇到的具体问题提出了可行的解决方案。
本次课题最终完成了基本键盘程序的设计并将键盘程序应用于云台控制旋转。
关键词:嵌入式,驱动程序,ARM,键盘。
The keyboard program designs based on ARM microprocessor
Abstract
With the rapid development of the computer network technology and the electronic technology, the world is stepping into post――PC era,during which people gradually know and accept a new concept――embedded system. Many kinds of embedded digital products have become the main tools of processing information after PC.
目 录
1 绪 论 1
1.1 课题来源和背景 1
1.2 课题研究的目的、意义 1
1.3 本文主要研究内容 2
2 嵌入式系统和ARM嵌入式微处理器概述 3
2.1 嵌入式系统 3
2.1.1 嵌入式系统的概念 3
2.1.2 嵌入式技术发展现状 3
2.1.3 嵌入式技术发展前景 4
2.2 ARM简介 5
2.3 ARM微处理器的应用领域及特点 5
2.3.1 ARM微处理器的应用领域 5
2.3.2 ARM微处理器的特点 6
2.3.3 ARM微处理器系列 6
2.4 ARM微处理器的结构 7
2.4.1 RISC体系结构 7
2.4.2 ARM微处理器的寄存器结构 8
2.4.3 ARM微处理器的指令结构 9
2.5 ARM微处理器的应用选型 9
2.5.1 ARM微处理器内核的选择 9
2.5.2 系统的工作频率 9
2.5.3 片内外围电路的选择 10
3 开发环境 11
3.1 硬件开发环境Easy ARM 2100 开发板简介 11
3.2 板载CPU LPC2119硬件资源与结构 12
3.2.1 LPC2119硬件概述 12
3.2.2 LPC2119特性 12
3.2.3 结构概述 13
3.2.4 ARM7TDMI-S 处理器 13
3.2.5 片内FLASH程序存储器 14
3.2.6 LPC2119管脚图 14
3.3 课题相关硬件电路 15
3.3.1 键盘接口电路 15
3.3.2 LED显示电路 15
3.3.3 LED1~LED4控制电路 16
3.3.4 系统电源电路 16
3.3.5 复位电路 17
3.3.6 系统时钟电路 17
3.3.7 串口及MODEM 接口电路 18
3.4 CPU管脚功能及寄存器简介 19
3.4.1 P0口 19
3.4.2 相关寄存器 20
3.5 软件开发环境ADS简介 24
3.5.1 ADS简介 24
3.5.2 ADS使用步骤 24
4 键盘程序方案 28
4.1 键盘程序设计方案 28
4.2 扫描法实现键盘程序 28
4.2.1 扫描法工作原理 28
4.2.2 扫描法设计方案 29
4.2.3 核心程序说明 29
4.3 中断法实现键盘程序 31
4.3.1 中断法工作原理 31
4.3.2 中断法实现方案 31
4.3.3 核心程序说明 32
4.4 重要模块程序设计 34
4.4.1 LED八段数码管显示模块程序 34
4.4.2 LED1----LED4控制模块程序 35
4.4.3 UART0/UART1程序设计 35
4.5 中间件的设计 36
4.5.1 中间件的制作 36
4.5.2 中间件的作用 37
4.6 关键技术及实现 37
4.6.1 扫描法键盘消除抖动 37
4.6.2 中断法键盘消除抖动 38
4.6.3 连续发送键值的处理 38
5 测试方案、结果及应用 39
5.1 测试方案 39
5.1.1 测试环境 39
5.1.2 测试内容 39
5.2 测试结果 40
5.2.1 功能测试结果 40
5.2.1 性能测试结果 40
5.3 程序应用 40
5.3.1 程序应用方案设计 40
5.3.2 硬件连接框图 41
5.3.3 程序具体说明 41
6 结 论 43
致 谢 44
参 考 文 献 45
附录A 程序源码 46
附录B 开题报告 59
附录C 中期报告 63
附录D 英文翻译 64
五、参考资料文献及网站
1. 《嵌入式系统开发与应用实验教程》 北京航空航天大学出版社
2. 《C程序设计》 清华大学出版社
本文共计78页,32803字;
摘 要
随着计算机网络技术、电子技术的迅猛发展,计算机已迈入了另一个充满机遇的阶段――后PC时代。后PC时代的到来,使得人们开始越来越多地接触到一个新的概念――嵌入式系统。形式多样的嵌入式数字化产品已经开始继PC机之后成为信息处理的一大主要工具,并且正在逐步形成一个充满商机的巨大产业。
本文着重介绍了在嵌入式设备中,基于特定的ARM嵌入式系统开发设计出合理完善的键盘程序。首先介绍了嵌入式系统,嵌入式技术发展现状和前景以及ARM微处理器的应用领域、结构、应用选型。接着简略介绍了硬件开发环境Easy ARM 2100,并详细介绍了相关硬件电路和设计中使用到的CPU管脚、相关寄存器。重点分析了键盘接口的确定,键盘程序设计的工作原理、方案和实现方法,以及重要模块的实现。分别用扫描法和中断法来实现了键盘程序,在程序设计、调试的过程中解决了抖动和连续发送键值等问题。最后,列举出利用键盘对云台控制的事例来说明键盘程序的应用。在程序的实际测试中遇到的具体问题提出了可行的解决方案。
本次课题最终完成了基本键盘程序的设计并将键盘程序应用于云台控制旋转。
关键词:嵌入式,驱动程序,ARM,键盘。
The keyboard program designs based on ARM microprocessor
Abstract
With the rapid development of the computer network technology and the electronic technology, the world is stepping into post――PC era,during which people gradually know and accept a new concept――embedded system. Many kinds of embedded digital products have become the main tools of processing information after PC.
目 录
1 绪 论 1
1.1 课题来源和背景 1
1.2 课题研究的目的、意义 1
1.3 本文主要研究内容 2
2 嵌入式系统和ARM嵌入式微处理器概述 3
2.1 嵌入式系统 3
2.1.1 嵌入式系统的概念 3
2.1.2 嵌入式技术发展现状 3
2.1.3 嵌入式技术发展前景 4
2.2 ARM简介 5
2.3 ARM微处理器的应用领域及特点 5
2.3.1 ARM微处理器的应用领域 5
2.3.2 ARM微处理器的特点 6
2.3.3 ARM微处理器系列 6
2.4 ARM微处理器的结构 7
2.4.1 RISC体系结构 7
2.4.2 ARM微处理器的寄存器结构 8
2.4.3 ARM微处理器的指令结构 9
2.5 ARM微处理器的应用选型 9
2.5.1 ARM微处理器内核的选择 9
2.5.2 系统的工作频率 9
2.5.3 片内外围电路的选择 10
3 开发环境 11
3.1 硬件开发环境Easy ARM 2100 开发板简介 11
3.2 板载CPU LPC2119硬件资源与结构 12
3.2.1 LPC2119硬件概述 12
3.2.2 LPC2119特性 12
3.2.3 结构概述 13
3.2.4 ARM7TDMI-S 处理器 13
3.2.5 片内FLASH程序存储器 14
3.2.6 LPC2119管脚图 14
3.3 课题相关硬件电路 15
3.3.1 键盘接口电路 15
3.3.2 LED显示电路 15
3.3.3 LED1~LED4控制电路 16
3.3.4 系统电源电路 16
3.3.5 复位电路 17
3.3.6 系统时钟电路 17
3.3.7 串口及MODEM 接口电路 18
3.4 CPU管脚功能及寄存器简介 19
3.4.1 P0口 19
3.4.2 相关寄存器 20
3.5 软件开发环境ADS简介 24
3.5.1 ADS简介 24
3.5.2 ADS使用步骤 24
4 键盘程序方案 28
4.1 键盘程序设计方案 28
4.2 扫描法实现键盘程序 28
4.2.1 扫描法工作原理 28
4.2.2 扫描法设计方案 29
4.2.3 核心程序说明 29
4.3 中断法实现键盘程序 31
4.3.1 中断法工作原理 31
4.3.2 中断法实现方案 31
4.3.3 核心程序说明 32
4.4 重要模块程序设计 34
4.4.1 LED八段数码管显示模块程序 34
4.4.2 LED1----LED4控制模块程序 35
4.4.3 UART0/UART1程序设计 35
4.5 中间件的设计 36
4.5.1 中间件的制作 36
4.5.2 中间件的作用 37
4.6 关键技术及实现 37
4.6.1 扫描法键盘消除抖动 37
4.6.2 中断法键盘消除抖动 38
4.6.3 连续发送键值的处理 38
5 测试方案、结果及应用 39
5.1 测试方案 39
5.1.1 测试环境 39
5.1.2 测试内容 39
5.2 测试结果 40
5.2.1 功能测试结果 40
5.2.1 性能测试结果 40
5.3 程序应用 40
5.3.1 程序应用方案设计 40
5.3.2 硬件连接框图 41
5.3.3 程序具体说明 41
6 结 论 43
致 谢 44
参 考 文 献 45
附录A 程序源码 46
附录B 开题报告 59
附录C 中期报告 63
附录D 英文翻译 64
五、参考资料文献及网站
1. 《嵌入式系统开发与应用实验教程》 北京航空航天大学出版社
2. 《C程序设计》 清华大学出版社