S3C2410最小系统设计_第1页
S3C2410最小系统设计_第2页
S3C2410最小系统设计_第3页
S3C2410最小系统设计_第4页
S3C2410最小系统设计_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

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

文档简介

1、题目:S3C2410X最小系统设计已知技术参数和设计要求:1、嵌入式处理器选择S3C2410M理器;2、最小系统包括电源、时钟、复位、存储器、 JTAG接口3、JTAG接 口选择14针插头4、存储器容量要求至少 16MB勺flah和16MB勺SDRAM5、外部提供5V电源要求完成勺主要任务 : (包括课程设计工作量及其技术要求,以及说明书撰 写等具体要求)1 、存储器等主要元器件选择2、 电源电路、时钟电路、复位电路、存储器扩展电路、JTAG接口电路3、protel 电路图5、不少于 3000 字勺课程设计报告时间安排:20102011学年第1学期1314周指导教师签名:2010年 11月 1

2、1日年月日教研室主任签名:目录摘要 11.S3C2410 基本外围电路设计 11.1 系统框图 11.2 电源电路 . 11.3 晶振电路 . 21.4 复位电路 . 21.5 JTAG 接口 21.6SDRAM存储器 21.7NAND Flash存储器 31.8 串口电路 32.S3C2410 启动过程 33. 简单 Boot loader的制作 43.1 Boot loader工作原理 43.2 第一阶段 43.3 第二阶段 53.4 程序的下载和调试 54. 心得体会 5参考文献 : 5S3C2410最小系统设计摘要:介绍了以嵌入式芯片 S3C2410为核心的最小嵌入式系统构建方法,给出

3、了S3C2410的复位电路、电源电路、存储器电路和串口电路等硬件组成。还介绍了在ADS环境下自制的最小 Boot loader 程序开发和调试方法。关键字: 嵌入式;S3C2410 ADS Boot loaderS3C2410是Samsung公司基于ARM920T核的嵌入式微处理器。本文以S3C2410为核心, 配置了最基本外围电路构成了最小的嵌入式系统,并在ADS上开发了启动程序,完成硬件初始化,配置运行环境,串口调试功能。通过本文可以从底层了解S3C2410的特性和工作原理,并对Boot loader 程序会有深入的认识,为嵌入式系统的学习做铺垫。1.S3C2410基本外围电路设计图1系统

