基于S3C44B0X的嵌入式系统应用开发(第二版)2(1)新_第1页
基于S3C44B0X的嵌入式系统应用开发(第二版)2(1)新_第2页
基于S3C44B0X的嵌入式系统应用开发(第二版)2(1)新_第3页
基于S3C44B0X的嵌入式系统应用开发(第二版)2(1)新_第4页
基于S3C44B0X的嵌入式系统应用开发(第二版)2(1)新_第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

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

文档简介

第4章基于S3C44B0X的嵌入式系统应用开发

端口组件原理及应用

4.2中断组件原理及应用

34.3嵌入式最小系统34.14.4UART组件原理及应用

DMA组件原理及应用

4.5PWM定时器原理及应用

34.6I2C组件原理及应用

36.7知识回忆:1、S3C44B0X的概述2、嵌入式最小系统3、电源模块4、时钟源设计〔PLLCON〕4.1.4复位电路设计与模式选择

1.复位电路的作用负责将处理器初始化为某个确定的状态。2.S3C44B0X的复位

复位引脚为nRESET,至少保持4个MCLK时钟周期的低电平,才能复位。专用复位IC芯片复位电路接口设计之

复位电路设计与模式选择(3)OM1=0且OM0=1选择16位数据宽度

大小端格式选择及数据宽度选择连接电路小端格式

大端格式S3C44B0X的数据存储模式有大端和小端的选择,由引脚ENDIAN决定。[OM1:OM0]启动FLASH的数据宽度。4.1.5存储器组件与接口模块

嵌入式系统使用的存储器有多种类型,主要包括Flash、EPROM、SDRAM以及SRAM等,为满足不同类型的存储器对不同速度、不同类型、不同总路线宽度等的存储器的管理和控制,存储控制组件是必不可少的。正是存储控制器为片外存储器访问提供必要的控制信号,管理着片外存储部件。存储器区域划分

不同存储器组织的

存储器地址线与系统地址总线的连接表6.6S3C44B0X不同存储器组织的存储器地址线与系统地址总线的连接存储器地址线8位存储器组织下的系统地址总线16位存储器组织下的系统地址总线32位存储器组织下的系统地址总线A0A0A1A2A1A1A2A3A2A2A3A4A3A3A4A5::::Am-1Am-1Am-2Am-3存储器组件中的

特殊功能存放器之一

返回

总线宽度与等待控制存放器—BWSCONSTi写高/低字节使能:1=使能;0=禁止〔表示SRAM映射在Banki时写高/低字节使能〕WSi等待:1=等待;0=禁止等待〔表示SRAM映射在Banki时等待〕DWi总线宽度:00=8位,01=16位,10=32位,11=不用DW0为Bank0的宽度:00=8位,01=16位,10=32位,11=不用〔DW0只读,不可写〕ENDIAN大小端模式:0=小端模式;1=大端模式存储器组件中的

特殊功能存放器之二

返回

内存通道控制存放器—BANKCONi存储器类型16:1514:1312:1110:87:65:4321:0ROM或SRAMMT=00TacsTcosTaccTochTcahTacpPMCFPDRAM或EDODRAMMT=01或10TrcdTcasTcpCANSDRAMMT=11TrcdCAN决定BANK6、7的类型nGCSi选择之前地址时钟个数0,1,2,4分页模式配置1,4,8,16个数据访问时钟个数1,2,3,4,6,8,10,14保持nOE时钟个数0,1,2,4,nGCSi选择前的保持时钟个数0,1,2,4RAS到CAS的延时时钟个数1,2,3,4页访问周期〔时钟个数〕2,3,4,6CAS脉冲宽度〔时钟个数〕1,2CAS预充电时间〔时钟个数〕1,2列地址位数8,9,10,11位选择nOE时钟个数0,1,2,4,RAS到CAS的延时时间1,2,3,4存储器组件中的

特殊功能存放器之三

返回

刷新控制存放器—REFRESH232221:2019:1817:1615:121110:0REFENTREFMDTrpTrcTchr000RefreshCounterREFEN刷新使能:0=禁止刷新,1=刷新

刷新模式:0=CBR(CASbeforeRAS)/自动刷新1=自刷新〔控制信号为电平〕行预充电时间DRAM:00=1.5个时钟01=2.5个时钟10=3.5个时钟11=4.5个时钟SDRAM:00=2个时钟01=3个时钟 10=4个时钟11=不支持SDRAMRC最小时间:00=4个时钟01=5个时钟10=6个时钟11=7个时钟CAS保持时间〔DRAM):00=1个时钟01=2个时钟10=3个时钟11=4个时钟刷新计数值:刷新周期=(211-刷新计数值+1)/MCLK存储器组件中的

特殊功能存放器之四

返回

Bank容量存放器—BANKSIZE在SDRAM访问周期SCLK使能位:0=禁止,1=允许。BK76MAPBANK6/7存储器容量大小:000=32M100=2M101=4M 110=8M432:0SCLKEN0BK76MAP存储器组件中的

