ARM9 S3C2440最小系统
- 格式:doc
- 大小:353.50 KB
- 文档页数:7
基于ARM的智能家居控制系统摘要:本文提出了一种基于ARM的智能家居控制系统,确定了总体架构设计,利用32位嵌入式ARM9处理器S3C2440作为智能家居控制系统的控制核心,硬件结构简单,很适合智能家居推广与应用。
关键词:智能家居控制系统嵌入式智能家居也叫智能住宅,英文叫Smart Home。
也可以叫做网络家庭、电子家庭、家庭自动化等等。
智能家居首先由美国、欧洲等经济比较发达的国家提出来的。
其目标就是:“通过家庭内部的一个智能系统,将各种信息家电连接起来进行集中的或异地的监视控制”。
本文智能家居系统的设计,稳定可靠的硬件是基础,也是系统的重要组成部分。
我们做系统硬件设计的时候,要考虑到它实现我们需要的各项功能,还要考虑到系统升级所需要的多端口和空间;还有,在设计智能家居系统的时候,硬件设计还要兼顾到软件设计的方便和易开发等条件。
本文设计的智能家居系统分为主机和分机两个部分。
主机采用ARM9芯片S3C2440作为CPU,分机采用ARM9芯片CC2430作为控制器。
主机MCU S3C2440 采用了ARM920t 的内核,0.13um 的CMOS标准宏单元和存储器单元。
它低功耗,简单,全静态设计非常适合于对智能家居这样低成本、低功率设计的应用。
它采用了新的总线架构(AMBA)。
S3C2440 的优点是核心处理器(CPU),是一个由Advanced RISC Machines 有限公司设计的16/32 位ARM920T的RISC处理器。
ARM920T实现了MMU,AMBA BUS 和Harvard 高速缓冲体系结构构。
这一结构具有独立的16KB指令Cache 和16KB 数据Cache。
S3C2440为智能家居系统提供一套完整的通用系统外设,减少整体系统成本和尽可能少的配置额外的组件。
本智能家居系统主机MCU S3C2440的外围设备有人机接口LCD 触摸屏,用来发送指令或处理接受到的分机的指令;USB摄像头是智能家居系统的监控单元,能实时的监控周围的环境,由于USB摄像头监控的视频画面所占存储空间较大,所以我们还需外加存储器来存储视频画面。
TOUT0 GND LED1 GND TOUT0 GND LED1 GNDTOUT0 GND LED1 GNDGPIO信号地232OPF光耦RDARDBSDASDBSGFRE500 232OPF光耦232OPF光耦232OPF光耦S3C2440PF+PF-PR+PR-SEDA-02AVNPF+PF-PR+PR-SEDA-02AVNPF+PF-PR+PR-SEDA-02AVNUVWGNDUVWGNDUVWGNDUVWGNDM1M2M3M4PEPEPEPE图1系统原理图来控制电机。
根据加工线型的不同,本数控系统的插补计算分为圆弧插补、直线插补计算。
3结语采用S3C2440和运动控制芯片SEDA -02AVN 组成的嵌入式数控系统能减轻研发任务,提高研发速度,在较短的时间内得到性能良好的数控系统。
Samsung 公司的16/32位RISC 处理器S3C2440对调制PWM 实现方便,可编程,电机转速、转向的改变迅速,无停顿,还可以进行Linux 操作系统的移植。
而Linux 是UNIX 类、多用户、多任务的开放式操作系统,借助Linux 操作系统,大大提高了软件开发的灵活性,缩短了数控系统软件的开发周期。
[参考文献][1]韦东山.嵌入式Linux应用开发完全手册.北京:人民邮电出版社,2008[2]杜春雷.ARM体系结构与编程.北京:清华大学出版社,2003[3]刘刚,赵剑川.Linux系统移植.北京:清华大学出版社,2011[4]秦云川改编.构建嵌入式Linux系统.北京:中国电力出版社,2011[5]刘淼.嵌入式系统接口设计与Linux驱动程序开发.北京:北京航空航天大学出版社,2006[6]于明,范书瑞,曾祥烨.ARM9嵌入式系统设计与开发教程.北京:电子工业出版社,2006[7]S3C2440芯片手册[8]TQ2440开发板使用手册收稿日期:2012-08-08作者简介:程龙(1987—),男,辽宁沈阳人,硕士研究生,研究方向:机械电子。
第二章处理器工作模式2.1概述S3C2440采用了非常先进的ARM920T内核,它是由ARM(Advanced RISC Machines) 公司研制的。
2.2 处理工作状态从程序员的角度上看,ARM920T可以工作在下面两种工作状态下的一种:● ARM 状态:执行32位字对齐的ARM指令● THUMB 状态:执行16位半字对齐的THUMB指令。
在这种状态下,PC 寄存器的第一位来选择一个字中的哪个半字注意;这两种状态的转换不影响处理模式和寄存器的内容。
2.3 切换状态进入THUMB 状态进入THUMB 状态,可以通过执行BX指令,同时将操作数寄存器的状态位(0位)置1来实现。
当从异常(IRQ,FIQ,UNDEF,ABORT,SWI等)返回时,只要进入异常处理前处理器处于THUMB状态,也会自动进入THUMB状态。
进入ARM状态进入ARM状态,可以通过执行BX指令,并且操作数寄存器的状态位(0位)清零来实现。
当处理进入异常(IRQ,FIQ,RESET,UNDEF,ABORT,SWI等)。
这时,PC值保持在异常模式下的link寄存器中,并从异常向量地址处开始执行处理程序。
存储空间的格式ARM920T将存储器空间视为从0开始由字节组成的线性集合,字节0到3中保存了第一个字节,字节4到7中保存第二个字,以此类推,ARM920T对存储的字,可以按照小端或大端的方式对待。
大端格式:在这种格式中,字数据的高字节存储在低地址中,而字数据的低字节则存放2.4 指令长度指令可以是32位长度(在ARM状态下) 或16位长度(在THUMB状态) 。
数据类型ARM920T支持字节(8位),半字(16位) 和字(32位) 数据类型。
字必须按照4字节对齐,半字必须是2字节对齐。
2.5 操作模式ARM920T支持7种操作模式:● 用户模式(user模式),运行应用的普通模式● 快速中断模式(fiq模式),用于支持数据传输或通道处理● 中断模式(irq模式),用于普通中断处理● 超级用户模式(svc模式),操作系统的保护模式● 异常中断模式(abt模式),输入数据后登入或预取异常中断指令● 系统模式(sys模式),使操作系统使用的一个有特权的用户模式● 未定义模式(und模式),执行了未定义指令时进入该模式]外部中断,异常操作或软件控制都可以改变中断模式。
S3C2440芯片内部结构首先是ARM920T内核,它是S3C2440芯片的核心部分,负责执行指令和进行数据计算。
ARM920T是ARM9系列的一款高性能内核,具有5级流水线结构,支持高级数据处理指令和多种存储器接口。
它的内置缓存和分支预测机制可以提高执行效率,充分发挥芯片的计算能力。
其次是外设控制器,S3C2440芯片内置了多个外设控制器,包括UART串口、SPI、I2C总线、USB等接口,以及LCD控制器、触摸屏控制器、MMC/SD卡控制器等功能模块。
这些控制器可以与各种外部设备进行通信和数据交互,为系统提供了丰富的接口和功能。
存储器接口是S3C2440芯片与外部存储器之间的桥梁,它可以连接闪存、SDRAM、NAND Flash等不同类型的存储器。
通过存储器接口,芯片可以读写存储器中的数据,并进行程序的存储和执行。
S3C2440提供了高速的存储器控制器和多种存储器接口,可以满足不同应用场景的需求。
时钟和电源管理模块是S3C2440芯片的核心组成部分,它负责提供系统时钟和电源管理功能。
时钟管理模块可以根据需要设置系统的工作频率,提供外设时钟和CPU时钟等。
电源管理模块可以对芯片的功耗进行控制,实现节能和延长电池寿命。
除了上述主要模块外,S3C2440芯片还具有其他辅助功能,如中断管理、DMA控制、中央处理器监视器等。
中断管理模块可以对外部中断信号进行处理,实现系统的实时响应。
DMA控制模块可以实现高速数据传输,减轻CPU负担。
中央处理器监视器模块可以对系统进行监控和调试,提高系统的可靠性和稳定性。
总结起来,S3C2440芯片的内部结构包括ARM920T内核、外设控制器、存储器接口、时钟和电源管理等模块。
这些模块相互协作,共同完成系统的计算、通信、存储和控制等任务。
有了这些丰富的硬件资源和功能,S3C2440芯片可以满足不同应用领域的需求,为嵌入式系统的开发和应用提供了良好的支持。
ARM9嵌入式系统设计课程论文论文题目:嵌入式ARM9 micro2440底板制作论文一、摘要为适应嵌入式技术在现代工业及电子等更多领域的广泛应用,通过对ARM9嵌入式微处理器芯片S3C2410的研究,设计出基于S3C2410核心板的嵌入式系统开发底板,更多的需求及功能可在其底板上进行扩展与实现。
首先对ARM9嵌入式微处理器S3C2440进行介绍,然后给出了基于S3C2440核心板的嵌入式系统开发底板的设计与功能扩展,包括开发板总体设计,电源模块设计,各种通信模块设计如串口、JTAG接口、网络接口、CAN总线通信接口等。
该模板的设计实现了嵌入式系统在更多更广泛领域应用的灵活性。
关键词ARM9 S3C2440 嵌入式微处理器嵌入式系统AbstractToadaptingfortheembeddedtechnology’sapplicationwidelyinthe modernindustry,electronandsoon,itisthedesignfortheembeddeds ystemexploitationmotherboardbasedonS3C2410coreboardthrought heresearchonARM9embeddedmicroprocessorS3C2440.Moredemandand functioncanextendandcometrueonthemotherboard.Firstly,introd uceARM9embeddedmicroprocessorS3C2440.ThenintroducethedesignfortheembeddedsystemexploitationmotherboardbasedonS3C2410co reboardandthefunctionextend,includingexploitationmotherboar ds’collectivitydesign,powers upplydesign,allkindsofcommunic ationmoduledesign,suchasserialinterface,JTAGinterface,netwo rkinterface,CANbuscommunicationinterfaceandsoon.Themotherbo ard’sdesignhasrealizedtheembeddedsystemapplication’sflexi bility.Keywords ARM9 S3C2440 Embeddedmicroprocessor Embeddedsystem 二、ARM简介如果说,“嵌入式”是2008年电子工程师谈论得最多的词之一,2009年谈论得最多的一个词就是“ARM”。
2440芯片2440芯片是一款由韩国三星公司开发的基于 ARM920T 核心的嵌入式处理器。
2440芯片主要用于嵌入式系统的设计和开发,包括智能手机、平板电脑、汽车导航、电子书等应用领域。
2440芯片采用了先进的 0.13 微米 CMOS 工艺,整合了 CPU、内存控制器、外设控制器等核心功能模块。
它采用了 16 位宽的内核总线来提供高性能的数据传输能力,可以实现每秒3000 万次的浮点运算。
2440芯片支持多种外设接口,包括 LCD 显示屏接口、触摸屏接口、摄像头接口、以太网接口等。
它还内置了多个串行通信接口,如 UART、SPI、I2C 等,可以方便地与外部设备进行通信,更好地满足不同应用的需求。
2440芯片还具有低功耗和低温升的特点。
它采用了自适应调压(DVFS)技术,可以根据实际负载情况智能调整工作频率和电压,从而降低功耗并延长电池寿命。
此外,2440芯片还采用了三星专利的温度感知功率控制(TPC)技术,可以根据芯片温度自动调整频率和电压,从而保持芯片在安全工作温度范围内。
2440芯片的软件开发支持比较完善。
它支持 Linux、Windows CE、Android 等主流嵌入式操作系统,并提供了丰富的软件开发工具和开发文档,方便开发人员进行应用程序的开发和调试。
此外,2440芯片还提供了一套基于 C 语言的底层驱动库,可以方便地访问芯片的各种功能和外设接口。
总的来说,2440芯片是一款功能强大、性能优越的嵌入式处理器。
它具有高性能、低功耗、低温升等特点,并且支持多种外设接口和主流操作系统,可以广泛应用于各种嵌入式系统的设计和开发。
ARM9嵌入式处理器S3C2440实现了远程图像光线监控系统对图像监控系统,用户常常提出这样的功能需求:希望能够监控距离较远的对象这些对象有可能分布在郊区、深山,荒原或者其他无人值守的场合;另外,希望能够获取比较清晰的监控图像,但对图像传输的实时性要求并不高很明显,用传统的PC机加图像采集卡的方式很难满足这样的需求。
在嵌入式领域,ARM9系列微处理器在高性能和低功耗方面提供了最佳的性能,因此选用ARM9嵌入式处理器S3C2440设计实现了一个远程图像光线监控系统通过这个系统,可以远在千里之外控制一个摄像机进行图像采集并回传。
如果这个摄像机有一个485接口的云台,还可以通过互联网远程控制摄像机的取景角度、镜头拉伸、聚焦等功能除了获取图像数据.系统还提供了多路开关控制和数据采集功能,可以连接温度、湿度等各类传感器和控制红外夜视灯等其他外部设备的开关状态。
最后,通过GP RS或C DMA无线通信模块及Internel互联网将数据传至任何地方。
1 系统设计本系统采用三星公司的S3C2440嵌入式处理器和arm-linux 2.4.26操作系统;S3C2440使用ARM920T内核,主频是400 MHz;除了集成通用的串口控制器、USB控制器、A/D转换器和GPIO等功能之外,还集成了一个摄像头接门(CAMIF)(这个接口是远程图像采集的核心部分)。
系统在S3C2440处理器的控制下,从CCD摄像机采集模拟视频信号,然后经过编码、DMA传输到内存缓冲,接着由软件对内存中的数字视频数据进行压缩和打包.最后通过通信单元将图像以IP包的方式发送到监控中心的服务器。
整个系统的硬件结构原理如图1所示1.1 图像采样接口S3C2440的摄像头接口(CAMIF)支持ITU-R BT.601/656 YCbCr 8比特标准的图像数据输入,最大可采样4096×4096像素的图像。
摄像头接口可以有两种模式与DMA控制器进行数据传输:一种是P端口模式,把从摄像头接口采样到的图像数据转为RGB数据,并在DMA控制下传输到SDRAM(一般这种模式用来提供图像预览功能);另一种是C端口模式,把图像数据按照YCbCr 4:2:0或4:2:2的格式传输到SDRAM(这种模式主要为MPEG-4、H.263等编码器提供图像数据的输入)。
《装备制造技术》2018年第04期0引言随着经济的发展,触摸式电子查询系统已十分广泛地运用在机关、商场、医院等各种公众场所,市场潜力非常巨大,但目前流行的查询屏的设计大多基于PC机,使用X86等系列的芯片,普遍存在着价格昂贵、体积大、功耗高等问题。
而许多触摸式电子查询系统只需要根据触摸动作控制相应显示即可,对计算机速度等性能要求不高,无需多媒体播放演示等繁杂功能,也不需要过高的软硬件资源和外围设备。
基于ARM9[1]嵌入式系统设计的触摸式电子查询屏,不仅在功能上能满足对触控、显示的基本要求,更因兼具价格低、体积小以及节能降耗等优点,将会在电子查询系统这一领域中占据较大份额,从而具有较大的经济价值。
1硬件结构系统硬件由ARM9核心模块、VGA模块、液晶显示屏和触摸屏组成,如图1所示。
图1硬件结构1.1核心模块核心模块采用的是广州友善之臂FriendlyARM的Mini2440开发板,该板的CPU为三星S3C2440A(400 MHz耀533MHz主频)[2],配置有在板的64MSDRAM、128M的NandFLASH,带有网卡、USB接口及JTAG 调试接口。
资源比较丰富,支持嵌入式Linux、WinCE 等多个操作系统,易于交叉编译与调试。
S3C2440A 内置的LCD控制器支持在64K色彩模式下尺寸为2048*1024的虚拟屏,且该控制器有一个专用的DMA 通道,用于获取系统内存的规模缓冲中的图像素据,然后发送到外部,这点完全满足系统的显示要求。
同时S3C2440A还提供内部TFT直接触摸屏接口,可连接触摸屏的XP、XM、YP、YM,经A/D转换后可以得到X和Y的位置,从而实现系统对感知触摸动作的需求。
1.2VGA模块模块采用广州友善之臂的LCD2VGA模块,该板以FPGA+SDRAM为图像处理核心,分辨率为1024*768,场频70Hz,用40脚的排线连接该板的J5插座和Mini2440的LCD_CON,可将核心模块显存中的图像数据输出转换成液晶示屏的VGA格式信号。
S3C2440 I/O口的总结(4)一、DCLK 控制寄存器(DCLKCON)这个寄存器定义DCLKn信号,这个信号为外部资源提供时钟信号。
DCLKCON 仅仅在CLKOUT[1:0]被设置为发送DCLKn信号时才能进行操作。
1.DCLK0EN [0]DCLK0使能:0 = DCLK0禁止1 = DCLK0使能2.DCLK0SelCK [1]选择DCLK0时钟源0 = PCLK1 = UCLK(USB)3.DCLK0DIV [7:4]DCLK0 frequency = source clock /( DCLK0DIV + 1)4.DCLK0CMP [11:8]DCLK0与时钟切换值进行比较,如下图所示,如果DCLK0CMP是n,低电平的持续时间为(n+1),高电平的持续时间为((DCLK1DIV + 1)–( n +1)) 5.DCLK1EN [16]DCLK1使能:0 = DCLK1禁止1 = DCLK1使能6.DCLK1SelCK [17]选择DCLK1时钟源0 = PCLK1 = UCLK(USB)7.DCLK1DIV [23:20]DCLK1 frequency = source clock /( DCLK0DIV + 1)8.DCLK1CMP [27:24]DCLK1与时钟切换值进行比较,如下图所示,如果DCLK1CMP是n,低电平的持续时间为(n+1),高电平的持续时间为((DCLK1DIV + 1)–( n +1))二、外部中断控制寄存器n(EXTINTn)可以通过各种信号方法请求 8 外部中断。
EXTINT寄存器可以通过配置电平触发方式和边沿触发方式来请求外部中断,并还配置了信号极性。
为了识别电平中断,因为噪声滤波器的存在,到 EXTINTn引脚上的有效逻辑级电平别必须至少保持40ns。
注意:EXTINT0(EINT0~ EINT7)每三位来确定EINT请求的信号方式:000:低电平触发001:高定平触发01x:下降沿触发10x:上升沿触发11x:双边沿触发注意:EXTINT1FLTEN8~FLTEN15每位来确定EINT的滤波器使能:0:滤波器禁止1:滤波器使能EINT8~ EINT15每三位来确定EINT请求的信号方式:000:低电平触发001:高定平触发01x:下降沿触发10x:上升沿触发11x:双边沿触发EINT [15:0]用于唤醒电源。
S3C2440与SDRAM的地址连线分析S3C2440有27根地址线ADDR[26:0],8根片选信号ngcs0-ngcs7,对应bank0-ba nk7,当访问bankx的地址空间,ngcsx引脚为低电平,选中外设。
2^27=2^7 * 2^10 * 2^10 = 128Mbyte8*128Mbyte = 1Gbyte所以S3C2440总的寻址空间是1Gbyte。
市面上很少有32位宽度的单片SDRAM,一般选择2片16位SDRAM扩展得到32位SDRAM.选择的SDARM是HY57V561620F,4Mbit * 4bank *16,共32Mbyte。
首先了解下SDRAM的寻址原理。
SDRAM内部是一个存储阵列。
可以把它想象成一个表格。
和表格的检索原理一样,先指定行,再指定列,就可以准确找到所需要的存储单元。
这个表格称为逻辑B ANK。
目前的SDRAM基本都是4个BANK。
寻址的流程就是先指定BANK地址,再指定行地址,最后指定列地址。
这就是SDRAM的寻址原理。
存储阵列示意图如下:查看HY57V561620F的资料,这个SDRAM有13根行地址线 RA0-RA129根列地址线CA0-CA82根BANK选择线 BA0-BA1SDRAM的地址引脚是复用的,在读写SDRAM存储单元时,操作过程是将读写的地址分两次输入到芯片中,每一次都由同一组地址线输入。
两次送到芯片上去的地址分别称为行地址和列地址。
它们被锁存到芯片内部的行地址锁存器和列地址锁存器。
/RAS是行地址锁存信号,该信号将行地址锁存在芯片内部的行地址锁存器中;/CAS是列地址锁存信号,该信号将列地址锁存在芯片内部的列地址锁存器中。
地址连线如下图:SDRAM的A0接S3C2440的ADDR2,很多初学者都对这里又疑问。
A0为什么不接ADDR0?要理解这种接法,首先要清楚在CPU的寻址空间中,字节(8位)是表示存储容量的唯一单位。
用2片HY57V561620F扩展成32位SDRAM,可以认为每个存储单元是4个字节。
s3c2440(ARM9)通用寄存器地址:s3c2440a”target=“_blank”> zhidao.baidu/link?url=Nf9NDaITEiA4Gc9q6Y4dP3ytxLJPwBjvRhizxtP0hUu6sQaN qUFqPnS7KEfvfjpIJBlzFKFzq-rBNYXSGx1-vas3c2440a 通用寄存器地址:例如R0,R1,R2 之类的通用寄存器对应内存的地址???这么说,在C 编程中,就不存在所谓的R1、R2 之类的通用寄存器了??R0,R1,R2 是寄存器,在cpu内部,用于计算和存储访问、存放临时数据、以及一些cpu 或程序运行的状态,是不直接对应内存的,所以也就没有具体的地址可言。
直接书写寄存器名称就可以了。
C 中是不会直接引用这些寄存器的,只有在汇编中会使用.来源:zhidao.baidu/link?url=6M6t-DA_bknr8NhFyymq3_iUorcdcmT9wqf_-wS1oYnU5ynBchkqP9hcPwvY7pfPG52mU5nAMQ2J4lzqId_SBcL_Gx08Zycsrp0B AStndxm 请问通用寄存器的物理地址在哪里,比如我看到三星2410 芯片,他的sfr 在0x4800 00000x600 0000 中,那么通用寄存器r0-r14 的地址又在哪里,请给出答案,最好能详细解释一下,谢谢!本人菜鸟,请尽量详细,请不要回答,去看某某资料,我在datasheet 上了没找到,请将具体内容复制过来回答,谢谢像这样存在CPU 内部的寄存器我们是不知道他们的地址的,平常我们说的地址都是说内存地址,更有说法是这种寄存器是没有地址的!他们的访问不是通过地址去访问的,直接通过汇编指令中的寄存器名访问的!所以你datasheet 肯定是找不到的!datasheet 上面能找到的是memory address,比如32 位地址线的会有一个4G 的空间,这样的内存是通过地址线去访问,而在CPU内部的寄存器是不通过地址线去访问的!tips:感谢大家的阅读,本文由我司收集整编。
TE2440用户手册V3.0保定飞凌嵌入式技术有限公司网站:论坛:TE2440是由飞凌嵌入式技术有限公司设计生产的一款基于ARM9的嵌入式开发平台,它基于三星公司的ARM处理器S3C2440A,内部带有全性能的MMU(内存处理单元),适用于设计移动手持设备类产品。
TE2440全六层板,性能稳定可靠,具有高性能、低功耗、接口丰富和体积小等优良特性。
目前已成功移植Linux,WINCE等操作系统到TE2440开发板。
在使用开发板时,请注意以下事项:1.用户在拿到开发板后,请至网站“客户服务”页面注册,并用Email或者QQ通知我们您的姓名,购买时间,注册名称,开发板的编号,我们会及时为您开通会员权限,便于您及时下载更新的资料!2.第一次使用TE2440开发板时,请务必先阅读用户手册,按照手册上所述进行相关操作,谨防随意破坏系统程序!3.每次使用TE2440开发板前,请先将手接触开发板周围金属接口或者其它地方放电,避免直接用手触摸芯片造成芯片烧坏!4.需要对开发板进行物理操作时,请关闭电源,除USB以及网络接口(如果与局域网相接请使用普通网线,开发板带网线为计算机直连网线)外,其它接口均不支持热插拔,开发板工作时,请不要带电插拔。
5.本开发板硬件保修时间为三个月(非人为或不可抗力原因除外),技术支持时间三个月(论坛技术支持及“客户服务”下载时间不在此限)。
最后,欢迎您使用TE2440开发板,并提出宝贵意见!编者:飞凌嵌入式技术有限公司地址:河北保定市七一西路165号邮编:071051电话:0312-*******传真:0312-*******QQ:93644331360189317E-mail:bdht@网址:论坛:/bbs目录一.第一章TE2440开发板硬件介绍 (5)1.1开发套件包含的内容 (5)1.2用户光盘内容说明 (5)1.3TE2440开发板外观 (6)1.4TE2440开发板硬件资源 (6)1.5硬件资源分配 (8)1.5.1地址空间分配以及片选信号定义 (8)1.5.2开发板接口说明 (9)1.5.3按键说明 (10)1.5.4LED指示灯说明 (10)1.5.5跳线分配表 (10)1.6TE2440开发板主要硬件说明 (10)1.6.1系统存储器 (10)1.6.2JTAG及复位逻辑 (11)1.6.3LCD/触摸屏接口引脚定义 (13)1.6.4IDE(也作为总线接口)接口引脚定义 (15)1.6.5GPIO扩展口引脚定义 (17)1.6.6SD卡接口 (18)1.6.7IIS音频输入输出接口 (19)1.6.8摄像头接口: (20)1.6.9串口电路 (20)1.6.10USB接口 (22)1.6.11功能按键及用户LED指示灯 (22)1.6.12红外收发电路 (24)1.7TE2440支持的操作系统及其驱动 (24)1.7.1Linux操作系统 (24)1.7.2WINCE操作系统 (25)二.第二章TE2440开发板基本使用 (26)2.1TE2440外部硬件连接 (26)2.2WINDOWS下驱动的安装 (26)2.2.1安装USB驱动 (26)2.2.2安装并口驱动程序 (29)2.3调试终端使用 (33)2.3.1DWN软件的使用 (33)2.3.2超级终端的使用 (34)2.4BOOTLOADER使用全攻略 (37)2.4.1bootloader简介 (37)2.4.2功能菜单说明 (38)2.4.3选择菜单说明 (39)2.4.4参数设置说明 (40)2.4.5通过USB下载程序并写入FLASH (41)2.4.6用sjf2440.exe烧写bootloader程序 (43)2.5ADS下的LED试验 (44)2.5.1ADS安装 (44)2.5.2使用ADS创建工程 (44)2.5.3编译和链接工程 (50)2.5.4H-JTAG的安装使用 (59)2.5.5用AXD进行代码调试 (62)一.第一章TE2440开发板硬件介绍TE2440开发板为全六层板,开发板的布局和走线经过专业人士精心设计,工作非常可靠,可稳定运行在400MHz。
arm9嵌入式系统组成结构系统架构如下图所示。
一目标硬件平台简介目标板采用 FriendlyARM公司的 QQ2440V3开发板,其主要硬件资源如下:CPU处理器:Samsung S3C2440A,主频 400MHz,最高 533Mhz。
SDRAM内存:在板64M的SDRAM、32bit数据总线、SDRAM时钟频率高达 100MHz。
FLASH存储:在板 64M Nand Flash,掉电非易失,用于存储 linux内核及文件系统。
在板 2M Nor Flash,掉电非易失,保存 bootloader。
接口和资源:1个 IOM 以太网 RJ一45接口(采用 CS8900网络芯片 J1个 USB Host1个 SD卡存储接 El1路立体声音频输出接口,一路麦克风接口;1个 2.0mm间距 20针标准 JTAG接口1个 I2C总线 AT24C08芯片,用于 12C总线测试系统时钟源:12M无源晶振。
实时时钟:内部实时时钟(带后备锂电池 )。
软件资源方面。
该开发板提供移植好的 bootloader(vivi】和 linux系统。
本文采用的交叉编译器为:arnl—linux—gcc一3.4.1编译内核使用;alTll—linux—gcc一2.95.3编译 vivi用:yaffs文件系统映象制作工具 mkyaffsimage。
其中,应用程序使用 3.4.1或 2.95.3均可。
二、嵌入式 web服务器 BOA的移植、配置目前,应用较多的嵌入式web服务器有 httpd、thttpd、BOA等,就众多选择而言,BOA不但支持一般的静态页面,还支持认证和 CGI。
其中认证机制显著提高系统的安全性,而 CGI程序是实现动态页面的主要手段,通过 CGI程序,就可以启动新进程,操作硬件资源以及访问数据库。
三、CGI编程规范CGI全称是“公共网关接口”(Comnlon Gateway Interface)。
是一种 web 服务器浏览进行“交谈”的一种工具。
ARM9 S3C2440最小系统
蒙娜丽莎的设计还得继续,这次进行ARM部分的设计。
在蒙娜丽莎系统中,ARM用于控制通讯和人机交互,在系统中处于比较重要的地位。
我选择了SANSUNG公司的S3C2440芯片,原因是它的速度较快、外设丰富,并且价格便宜,大约在40元人民币。
我认为进行硬件设计最快捷的方法就是购买一块开发板,然后从这个开发板的原理图中进行裁剪,然后布线制板焊接调试。
一个MPU的最小系统包括SDRAM、Flash、调试接口、时钟、电源、复位等。
上层原理图:
先说SDRAM的扩展。
首先要了解S3C2440的内存映射,以下均摘自S3C2440的Datasheet。
S3C2440具有MMU(Memory Management Unit),有8个Banks,每个Bank的地址空间是128MB,所以S3C2440的总的寻址空间是1GB。
如下:
一般我们选择使用NAND Flash启动方式。
原因是NAND Flash价格低、容量大,而且速度并不慢。
要想使用NAND Flash启动方式,只需要设置OM[0:1]=00就可以了,方法是在硬件设计上将OM0和OM1接地。
如下:
我们使用两片HY57V561620作为ARM部分的SDRAM。
HY57V561620 是4Banks x 4M x 16Bit 的Synchronous DRAM。
在S3C2440的Datasheet上ARM和SDRAM的接法如下:
这个是按照S3C2440的Datasheet上的接法。
我刚开始不明白为什么4M的SDRAM只有12根地址线,原来SDRAM的地址线是行列地址复用的。
还有一点,对于SDRAM这种易失性存储器,它的数据线不用按顺序连接,反正写进是什么,读出来就是什么,与顺序无关。
我们使用SAMSUNG的K9F1G08作为系统的非易失性存储器,容量为1Gbit,也就是128MByte。
接法如下:
根据K9F1G08的参数,对芯片的配置如下:
NCON:1,Advance NAND flash(1KWords/2KBytes page size, 4/5 address cycle)
GPG13: 1,Page=2KBytes(NCON = 1)
GPG14:1,5 address cycle(NCON = 1)
GPG15:0,8-bit bus width
电路图如下:
JTAG如下:
时钟如下:。