4、框图Fig.1 Diagram of System1.1系统框图1.2电源电路S3C241(工作时核需要1.8V电压,I/O端口和外设需要3.3V电压1。VDDi/VDDiarm引脚是供S3C2410核的1.8V电压;VDDalive引脚是功能复位和端口状态寄存器电压。M12引脚RTCVDD是RTC模块的1.8V电压,用电池供电保证系统的掉电后保持实时时钟。VDDO引脚是I/O端口3.3V电压;VDDMO引脚是存储器I/O端口电压;还有一系列VS&I脚需要接到电源地上。3.3V图 2 5V 转 3.3VFig.2 5V to 3.3V电压从5V用AMS1117-3.3转换得到如图2所示;1.8

5、V从3.3V通过MIC5207-1.8转换得到如图3 所示。图 33.3V 转 1.8VFig.3 3.3V to 1.8V1.3晶振电路S3C2410部有时钟管理模块,有 2个锁相环,其中 MPLL产生CPU主频FCLK AHB总线外设时钟HCLK和APB总线外设时钟 PCLK UPLL产生USB模块的时钟。0M3 0M2都接地 时主时钟源和USB模块时钟源都由外接晶振产生 1。在XTIpll和XTOpll之间连接主晶振,FCLK HCLK和 PCLK 在 XTIrtc和XTOrtc上需要接32.768 kHz的晶振供RTC模块使用。同时在MPLLCA和 UPLLCAPh也要外接5pF的环路

6、滤波电容。晶振电路如图15pF4所示。C3图4晶振电路Fig.4 Crystal CircuitMPLL CAPUPLLCAP可以选择12MHz晶振,通过部寄存器的设置产生不同频率的1.4复位电路S3C2410的J12引脚为nRESET复位引脚,nRESETh给4个FCLK时间的低电平后就可以复位。可以设计如图5所示的复位电路,其中上电复位是靠 RC电路特性完成,开关二极 管1N4148在手动复位时对电容起快速放电的作用,因此可以把复位电平快速拉到0V。反响门74HC14可以起到延时作用,保证有足够复位时间。1.5 JTAG 接口图5复位电路S3C2410有标准的JTAG接口,TCK( H6)

7、为测试时钟输入;TDI (J1)为测试数据输入;Fig.5 Reset CircuitTDO( J5)为测试数据输出;TMS( J3)为测试模式选择,TMS用来设置JTAG接口处于某种特定的测试模式;nTRST( H5)为测试复位,输入引脚,低电平有效。其中nTRSTTCK TDI需要接10K的上拉电阻。通过 JTAG 口可以完成芯片测试或在线编程。1.6SDRAM存储器1S3C2410有32根数据线和27根地址线,因此地址线的寻址围为128M;但是S3C2410还有8根存储器芯片片选信号线nGCS0- nGCS7因此总的寻址空间为128M*8=1G Nand Flash启动模式下复位时 S3

8、C2410的存储器映射如图 6所示。 如当访问物理地址 0x080000000x10000000的地址则nGCS1自动为低电平,以此 类推。TMSfu I U占七8sFFFFFFFF1 A 1ISRFA.-r i- bitCCiCOOOOO 4300000Net-JxdOOOC-iCKlOSKOM/StJROM x ii- rn si iUicJrJSV J * ki m/ JlibLUM 血口曰Q 0Q80 30000000 CnGCSSJ /3x30000000UiGCSB) aSROM,-H-N-.r3x20000000忸 SROuOCm.-|Ci(nQCSS JixlCrOOOOOO(

9、nGC52)1x10000000 iMOOCiOdOOOHq oHtId EXUl r SRAM4KE J JMUSUOTarget Setting-post Link中选择ARMfromELF,表示在生成映像文件后,再调用 FromELF命令映像文件 转换成其他格式的文件。Linker-Arm Linker-Output-Link Type选 Simple 简单连接方式;ROBase设置为0x30008000代码段连接地址。实际上ROBASE旨定了程序的静态连接地址。程序真正被执行时所在的存地址叫做运行地址。如果连接时用到绝对地址的话 运行地址和地址保持一致时程序才能正常运行,这种代码叫做与

10、位置有关代码。如果连接 时没有涉及到绝对地址那么连接地址和运行地址不一样程序也可以正常运行,这种代码叫 做位置无关的代码。但是 Bootloader 一开始时被加载在 0x00 位置开始运行,这会不会和 ROBase 设置地址冲突呢?实际上是会冲突的, 解决冲突的办法就采用位置无关代码 (PIC)。 实际上Boodloader的绝大部分代码最后想让它运行在0x30000800开始的SDRAM!,只有第一阶段代码运行在 0x00开始的SRAM!,因此把阶段1用位置无关的汇编代码实现整个 程序就正常运行了。RW Base是数据段的开始位置,如果不指定数据段就紧接着代码段放置。如果自己设置的话程序里

11、还需要自己处理加载数据段到实际数据段RW Base的搬移操作,否则具有初始值的变量的初始值不起作用。在 Options-Image entry point 指定代码 的入口 _ENTRY。程序的第一步要设置中断向量表。S3C2410有7种中断,中断入口地址在 0x00开始处,每个中断占用 4 可字节,正好可以放一个跳转指令。程序如下:b ResetHandler ; 复位中断, 也是整个程序的入口, b 指令是根据当前 PC 进行跳转, 因此可以实现位置无关代码 5。在 ResetHandler 中需要做的工作有:关闭看门狗、关闭所 有中断、设置主频、初始化SDRAM设置中断堆栈,最后搬移代码

12、到SDRAM中。最后一步跳转到C程序的入口函数 main中。3.3 第二阶段 6这阶段代码用 C语言编写,从 main函数开始。这个阶段的主要任务有串口初始化、 MMU勺初始化、USB初始化、以太网初始化等。Bootloader工作时显示屏可能还没有工作, 或者目标板根本就没有显示屏或键盘等设备,因此人机交互一般通过串口来实现。因此必 须初始化串口,通过串口打印运行信息或者接收用户输入。用串口连接到PC上,用专用或通用的串口软件来接收信息或输入信息。USB 口、以太网可以实现快速的文件传输,其他程序或操作系统核可以通过USB或以太网口快速的下载到目标板上。3.4 程序的下载和调试编译工程后会得

13、到一个 bin 文件,这就是在目标板上运行最后文件。 Bootloader 一 般用JTAG口来烧写,因为 Bootloader之前板子上其他任何接口(串口、 USB以太网)都 是不可用的,Bootloader是板子上运行的第一个程序。PC机上通过JTAG口烧写文件可以用sjf2410.exe 这个程序,运行方式如下 sjf2410 /f:myBoot.bin 。如果JTAG口连接正常 的话,会发现 CPU然后根据提示选择相应的位置烧写就可以了。烧写完复位板子后可以 在PC上通过串口看到 Bootloader的运行情况。4. 心得体会本次课程设计对 S3C2410工作必须的外围电路,以及 AD

14、S下S3C2410的程序设计方法 做了详细的介绍,有不足的地方请老师指正。参考文献 :1 SAMSUNG ELECTRONICS. S3C2410 MICROPROCESSOR data sheet. 2003.2 文智. 嵌入式系统开发原理与实践 M. 北京:清华大学, 2005.3 毕卫红,王帅,郝科卿等.ADS环境下基于S3C2410串口应用程序的开发J.电子技术, 2009, 8 73744 裴科 , 刚, 靳荣浩 . 具有多重下载接口的 Bootloader 设计 J. 计算机应用研究,2007,24(12):2103605 韦东山 . 嵌入式 Linux 应用开发完全手册 M 北京

15、:人民邮电, 2008.6 许信顺,贾智平 . 嵌入式 Linux 应用编程 M, 北京:机械工业, 2008.S3C2410 Minimum System DesignFAN Daoerji LIU Zheng-hong LI DongInformation(Department of Electronic Engineering, College of Electronic Engineering,NeiMongol University,Hohhot 010021)(Beijing Vocational College of Electronic Science,Beijing100070 )Abstract : This article introduces a method of building minimum embedded system which base on S3C2410,a

温馨提示

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

评论

0/150

提交评论