嵌入式系统及应用课程设计说明书格式范文.doc_第1页
嵌入式系统及应用课程设计说明书格式范文.doc_第2页
嵌入式系统及应用课程设计说明书格式范文.doc_第3页
嵌入式系统及应用课程设计说明书格式范文.doc_第4页
嵌入式系统及应用课程设计说明书格式范文.doc_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

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

文档简介

山东建筑大学信电学院课程设计说明书山东建筑大学课 程 设 计 说 明 书题 目: 基于ARM的输入输出显示系统课 程: 嵌入式系统及应用课程设计院 (部): 信息与电气工程学院专 业: 电子信息工程班 级: 电信072学生姓名: 韩海军学 号: 2007081228指导教师: 高焕兵完成日期: 2010年9月10目 录摘要II1设计目的12设计要求13设计内容13.1原理结构分析13.2电源电路23.3晶体振荡电路33.4复位电路33.5存储模块43.6JTAG接口电路63.7输入/输出电路63.8初始化程序设计7总结与致谢9参考文献10摘 要S3C4510B是SAMSUNG公司生产的基于ARM7TDMI的RISC微处理器,主频可达50MHZ。液晶显示是嵌入式系统中反映系统输入/输出的人机交互界面,液晶显示以其微功耗、体积小、显示内容丰富、模块化,接口电路简单等诸多优点得到广泛应用。利用S3C4510B的通用I/O口来控制液晶显示屏的软硬件方法,实现了与LCD控制模块一样的功能。本文介绍基于S3C4510B型ARM微处理器的输入输出显示系统的构建,并给出系统外围相关器件的选型。利用S3C4510B的通用I/O口,采用串行方式控制液晶模块显示的方法。并给出了S3C4510B与LCD模块的硬件连接图和显示程序的部分原代码。关键词: ARM;I/O口;LCD显示;输入;输出1 设计目的根据所学ARM知识,设计出基于ARM的输入输出显示系统。将输入的信号送入主控芯片,经处理后送到显示系统显示。2 设计要求设计几个输入端口如键盘、按键、温度采集、压力采集等将所采集信号送入主控芯片,经过处理后送到显示系统显示。根据设计题目的要求,选择确定ARM芯片型号、信号采集芯片型号,完成系统硬件设计和程序设计。3 设计内容3.1原理结构分析 ARM最小系统是由保证微处理器可靠工作所必须的基本电路组成的。S3C4510B的最小系统由S3C4510B、电源电路、晶体振荡器电路、复位电路和JTAG接口电路组成。在系统ARM模块主要负责系统控制部分,其硬件体系结构灵活、接口丰富。核心包括嵌入式ARM CPU及必需的SDRAM和Flash等器件,通过表贴封装的双排插针将各信号线及控制线引出。这样,只需要设计不同的扩展板即可实现不同的系统功能,节约了开发成本并提高了平台的灵活性。嵌入式系统硬件平台结构主要分为2大部分:一部分为系统主板,为基于ARM的最小系统,包括ARM CPU、Flash、SDRAM、串口、键盘等最基本部分;另一部分为系统扩展板,提供了用于完成各个不同硬件的功能模块。电源电路输入电压5V,经过变换给嵌入式微处理器提供3.3V的电压晶振电路10MHz有源晶振经过倍频分别为ARM核提供166MHz的时钟频率微处理器ARM-CPU,系统的工作和控制中心Flash存放嵌入式操作系统、用户应用程序或其他在系统掉电后需要保存的数据SDRAM系统代码的运场所串口系统与其他应用系统的短距离双向串行通信JTAG通过接口可对系统进行调试、编程等3.2 电源电路在系统中,S3C4510B及部分外围器件需3.3V电源,另外,部分器件需要5V电源,为简化系统电源电路的设计,要求整个系统的输入电压为 5V直流稳压电源。并得到可靠的3.3V电压,因此选用的变换器要满足以上条件,电源电路如图所示。3.3晶体振荡器电路 晶振电路用于向CPU及其它电路提供工作时钟。为了获得稳定的运行环境,将S3C4510B的CLKSEL置为高电平,即外部时钟输入直接作为系统时钟。根据S3C4510B的最高工作频率选择50MHz的有源晶振,不同常用的无源晶振,有源晶振的接法略有不。有源晶振的4脚接3.3V电源,1脚悬空,2脚接地,3脚为晶振的输出,晶振的输出端接一个小电阻(22欧姆),对时钟信号去尖峰。该电路用于向S3C4510B和其他电路提供工作时钟。鉴于有源晶体振荡器在工作可靠性和精度上都要优于无源晶体振荡器,故在系统中使用了有源晶体振荡器。根据S3C4510B的最高工作频率及PLL 电路的工作方式,选择10MHz的有源晶体振荡器,其频率经过S3C4510B内部PLL电路倍频后,最高可达50MHz。内部PLL电路兼有频率放大和信号提纯的功能,因此,系统可以以较低的外部时钟信号获得较高的工作频率。晶振电路如图所示。3.4复位电路复位电路可由简单的RC电路构成,也可使用其它的相对复杂,但功能更完善的电路。该电路主要完成系统的上电复位和系统运行时用户的按键复位功能,有助于用户调试程序。复位电路如图所示。 3.5 存储模块 1、FLASH:目前市面上主要有两种类型的FLASH芯片,即NOR Flash和NAND Flash。Intel公司1988年提出了NOR Flash芯片技术,NOR Flash接口简单,使用独立的地址和数据线,具有快速的随机访问速度,但由于其结构限制,通常在小容量时才肯有明显的成本优势,嵌入式系统中通常使用NOR Flash来存储容量较小的程序的启动代码。本平台使用SST39VF160 Flash存储器,SST39VF160是16M位的Flash存储器。工作电压为2.7V3.6V,采用48脚TSOP封装或48脚FBGA封装,16位数据宽度,可以以8位(字节模式)或16位(字模式)数据宽度的方式工作。SST39VF160仅需3V电压即可完成在系统的编程与擦除操作,通过对其内部的命令寄存器写入标准的命令序列,可对Flash进行编程、整片擦除、按扇区擦除以及其它操作。本设计中与FLASH连接的引脚为ADDR21:0、XDATA31:0、nRCS0、nOE、nWBE0、nRESFT。Flash存储器在系统中通常用于存放程序代码,系统上电或复位后从此获取指令并开始执行,因此,应将存有程序代码的Flash存储器配置到ROM/SRAM/Flash Bank0,即将S3C4510B的nRCS(Pin75)接至SST39VF160的CE#端。注意,此时应将S3C4510B的B0SIZE1:0置为“10”,选择ROM/SRAM/Flash Bank0为16位工作方式。2、SDRAM:系统设计中S3C4510B与SDRAM连接的引脚为ADDR21:0、XDATA31:0、nSDCS0、nDWE、nSDRAS、nSDCAS、nWBE0、nWBE1、 SDCLK、CKE。S3C4510B支持16位或32位的SDRAM。在S3C4510B中,可以通过寄存器设置,改变任一存储器组在编址空间里的地址映射。SDRAM是非线性结构的存储器,通过行、列地址寻址,内部采用组加阵列的寻址方式寻址。SDRAM与SDROMFLASH3.6 JTAG接口电路JTAG(Joint Test Action Group联合测试行动小组)是一种国际标准测试协议,主要用于芯片内部测试及对系统进行仿真、调试,JTAG技术是一种嵌入式测试技术。通过JTAG接口可对芯片内部的所有部件进行访问,是开发调试嵌入式系统的一种简洁高效的手段。它有2种连接标准,即14针接口和20针接口。此处选择14针接口的标准。JTAG接口电路如图所示。 3.7 输入/输出电路 S3C4510B提供了18个通用输入/输出接口(简称为GPIO),其中部分GPIO口还可以通过寄存器配置为其他功能。通过寄存器,可以设置GPIO口为输入或输出模式,在输出模式下还可以设置输出电平的高低。GPIO口811是多功能口,可作为普通GPIO口使用,也可以作为外部中断的输入引脚,通过寄存器IOPCON进行设置,按键电路连接在处理器的GPIO口811,可用作外部中断输入。处理器的输入输出口可以通过连接串并转换芯片来实现对数码管等的控制,从而实现显示输出的功能。3.8 初始化程序设计以下程序为系统设计中的ARM初始化程序,使用汇编语言书写。以及C语言书写的显示主程序。ARM初始化汇编语言部分:IOPMOD EQU 0x3FF5000 ;定义IO口模式寄存器IOPDATA EQU 0x3FF5008 ;定义IO口数据寄存器 IMPORT Main AREA Init,CODE,READONLY ENTRY LDR R0, =0x3FF0000 LDR R1, =0xE7FFFF80 ;配置SYSCFG,片内4Kcache,4KSRAM STR R1, R0 LDR SP, =0x3FE1000 ;SP指向SRAM的尾地址,堆栈向下生成 LDR R0, =0X3FF5000 LDR R1, =0X000002A8 ;设置IO3,IO5,IO7,IO9为输出模式 STR R1,R0 BL Main B . ENDC语言部分:几个主要的子函数。#include typDef.h #define IOPMOD (*(volatile unsigned *)0x03FF5000)#define IOPDATA (*(volatile unsigned *)0x03FF5008) /*定义子函数如下*/void clr_lcd_rst(void) IOPDATA &=0XFDFF; 清零复位引脚void set_lcd_rst(void) IOPDATA |=0X0200; 置位复位引脚void clr_lcd_sclk(void)IOPDATA &=0XFFF7; 时钟端置低void set_lcd_sclk(void)IOPDATA |=0X0008; 时钟端置高void clr_lcd_sid(void)IOPDATA &=0XFF7F; 串行输出数据0void set_lcd_sid(void)IOPDATA |=0X0080; 串行输出数据1void clr_lcd_cs(void)IOPDATA &=0XFFDF; 清零使能端void set_lcd_cs(void)IOPDATA |=0X0020; 置位使能端void print_led_p0(void)IOPDATA |=0X0001; 使led0亮void print_led_p1(void)IOPDATA |=0X0002; 使led1亮void off_led_p0(void)IOPDATA &=0XFFFE; 使led0灭/*lcd初始化部分*/void Init_lcd(void)set_lcd_rst();delay(4);write_lcd(0,0x01); 清除显示delay(4);write_lcd(0,0x0c); 显示状态设置delay(4);write_lcd(0,0x30); 设置为8位控制接口delay(4); 总结与致谢本次设计设计的系统具有内容广泛的特点。通过本次课程设计,使我对ARM的掌握和理解,巩固了我在嵌入式系统开发技术课程中所学的基本理论知识和实验技能,使我对嵌入式系统开发技术课程有了更深入的了解进一步激发了我对所学专业学习的兴趣。在设计的过程和设计说明书的撰写过程中,老师给予了我热心的帮助和大力的支持,给我提了诸多的宝贵意见,拓宽了我的思路。在此我向老师致以崇高的敬意和衷心的感谢!在我的学习过程中,衷心的谢谢老师给予我耐心的指导和帮助。我在此对各位老师表示诚挚的感谢!参考文献1 杜春雷.ARM体系结构与编程M.北京:清华大学出版社,2003.2 周立功 .ARM嵌入式Linux系统构建与驱动开发范例M.北京:北京航空航天大学出版社,2

温馨提示

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

评论

0/150

提交评论