特殊功能存放器之五

返回

SDRAM模式设置存放器—MRSRB6和MRSRB711:1098:76:432:0保留WBLTMCLBTBLWBL〔writeburstlength〕写突发脉冲长度:0为推荐值TM〔Testmode〕测试模式选择:00:由模式存放器设置01,10,11:保存CL〔CASlatency〕CAS发送时钟000=1个时钟 010=2个时钟011=3个时钟 其它=保存BT〔Bursttype〕突发类型:0:顺序〔推荐〕1:未用〔Burstlength〕突发长度:000:1,其余未用注意:1、如果代码在SDRAM中运行,不能重新配置MRSR存放器;2、所有的13个存储器控制器必须使用STMIA指令写入;3、在中止模式下,DRAM/SDRAM必须进入自刷新模式。Flash非易失性存储器

S3C44B0X内部没有存储器,因此必须采用总线方式扩展外部存储器,包括程序存储器和数据存储器。NANDFlashNORFlashFlash典型Flash芯片及与S3C44B0的连接程序存储器采用SST39VF160,它是1M*16位的Flash存储器芯片。

Flash的地址范围为0x00000000~0x001FFFFF

典型SDRAM芯片及与S3C44B0的连接

SDRAMHY57V651620B内部有4个1M×16的存储器阵列,所以容量为4×1M×16=4M*16=8MB。SDRAM必须放到BANK6开始的区域。

SDRAM地址范围为0x0C000000~0x0C7FFFFF。4.1.6JTAG接口1.

ARM公司提供的标准20脚JTAG仿真调试接口电路,芯片内部有JTAGCORE。2.S3C44B0X通过外部JTAG/ICE端口支持ARM标准的嵌入式在线仿真,共有四个管脚:TMS:测试模式选择TDI:测试数据输入TDO:测试数据输出TCK:测试时钟4.2端口组件原理及应用

1.处理器通过I/O口和外围硬件连接;2.ARM芯片的I/O口通常都是和其他引脚复用的;3.熟悉I/O口的功能,通过特殊功能存放器的配置对I/O口进行编程;4.S3C44B0有71个通用可编程多功能输入/输出引脚,共7类端口,如下所示:返回端口组件之

端口功能

一、双功能端口

A,B、D端口具有两种功能二、三功能端口

C,E、G端口具有三种功能三、四功能端口

F端口具有四种功能返回端口组件之

端口存放器每个端口都可以通过软件设置来满足各种各样的系统设置和设计要求。每个端口的功能通常都要在主程序开始前被定义。如果一个引脚的多功能没有使用,那么这个引脚将被设置为I/O端口。在引脚配置以前,需要对引脚的初始化状态进行设定来防止一些问题的出现。GPIOIISDIEINT5GPG5引脚配置引脚功能选择使用例如S3C44B0微控制器的引脚一般是多个功能复用,但是同一引脚在同一时刻只能使用其中一个功能,这可以通过设置PCONx存放器来选择。通过PCONG控制引脚功能端口组件之

端口存放器(P49)1.端口配置存放器:PCONA~PCONG决定A~G各相应端口每个引脚的功能。2.端口数据存放器:PDATA~PDATG存放I/O端口的数据。3.端口上拉存放器:PUPC~PUPG 决定端口是否内部接通上拉电阻。 0=上拉;1=禁止4.特殊上拉电阻控制存放器:SPUPR 决定对数据总线引脚是否内部接上拉电阻。 0=上拉;1=禁止返回例题:例1:设置A端口均为输出端口,并设置GPA4,GPA6为1,其他引脚均为0;

答案:PCONA=0x0;PDATA=0x50;PCONA为10位,当PCONAi=0,那么PAi设置为输出端口,例题:例2:设置C端口均为数据总线,并读取数据总线的值,当值为0x80时,让变量i=0,否那么i=1;答案:PCONC=0xAAAAAAAA;if(PDATC==0x80)i=0;elsei=1;PCONC为32位,每两位对应一个引脚,当PCONCi=10,表示数据线简易键盘接口应用〔查询方式〕独立键盘接口设计键盘接口C语言代码voidPortInit(void){//端口初始化函数,本函数只针对图6.18电路进行了键盘初始化

rPCONG=rPCONG&0x0f;//设置PG2~PG7为输入功能rPUDG=rPUDG|0xfC; //因为电路中PG2~PG7端口已接外部上拉,所以内部上拉可不使用}uint8GetKey(void)//读按键程序{KeyValue=0;if((rPDATG&(1<<2))==0)//判断KEY1键是否按下

{longdelay(3);//延时函数,用于键盘消抖

if((rPDATG&(1<<2))==0)//再次判断KEY1键是否按下

KeyValue=1;}elseif((rPDATG&(1<<3))==0)//判断KEY2键是否按下

{longdelay(3);if((rPDATG&(1<<3))

温馨提示

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

评论

0/150

提交评论