(电力系统及其自动化专业论文)arm嵌入式系统实验开发平台研究与实现.pdf_第1页
(电力系统及其自动化专业论文)arm嵌入式系统实验开发平台研究与实现.pdf_第2页
(电力系统及其自动化专业论文)arm嵌入式系统实验开发平台研究与实现.pdf_第3页
(电力系统及其自动化专业论文)arm嵌入式系统实验开发平台研究与实现.pdf_第4页
(电力系统及其自动化专业论文)arm嵌入式系统实验开发平台研究与实现.pdf_第5页
已阅读5页,还剩101页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

西南交通大学硕士研究生学位论文第2 页 外,嵌入式系统硬件,特别是嵌入式c p u 的处理能力提升较快,由8 位、1 6 位升级到3 2 位,采用嵌入式系统的掌上电脑、p d a 、智能手 机、智能汽车等新产品层出不穷。在国内,由于嵌入式系统应用广 泛,许多高校都开设嵌入式系统课程,而嵌入式技术实践性很强, 嵌入式系统课程需要进行大量实验。另外,企业在做产品开发时要 先开发硬件平台,然后再开发应用程序,开发周期过长。因此,嵌 入式系统教学实验和应用开发都需要相应的开发平台。 1 2 研究内容及意义 本文根据教学实验和应用开发的双重需求,设计实现一个功能 完备,价格低廉,技术流行的嵌入式系统实验开发平台,能满足嵌 入式系统教学实验的需要,同时可作为嵌入式产品开发平台。 主要内容包括:系统硬件平台设计与实现、b i o s 程序及底层驱 动程序设计与实现、操作系统移植及设备驱动程序设计与实现三大 部分内容。 1 硬件设计包括原理设计及p c b 印制板的设计、制作及调 试。采用a r m 7 t d m i 内核的3 2 位处理器,扩展出如下硬件资 源: r s 一2 3 2 串口 1 0 m 以太网口 l c d 接口 + p s 2 键盘接口 i d e 接口 u s b ( d e v i c e ) 接口 m p 3 扩展接口 r t c 实时时钟 a d 采样接口 话南交通大学硕士研究生学位论文第3 页 外部按键 跑马灯 七段数码管 蜂鸣器 + j t a g 口 2 b i o s 程序及底层驱动程序设计包括主板b i o s 程序设计、 基于b 1 0 s 的接口驱动程序设计、相应的测试程序设计。使 该平台基于b 1 0 s 系统能够完成一些基础类、人机接口类、 通讯类实验。 3 操作系统移植及设各驱动程序设计包括u c l i n u x 操作系 统的移植、u s b e h t e r n e t i d e 等部分接口的设备驱动程序设 计、基于操作系统的应用程序设计举例。使该平台能够完成 操作系统类、应用类实验。 1 3 论文结构安排 本文共分6 章,具体结构安排如下: 第l 章:绪论。从应用角度出发,通过论述嵌入式系统的概况、 嵌入式系统发展现状及教学现状,指出了嵌入式系统实验开发平台 的研究与实现的重要性。 第2 章:总体方案设计。在详细分析系统功能需求的基础上提 出微处理器选型方案及软、硬件总体设计方案。 第3 章:硬件平台设计。介绍微处理器s 3 c 4 4 8 0 x 的硬件结构 和功能。阐述本方案中的c p u 系统和接口电路原理设计,以及p c b 印制板的设计。 第4 章:b 1 0 s 及底层驱动程序设计。讲述b 1 0 s 程序的作用、 功能及设计原理,将底层驱动程序加入b i o s ,编写相关的测试或实 验例程,完成实验平台的基本实验功能。 第5 章:“c l i n u x 移植及设备驱动程序设计。阐述嵌入式操作 西南交通大学硕士研究生学位论文第4 页 系统捧c l i n u x 向硬件平台的移植过程。描述交叉编译环境的搭建,内 核引导,文件系统构建,设各驱动程序编写,应用程序设计举例。 第6 章:测试与验证。运行第4 章、第5 章的测试或实验例程, 对实验开发平台进行功能测试,验证其实际应用性。 结论:对论文工作做结论性概括。并归纳其不足以及进一步深 入的工作方向。 西南交通大学硕士研究生学位论文第5 页 第2 章总体方案设计 嵌入式系统实验开发平台的方案设计应能满足嵌入式系统教学 实验的需求,具体来讲,基于实验开发平台应能完成如下实验项目: + 基础类实验 可以实现如跑马灯控制实验、数码管显示实验、蜂鸣器控制实 验、中断控制实验、w a t c h d o g 控制实验等基础类实验。 + 人机接口类实验 可以实现如键盘输入实验、l c d 显示实验等人机接口类实验。 通讯类实验 可以实现如串口通讯实验、以太网通讯实验、u s b 通讯实验等 通讯类实验。 + 操作系统类实验 可阻实现如b o o t l o a d e r 编写实验、操作系统移植实验等有关 嵌入式操作系统类实验。 + 高级应用类实验 可以实现如m p 3 音频文件播放实验、通过u s b 控制跑马灯和数 码管、读写i d e 硬盘婷实际应用类实验。 另外,进行产品应用开发应具各常用的硬件接口和驱动,包括 串口、以太网口、l c d 接口、i d e 接口及相应的驱动程序,能够基于 该平台便捷的完成相关产品的应用开发,如大容量m p 3 播放器、移 动硬盘、串口转以太网设备、串口转u s b 设备等。 因此,在进行器件选型时要考虑成本、易用性及应用广泛性, 在进行方案设计时要考虑资源完整性, 2 1 硬件方案设计 2 1 1 微处理器选型 由于嵌入式系统应用需求的多样性,市场上基于r i s c 。1 ( 精简指 令集) 结构的嵌入式微处理器也日渐增多。基于应用广泛性的选型原 令集) 结构的嵌入式微处理器也日渐增多。基于应用广泛性的选型原 西南交通大学硕士研究生学位论文第6 页 则,选定a r m 核微处理器作为实验开发平台的核心。 目前,a 洲微处理器包括a r m 7 、a r m 9 、a r m 9 b 、a r m l 0 等通用微 处理器系列。而其中a r 7 比a r 姻等其他系列更适合于教学实验, 具体体现如下: 1 从硬件设计方面,a r m 7 主频在3 0 。1 0 0 m h z 左右,a r m 9 等在 l o o 一2 0 0 m h z 以上,属高速设计,根据易用性选型原则,a r m 7 更加合适。 2 从软件设计方面,在教学中采用源码开发的操作系统已成为 共识,a r m 7 资源紧凑,适合运行斗c 1 i n u x 和“c o s 等源码开放的操作 系统,在教学中能够充分体现嵌入式系统对资源、成本、可靠性有 严格要求的特点;而a r m 9 等系列是系统集成度更高的s o c ,适合跑 w i n c e 、l i n u x 等高级操作系统,用于教学实验会造成在设计时往往 不会关注资源、成本、可靠性的限制,就如同用一台p c 进行教学一 样,无法体现嵌入式教学的特点。 3 从价格和应用方面,a r m 7 芯片价格比a r m 9 等低得多,而且 a r m 7 芯片是目前嵌入式产品市场的主流,占9 0 以上。 基于a 脯7 t d m i 核的三星s 3 c 4 4 b o x 芯片,是目前国内使用最广的 经典a r m 芯片,可扩展资源丰富,价格低廉,非常适合于教学实验。 2 1 2 具体方案设计 由功能需求分析确定硬件结构原理图如图2 一l 所示: 各主要模块基本组成: 微处理器m c u :采用s a m s u n g 公司生产的a r m 7 t d m i 内核的 s 3 c 4 4 b o x 处理器: f l a s h 存储器:采用一片s s t 3 9 v f l 6 0f l a s h 存储器,大小为 2 m 字节,用于存放b 1 0 s 程序、中断向量表及u c l i n u x 操作系 统压缩文件; s d r a m 存储器:用一片h y 5 7 v 6 4 1 6 2 0 h g 作为s d r a m 存储器, 大小为8 m 字节,可满足斗c l i n u x 操作系统及各种较复杂算法 程序的运行要求: 西南交通大学硕士研究生学位论文第7 页 提供系统电源 围2 1硬件蛄构原理困 守囝守囝守圈 西南交通大学硕士研究生学位论文第8 页 r t c 电路:采用一粒3 v 纽扣电池,给s 3 c 4 4 b o x 内置的r t c 实时时钟单元提供外接电源; 外部按键:两个外部中断按键,分别接m c u 的两路外部中断, 进行中断测试;一个复位按键,进行系统复位; 七段数码管:带小数点,共阳极: + 蜂鸣器:用于蜂鸣器发声实验; 跑马灯:3 路红、绿、黄三色l e d ,用于跑马灯控制实验; 两路r s 2 3 2 串行接口:采用两片电平转换芯片m a x 3 2 3 2 c 将 m c u 的两路u a r t ( 通用异步收发器) 引出,接两个d b 9 针的 r s 2 3 2 串行接口; 1 0 m 以太网接口:用一片网卡控制芯片r t l 8 0 1 9 a s ,通过网络 隔离变压器接到r j 4 5 以太网接口; u s b ( d e v i c e ) 1 1 接口:使用p h i l i p s 公司的u s b l 1 接口控 制芯片p d i u s b d l 2 接一个t y p eb 型u s b 座连接器: p s 2 接口:通过两路外部中断引出p s 2 接口,可以外接p s 2 接口的标准p c 键盘; l c d 接口:将m c u 内部l c dc o n t r o l e r 引出为2 0 针l c d 接口, 最大可支持分辨率3 2 0 2 4 0 的s t n 型2 5 6 色液晶显示屏,本 方案中外接一个2 4 0 3 2 0 的s t n 型1 6 级灰度图形液晶; a d 采样接口:m c u 内部集成了一个8 路1 0 位的a d c ,本方 案中引出一路通过可调电位器,接板上直流电源,另外,8 路都可以通过已经引出的标准插座外扩; i d e 硬盘接口:可外接i d e 接口硬盘,但须单独接硬盘十1 2 v 和+ 5 v 电源; + j t a g 接口:1 4 针标准j t a g 接口,外接j t a g 调试板和p c 机 相连,用于在线调试和f l a s h 程序烧写: + m p 3 接口及m p 3 扩展板:通过s i o 总线和i o 控制线扩展成m p 3 接口,外接由v s l o l l b 为解码芯片的m p 3 扩展板,支持m p 3 、 w a v 和p c m 音频文件,扩展板带有耳机接口,可外接耳机。 西南交通大学硕士研究生学位论文第9 页 2 2 软件方案设计 2 。2 。1b i o s 程序设计 嵌入式系统中,在操作系统内核或用户应用程序运行之前有一 小段程序。通过这段小程序,可以初始化硬件设各,建立内存空间 的映射图( 有的c p u 没有内存映射功能,如s 3 c 4 4 b o x ) ,以便最终调 用操作系统内核或用户应用程序。这段小程序称为b o o t l o a d e r ,完 成操作系统的加载启动任务。 嵌入式系统实验开发平台是一个基于实验开发目的特殊的嵌入 式系统,需要完成各种底层接口的驱动实验或开发以及实现人机交 互,b o o t l o a d e r 功能相对单一。因此,设计b i o s ( 基本输入输出系 统) 主板程序,既具有b o o t l o a d e r 的功能,又具有一定系统功能, 同时基于b i o s 能够完成诸如b o o t l o a d e r 的编写及操作系统的移植 等操作系统类实验。 b i o s 程序软件结构如图2 2 所示: 圈2 2b 10 s 程序软件蛄构图 西南交通大学硕士研究生学位论文第1 0 页 b i o s 完成的主要任务: 硬件初始化 操作系统引导 日期查询设置功能 时钟查询设置功能 + 主频在线设置功能 串口波特率设置功能 串口通讯功能 网口下载接收功能 i p 地址修改功能 f l a s h 程序烧写功能 内存程序拷贝功能 蜂鸣器发声测试功能 外部中断测试功能 + p s 2 键盘输入功能 + l c d 显示功能 m p 3 播放功能 2 2 2 嵌入式操作系统选择及设备驱动程序设计 c l i n u x 是为没有m m u 的处理器设计的源码开放的嵌入式操作系统。 u c l i n u x 有很多优点成为选择它作为本方案嵌入式操作系统的原因: 多种c p u 的支持。支持嵌入式领域中广泛使用的微处理器, 包括a r m 7 t d m i 、m o t o r 0 1 a 公司韵c 0 1 d f i r e 系列和龙珠系列 等,并且在不断的扩充; 可裁减性。可根据实际需要进行内核裁减,减小代码体积; 使用成本低。免费软件,只要遵守g p l ( g n ug e n e r a lp u b l i c l i c e n s e ) 的规定,就可以免费获得,并进行开发和商业发行; 强大的网络功能。具备完整的t c p i p 协议栈,同时支持大 量的其他网络协议; 丰富的开发技术资源。由于是g n u 的一个开源项目,越来越 多的人加入其中,使得c 1 i n u x 有一个庞大的支持者群体, 很多开发资源都可以通过i n t e r n e t 免费获得。 西南交通大学硕士研究生学位论文第1 l 页 i c l i n u x 本身带有n e 2 0 网卡驱动代码和相当完整的i d e 驱动 代码,本设计中基于“c l i n u x 实现以太网和i d e 的设备驱动程序,单 独编写u s b ( d e v i c e ) 设备驱动程序,并基于“c l i n u x 编写p c 机通过 u s b 接口控制跑马灯和数码管的应用程序,作为u c l i n u x 操作系统下 设备驱动程序和应用程序编写的实例。操作系统部分软件结构图如 下: 图2 3操作系统部分软件蛄构图 以下各章节分别讨论上述系统方案的具体实现。 西南交通大学硕士研究生学位论文第1 2 页 第3 章硬件平台设计 3 1c p u 系统核心设计 本实验开发平台的系统核心是一颗韩国三星电子生产的 s 3 c 4 4 b o x 微处理器( 最大工作时钟频率6 6 m h z ) 。为手持设备和一般 应用提供了高性价比和高性能的微控制器解决方案。 s 3 c 4 4 b o x 的杰出特性是它的c p u 核,是由a r m 公司设计的1 6 3 2 位a r m 7 t d m ir i s c ( 精简指令集计算机) 处理器。它包括了t h u m b 代码 压缩器,一个片上的i c e 断点调试支持和一个3 2 位的硬件乘法器。 s 3 c 4 4 8 0 x 提供了丰富的内置部件,通过提供全面的、通用的片 上外设,大大减少了系统中除处理器以外的元器件配置,从而使系 统的成本大大降低。s 3 c 4 4 8 0 x 集成的各种片上功能如下1 ; 2 5 va r m 7 t d m i 内核,带有8 k bc a c h e ; + 可选的内部s r a m ; + l c d 控制器( 最大支持2 5 6 色s t n ) ; 2 通道u a r t ; l 通道s 1 0 : 2 个通用d m a ; 2 个外设用d m a ,具有外部请求弓l 脚; 外部存储控制器; 5 个p w m 定时器和1 通道内部定时器; 看门狗定时器; 7 1 个通用i o 口: 8 个外部中断源; 具有日历功能的r t c ; 8 通道1 0 位a d c : + 1 个i i c 总线控制器; 西南交通大学硕士研究生学位论文第1 3 页 1 通道i i s 总线控制器; 片上p l l 时钟产生器,使处理器工作时钟最大达到6 6 m h z 。 s 3 c 4 4 b o x 结构h 1 如图3 1 所示: 圉3 一ls3 c 4 4 b o x 蛄构图 s 3 c 4 4 b o x 共有1 6 0 只引脚,采用q f p 封装。 s 3 c 4 4 b o x 的主要控制引脚信号描述如下: n g c s 7 :0 :芯片选择,当存储器地址在相应段的地址区域 时被激活; o m 1 :0 :设置s 3 c 4 4 b o x 测试模式和确定n g c s o ( 自举 西南交通大学硕士研究生学位论文第1 4 页 r o m b a n k o ) 的总线宽度,逻辑电平在复位期间由这些管脚的 上拉下拉电阻确定。0 0 :8 位:o l :1 6 位:1 0 :3 2 位;1 1 :测试 模式:本设计外接l m x l 6 b i t sf l a s h ,使用1 6 位模式; n w e ;写允许信号,指示当前的总线周期为写周期; n o e :读允许信号,指示当前的总线周期为读周期; e n d i a n :确定数据类型是小端大端模式,逻辑电平在复位 期间由该管脚的上拉下拉电阻确定。o :小端;l :大端;本设 计中采用小端模式; n r e s e t :复位信号,n r e s e t 挂起程序,让s 3 c 4 4 b o x 进复位 状态。在电源打开已经稳定时,n r e s e t 必须保持低电平至少 4 个m c l k 周期; + o m 3 :2 :确定时钟模式。0 0 :c r y s t a l ( x t a l 0 ,e x t a l 0 ) ,p l l o n ;0 1 :e x t c l k ,p l lo n ;1 0 、1 1 :芯片测试模式;本设计采 用第一种模式,外接1 0 m h z 晶振,内部倍频到6 0 l l l h z : e x t c l k :当0 m 3 :2 选择外部时钟时的外部时钟输入信号线, 不用时必须接高电平( 3 3 v ) 。本设计中上拉接3 3 v ; x t a l o 、e x t a l 0 :系统时钟内部振荡电路的晶振输入输出脚, 本设计中接1 0 m h z 晶振; p l l c a p :接系统时钟的环路滤波电容( 7 0 0 p f ) ; x t a l l 、e x t a l l :r t c 时钟的晶体输入脚,本设计中接 3 2 7 6 8 k h z 晶振; c l k o u t :时钟输出信号; n t r s t 、t m s 、t c k 、t d i 、t d o :j t a g 接口弓i 脚。n t r s t 、t m s 、 t c k 、t d i 均须连接一个1 0 k q 上拉电阻;引出后作为调试 端口: 注:引脚标号中的小写字母n ,表示该引脚信号低电平有效。 s 3 c 4 4 b o x 的其余引脚为电源线、接地线、数据总线、地址总线 以及其他功能模块的输入输出线,具体连接参见其他接口电路。 西南交通大学硕士研究生学位论文第1 5 页 3 2 接口电路设计 3 2 1 电源电路与复位电路 3 2 1 1 电源电路 系统需要使用2 5 v 、3 3 v 和5 v 直流电源,其中,s 3 c 4 4 b o x 内 核使用2 5 v 电源,s 3 c 4 4 8 0 x 的i o 口、m a x 3 2 3 2 c 、p d i u s b d l 2 、l c d 接口和m p 3 扩展板等器件使用3 3 v 电源,r t l 8 0 1 9 a s 、p s 2 接口、 l c d 接口等器件使用5 v 电源。为简化系统电源电路的设计,要求整 个系统的输入电压为高质量的5 v 直流电压电源。系统电源电路如下 图所示: 直流5 v 电源输入s v 侠电 禹3 2系统电豫电路 3 2 1 2 复位电路 系统复位电路主要完成系统上电复位和系统运行时的按键复位 功能。复位电路采用简单的r c 电路构成3 ,经验证,其复位逻辑可 靠。复位电路如下图所示; 躅3 3位电路 西南交通大学硕士研究生学位论文第1 6 页 复位电路工作原理如下:系统上电时,通过电阻向电容充电, 当电容两端电压未达到高电平的门限电压时,n r e s e t 输出低电平, 系统处于复位状态:当电容两端电压达到高电平的门限电压时, n r e s e t 输出高电平,系统进入正常工作状态。 r e s e t 按钮按下时,电容两端电荷被泻放掉,n r e s e t 输出低电 平,系统进入复位状态,再重复以上的充电过程,系统进入正常工 作状态。 通过调整电阻和电容的参数,可调整复位延时时间。本设计中 使用1 0 k q 电阻和1 0 f 电容,复位延时1 0 0 m s 左右。 3 2 2 存储系统设计 3 2 2 1s 3 c 4 4 8 0 x 的存储系统 a r m 体系结构将存储嚣看作是从零地址开始的字节的线性组合。 从零字节到三字节放置第一个存储的字数据,从第四个字节到第七 个字节放置第二个存储的字数据,依次排列。作为3 2 位的微处理器, a r m 体系结构所支持的最大寻址空间为4 g b ( 2 32 字节) 。 a r m 体系结构可以用两种方法存储字数据,称之为大端格式和小 端格式n ,具体说明如下: 大端格式: 在这种格式中,字数据的高字节存储在低地址中,而字数据的低 字节则存放在高地址中,如图3 4 所示: 高地址 低地址 3 l2 42 31 61 5870 891 01 1 4567 ol23 8 4 0 3 2 位字地址 圈3 - 4以太端格式存储宇数据 小端格式: 与大端存储格式相反,在小端存储格式中,低地址中存放的是字 数据的低字节,高地址存放的是字数据的高字节。如图3 5 所示; 西南交通大学硕士研究生学位论文第1 8 页 b 8 n k o 是系统自举r o m 存储体,所以必须在访问r o m 之前定义 b a n k o 的总线宽度。通过o m 1 :0 来配置b a n k o 的总线宽度。其他存 储体的总线宽度只能在系统复位后由程序进行设定,由地址为 0 x 0 1c 8 0 0 0 的特殊寄存器b w s c o n 的相应位决定。 在本系统中,b a n k o 上接l m b 的f 1 a s h ,用来放置系统b 1 0 s 及操 作系统和应用程序,系统上电后,p c 指针自动指向b a n k 0 的第一个 单元开始执行。 用一片8 m b 的s d r a m 作为系统内存,接在b a n k 6 上。如果同时使 用b a n k 6 b a n k 7 ,则要求连接相同容量的存储器,而且其地址空间在 物理上是连续的。 本设计中s 3 c 4 4 b o x 的存储体分配情况如图3 7 所示: 图3 _ 7实验开发平台中的s3 c 44 bo x 存储体分配图 3 2 2 2f l a 3 h 存储器接口电路 f l a s h 存储器具有低功耗、大容量、擦写速度快、可整片或分扇 区在系统编程( 烧写) 、擦除等特点,因而在各种嵌入式系统中得到 了广泛的应用。 西南交通大学硕士研究生学位论文第1 9 页 系统中用了一片s s t 3 9 v f l 6 0f l a s h 存储器,其单片存储容量为 1 6 m 位( 2 m 字节) ,工作电压为2 7 v 一3 6 v ,1 6 位数据宽度。s s t 3 9 v f l 6 0 仅需单3 v 电压即可完成在系统的编程与擦除操作通过对其内部的 命令寄存器写入标准的命令序列,可对f l a s h 进行编程( 烧写) 、整 片擦除、按扇区擦除以及其他操作。 f 1 a s h 存储器在系统中通常用于存放程序代码,系统上电或复位 后从此获取指令并开始执行,因此,应将存有程序代码的f 1 a s h 存 储器配置到r o m s r a mb a n k o ,即将s 3 c 4 4 8 0 x 的n g c s o 引脚接至 s s t 3 9 v f l 6 0 的n c e 弓l 脚。 s s t 3 9 v f l 6 0 的n o e 引脚接s 3 c 4 4 b o x 的n 0 e 引脚; n w e 弓i 脚接s 3 c 4 4 b o x 的n w e ; 由于s s t 3 9 v f l 6 0 的数据宽度是1 6 位,所以将s 3 c 4 4 8 0 x 的引脚 o m l 接地,0 m 0 上拉接+ 3 3 v ,使其工作在1 6 位模式;将s s t 3 9 v f l 6 0 的地址总线a 1 9 ,a o 与s 3 c 4 4 b o x 的地址线a d d r 2 0 a d d r l 相连; 1 6 位数据总线d q l 5 。d q o 与s 3 c 4 4 8 0 x 的低1 6 位数据总线d a t a 1 5 d a t a o 相连。 f l a s h 的地址空间为o x 0 0 0 0 0 0 0 0 0 x 0 0 1 f f f f f 。 f 1 8 s h 连接电路图如图3 8 所示: 上拉 下拉 ii :| 薹s 3 翻时托_ 蠹、。 i ;誓_ 。;:纛j 鬈誊i i 舞i 二:= :;| j一:“、i 。+ i 蔓董i i 勰9 熙魁l : 舔蘸i 蠹:;璧慧磐嘿 9 f :l l l 眦i | 薹;! :晌鹪酶 i 誊:; | i 豫i 。;一i ii :哟g 量1 。薯一i _ :_ 黼苦 i 。曩。_ _ 。 。i | ;i i j 萋薯叠一! ,1 :薹。i 豢曼兰: 图3 8f las h 连接电路圉 冀_ s s = 9 v 鄹鲫曩 黛誊毒叠;i l 薯_ j 、。毫:碧i 暮i 事。叠 醚掬龇。誊。薯 ;黛翎i :i i i 蛳ii ! i i :i i 。7 鎏。| 椰e e 囊j 赫囊- - = 蕞 ;鳓誊i i ! :j i i :i 藕w 邑i j 嚣= | 蕊 。j = ;| o 崔崩i 一_ ;1 i i :i j 麓i :i 曩:r :_ - j = = 、- - ! + 3 2 2 3 s d r a m 存储器接口电路 s d r a m 在系统中主要用作程序的运行空间,数据及堆栈区。当系统 西南套通太雯镪主研究生学豢萄争 虱g 薹潦 塞鬈需塑妻蓄嚣趔燮羹嚣;篷瑟酐;哺 磁翌嚣嘴舀。掣裂妥藩 努铂j 墨b 耋| l i 妻星搿鞭圆峨墨嚣鐾囊秘! 萋耄理季茕烈蓉! 脊爸塞章摹 塞鎏荔拯蕃萋謇型l 蔼蓬巍嚣鐾蘸t 9 耋烈;童季耋:鋈娶| 霎委耋瓢 i i h ln ; j ;f ¥l j | 部篓霜! i ;稗簧v l l ,薹薹i | 登捡氇蠹稀7 h v | 一 l ;囊;鲢叫耋萋薹主滔j - lo ;i ;l ;型籀勰! 茎;驯溺莓i i 箩l 荦攀 耍囊垂鬟喜譬;i ;薹乏。 窭。雾。鬟播爨羹蟊矍 i 。写薹雾i g 1 | g 搿停 塔囊舶群萎鞲磐8 蓦l 雩i i 夔;拦鋈:强醒霆l 茎| i 匡 ”州鏊艘曦 嘴制睡囊蓄套萼i l | _ 嬲爿鳇蓉l 粮拍j 如;l 崖! 酣剁苫晒确艄 j 量。;l ;增测; ;室。i 量蠢委1 2 嚣鞋塾! 冀赛餮鳃鞫耄;i 一0 诂曛;篾基曩,霾7 董6 羹翥j ! | 耋一;叁 鐾i 冬袁宁。较爱可同薰i 姜峨复羹蠢目| 重ji 垂薹;| ;拿一 鑫霪囊网照剧澄硼囊琶 x 西南交通大学硕士研究生学位论文第2 3 页 校验,将结果与帧尾的c r c 比较,如不同,该帧数据将被拒收,在 发送时c r c 对帧数据产生c r c ,并附加在数据尾传送;地址识别逻辑 对接收帧的目的地址与预先设置的本地物理地址进行比较,如不同 且不满足广播地址的设置要求,该帧数据将被拒收;f i f o 逻辑对收 发的数据作1 6 个字节的缓冲,以减少对本地d m a 请求的频率。 3 工作方式 r t l 8 0 1 9 a s 有3 种工作方式: 第一种为跳线方式,网卡的i 0 基址和中断由跳线决定: 第二种为即插即用方式; 第三种为免跳线方式,后两种方式网卡的i o 和中断由外按的 e p r o m 里的内容决定。 网卡使用哪种方式由r t l 8 0 1 9 a s 的第6 5 脚j p 决定。当j p 脚为 低电平时,8 0 1 9 工作在第2 种或第3 种方式;接高电平时,工作在 第一种方式。本设计中使用第一种跳线方式。 当工作在跳线方式时,芯片的i 0 地址由引脚1 0 s 3 一i o s 0 决定, 如下表所示: 表3 一li ,o 基址与引脚美拳表 i 臻j 蠹醚葛冀i 簇鬟i 虢磷鍪骧蠢黼巍谶豢鬻瓣鬻褥黼萏漱l嚣臻潍舔霉麓 0 o 003 0 0 h 0o013 2 0 h 0o1o3 4 0 h 0ol13 6 0 h 10o03 8 0 h 1oo13 a o h lo 103 c o h l0113 e o h o10o2 0 0 h o1o12 2 0 h o1l02 4 0 h 01 1 12 6 0 h 1lo o2 8 0 h 11 ol2 a o h l1 102 c o h ll1l2 e o h 西南交通大学硕士研究生学位论文第2 5 页 困3 12 以太网接口电路囤 3 2 5u s b 接口电路 p h i l i p s 公司生产的p d i u s b 叭2 是一个性能优化的u s b 设备器 件,通常用于基于微控制器的系统并与微控制器通过高速通用并行 接口进行通信,也支持本地d m a 传输。p d i u s b d l 2 完全符合u s b l 1 规范,也能适应大多数设备类规范的设计,如成像类、大容量存储 类、通信类、打印类和人工输入设备等,因此,p d i u s b d l 2 非常适 合做很多外围设备。 其内部功能结构佃1 如图3 1 3 所示: 6 m h z 图3 13p d i u s b d l2 内部功能框图 回。圈。圉 西南交通大学硕士研究生学位论文第2 6 页 模拟收发器:集成的收发器接口可通过终端电阻直接与u s b 电缆相连; 电压调整器:片内集成了一个3 3 v 的调整器用于模拟收发 器的供电。该电压还作为输出连接到1 5 k q 的上拉电阻: p l l 锁相环:片内集成了6 m h z 一4 8 m h z 时钟乘法p l l ,这样 就可使用低成本的6 m h z 晶振,e m i 也随之降低。p l l 的工 作不需要外部元件; 位时钟恢复:位时钟恢复电路使用4 x 过采样规则,从进入 的u s b 数据流中恢复时钟,能跟踪u s b 规定范围内的抖动 和频漂 p h i l i p s 串行接口引擎( p s i e ) :实现了全部的u s b 协议层, 且完全由硬件实现而不需要固件参与; s o f t c o n n e c t :与u s b 的连接是通过1 5 k q 上拉电阻将 d + ( 用于高速u s b 器件) 设置为高实现的。1 5 k q 上拉电阻集 成在片内,默认状态下不与v c c 相连。s o f t c o n n e c t 是 p h i l i p s 半导体一项尚未获批准的专利技术; + 存储器管理单元和内部r a m :在以1 2 m b s 的速率传输并与 微控制器并口相连时,m m u 和集成r a m 作为u s b 之间速度差 异的缓冲区。这就允许微控制器以其自己的速率对u s b 信 息包进行读写; 并行和d m a 接口;一个普通的并行接口定义成易于使用、 快速而且可以与主流的微控制器直接连接的接口。对一个 微控制器而言,p d i u s b d l 2 看起来就像一个带8 位数据总线 和一个地址位的存储器件。p d i u s b d l 2 支持主端点与本地共 享r a m 之间直接读取的d m a 传输。 本设计中p d i u s b d l 2 数据总线d 7 一d o 与1 i ;【c u 数据线d a t a 7 。d a t a o 相连,地址线a 0 与m c u 地址线a d d r o 相连,中断i n t 选择m c u 外部 中断e x i n t 0 ,片选n g c x 西南交通大学硕士研究生学位论文第2 7 页 3 2 6p s 2 键盘接口 晤磊习 r 可- 叫i ic o n n e c 时l l :一 囵o - 田3 一l u s b 接口电路困 p s 2 设备接口用于许多现代的鼠标和键盘,它是由i b m 开发并 且最初出现在i 阴技术参考手册里。物理上的p s 2 端口是两类连接 器中的一种:5 脚的d i n 或6 脚的m i n 卜d i n 。常见的是p c 机上的6 脚的m i n i d i n ,只使用其中的1 、3 、4 、5 脚,分别为数据、电源地、 电源+ 5 v 、时钟,2 、6 脚保留n ”。p s 2 鼠标和键盘履行一种双向同 步串行协议。抉句话说,每在数据线上发送一位数据并且每在时钟 线上发一个脉冲就被读入。 本设计中目前只开发了键盘驱动程序,将数据线和时钟线分别 连接到s 3 c 4 4 b o x 的两路外部中断引脚e x i n t 6 、e x i n t 7 。多功能复用, 既可以设为中断,又可以设为i 0 ,非常适合作为p s 2 连接。电路 连接图如图3 1 5 所示: 西南交通大学硕士研究生学位论文第2 8 页 s 3 c 4 4 b o e x i n t 6 e x i 阿r 7 同磊翮 l | - d l nl c o n n e c i o rl 【一 图3 一l5p s ,2 接口电路 p s 2 设备的数据线和时钟线都是集电极开路的,平时保持高电 平,在主板上经上拉电阻接+ 5 v 。 3 2 。7l c d 接口电路 s 3 c 4 4 b o x 内置的l c d 控制器可以支持规格为每像素2 位( 4 级灰 度) 或每像素4 位( 1 6 级灰度) 的黑白l c d 。也可以支持每像素8 位( 2 5 6 级颜色) 的彩色l c d 屏。l c d 控制器可以通过编程支持不同l c d 屏的 要求。 l c d 控制器的主要的工作,是将定位在系统存储器中的显示缓冲 区中的l c d 图像数据传送到外部l c d 驱动器。 l c d 控制器的主要特性如下: +支持彩色灰度黑白l c d 屏: +支持3 种显示类型l c d 屏:4 位双扫描,4 位单扫描,8 位 单扫描显示类型; 支持多种虚拟显示屏; 采用系统存储器作为显示缓冲区存储器; 专门的d m a 操作用于支持图像数据的获取; 支持多种屏幕大小;典型的屏幕尺寸:6 4 0 4 8 0 ,3 2 0 2 4 0 , 1 6 0 1 6 0 : 支持黑白,4 级灰度和1 6 级灰度: 支持s t n 型2 5 6 级色彩l c d 显示屏; 支持低功耗模式。 l c d 控制器内部结构n 2 1 框图如图3 1 6 所示: 西南交通大学硕士研究生学位论囊 笔囊羹薹墼蒿 囊乔 ¥霉霎i l 蠢薛囊:肇 薹赛! l 薹蠢_ 2 萋蕈耋鍪粪羹薹 酗蛳霉翼甬争嘉遵i 菱g 裴;尊i 蕊能与各量耋 类型丽审右矫r 设接雾 暖秘;薹? ! 琴耋翼瑟甬瑚捌螭嗡型i 霪l s p 醵鬟赣剥箱档苗i ;羹释 琴鬟 麓魁置暑爹i 坠霾| 蚕l ; ;驰爹f 如中断模式建内噶冀; 甾潜寮臻蕊i 羁翻或 外部时钟源) 等功能。 s i o 数据寄存器s 1 0d a t 是一个8 位的s i o 数据寄存器,用于存 放要发送的数据或已接收的数据。 s 1 0 波特率预定标器寄存器s b r d r 确定s i o 的波特率: s i o 波特率= 醯e l k2 ( s b r d r 寄存器值+ 1 ) s 1 0 间隔计数寄存器iv t c n t ,在自动运行模式下,每传送8 位 数据插入一个时间间隔: 时间间隔= m c l k 4 ( i v t c n t 十1 ) s i o 模块编程步骤如下:配置i 0 脚( s 1 0 t x d ,s i o c l k ,s i o r x d ) ; 设置s i o c o n 为适当的配置; x 西南交通大学硕士研究生学位论文第3 1 页 3 2 9l d e 硬盘接口 i d e 所代表的含义是集成磁盘电路设备( i n t e g r a t e dd i s k e 1 e c t r o n i c s ) 。i d e 的另一个很流行的名字叫做a t 总线接口,这是 因为它在驱动器的集成电子方面模仿了i b ma t 计算机的硬盘控制 器。实际上,i d e 接口的正式名字是a t a t t a c h m e n t ( a t a ) “”。 根据a t a 标准,i d e 主要接口信号描述如下: n c s o :该信号用来选通命令寄存器组: n c s l :该信号用来选通控制寄存器组: d a o d a 2 :配合n c s o 和n c s l 分别选通命令寄存器组和控制寄存 器组中的一个寄存器; n d a s p :当系统启动或复位后,磁盘驱动器会立即插入该信号以 表明它的存在。当系统正常工作时,该信号表明选通的磁盘驱动器 正在工作; d d o d d l 5 ;用来向寄存器组和磁盘驱动器传输数据; n d i o r 和n d l o w :这两个信号是对磁盘驱动器的寄存器进行读写 时的一对问答握手信号; d 姒r q 和n d m a c k :这两个信号是在主机和磁盘驱动器之间传输数据 时的一对握手信号。因为d m a 是可选的,所以这些信号业是可选的; i n t r q :该信号是主 x 西南交通大学硕士研究生学位论文第3 4 页 s 3 c 4 4 8 0 x m p 3 扩展板 复位信号复位信号 g p a 9 x r e s t 1 0 针插座 同步信号 m p 3 接口 同步信号 g p b 4一 一 b s y n c 片选 片邂 剥嚣1 g p b 5 x c s 串行发送 1 0 - d l nm p 3 s 1 0 1 如 i 九t e r f a c e 串行接收 s i j 串行接收数据请求 s i o r x c d r e 0 时钟输出 时钟祯 s i o c l h s c l k v s l 0 1 1 b 图3 22m p3 接口连接图 r t c 时钟电路:s 3 c 4 4 8 0 x 的内置r t c 通过x t a l l 和e x 丁a l l 外接 3 2 7 6 8 k h z 晶振,引脚v d d r t c 接板上+ 3 3 v 电源和+ 3 v 纽扣电池正级。 外部按链:引脚n r e s e t 接复位按键,低有效:外部中断引脚 e x i n t 4 、e x i n t 5 分别接两个外部中断按键,低有效。 数码管:7 段带一位小数点共阳极数码管,经芯片7 4 h c 2 4 4 缓冲 与s 3 c 4 4 8 0 x 的通用i 0 相连。i 0 引脚g p e 7 一g p e 4 、g p f 3 一g p f 0 分别 控制数码管的a c 、小数点、d e 。 跑马灯:s 3 c 4 4 8 0 x 的i o 引脚g p c 3 g p c l 经反向器各接一路l e d , 组成跑马灯。 蜂鸣器;s 3 c 4 4 b o x 的i 0 引脚g p e 3 经反向器接蜂鸣器负极,控 制器发声。 以上设计可参考文献【1 5 1 6 。 3 3p c b 设计 在系统中,s 3 c 4 4 b o x 的工作频率为6 0 m h z ,考虑到系统稳定性, 西南交通大学硕士研究生学位论文第3 5 页 应尽量采用多层板。但考虑到成本问题,所以本设计中使用的是双 层板,因此,设计中应遵循一些高频电路的设计基本原则,否则系 统工作不稳定,甚至无法工作。具体应注意以下方面“叫”1 : 1 电源分配 实际的工程应用和理论都证实,电源的分配对系统的稳定性有 很大的影响,因此,在设计印刷电路板时,要注意电源的分配问题。 在印刷电路板上,电源的供给一般采用电源总线( 双层板) 或电 源层( 多层板) 的方式。电源总线由两条或多条较宽的线组成,为减 小直流电阻,在双层板布线的过程中,应使电源线宽些。另外,地 线也应该尽可能的宽,本设计使用整块敷铜。 2 噪声过滤 无论使用怎样的电源分配方案,整个系统都会产生噪声,额外 的过滤措施是必要的。一般应在电源进入印刷电路板的位置和靠近 各器件的电源引脚处加上滤波器,以消除电源的噪声。这一任务由 旁路电容完成。 旁路电容就是过滤器。放在电源接入端的大电容( 一般几十到几 百微法) ,用来过滤板子产生的低频噪声:在器件的电源引脚和地线 引脚之间放置的小电容( 一般o 0 1 旷一o 1 f ) ,用来滤除元器件工作 时产生的高频噪声。 3 布线策略 采用正确的布线策略可以提高系统稳定性。采用平等走线可以 减少导线电感,但导线之间的互感和分布电容增加,如果布局允许, 最好采用井字形网状布线结构,具体做法是印制板的一面横向布线, 另一面纵向布线,然后在交叉孔处用金属化孔相连。为了抑制印制 板导线之间的串扰,在设计布线时应尽量避免长距离的平等走线, 尽可能拉开线与线之间的距离,信号线与地线及电源线尽可能不交 叉。 本设计中遵循以上几点,系统工作在6 0 m h z 下比较稳定可靠。 西南交通大学硕士研究生学位论文第3 6 页 第4 章b | o s 及底层驱动程序设计 嵌入式系统实验开发平台是一个特殊的嵌入式系统,是为使用 者提供一个实验开发的平台,而不是用于某种特定用途的专用设备, 因此可以说是一个通用平台。正是由于这种特殊性,嵌入式系统实 验开发平台的b 1 0 s 除了应完成硬件初始化和引导操作系统的功能 外,还应当具备较完备的接口驱动程序,完成诸如串口通讯、以太 网下载等通讯功能,为使用者提供一个具有可操作性的、使用方便 的基本平台,使其能够基于b i o s 完成人机交互、程序下载和一些基 本的接口实验和测试。 4 1b i o s 程序结构及流程 本设计中b 1 0 s 程序主要包括硬件初始化程序、底层驱动程序、 系统管理程序、系统功能程序,具体结构图参见图2 2 。 其流程实现如下: 系统上电后,m c u 从f l a s h 中开始执行代码,完成工作模式 初始化、中断初始化、时钟控制初始化、工作频率初始化、 存储器控制初始

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论