1、S3C44B0X嵌入式微处理器嵌入式微处理器本课程的主要内容本课程的主要内容uS3C44B0X的功能、内特性和外特性。的功能、内特性和外特性。u内特性主要讲述内特性主要讲述S3C44B0X的组成、结构和技术;的组成、结构和技术;u外特性主要讲述外特性主要讲述S3C44B0X的引脚定义、功能等。的引脚定义、功能等。u1.片上外设简介片上外设简介lARM7TDMI内核:内核:0.25um工艺,工艺,2.5V,SAMBA II总线,总线,主频主频66MHz;lCache:集成:集成8KB指令指令/数据数据Cache;l存储器控制器:存储器控制器:FP/EDO/SDRAM控制,片选逻辑;控制,片选逻辑
2、;lLCD控制器:支持控制器:支持256色色DSTN,一个,一个LCD专用专用DMA通道;通道;lDMA控制器:控制器:2个通用个通用DMA通道;通道;2个通道外设个通道外设DMA;l串行控制器:串行控制器:2个个UART;1个个SIO;1个个I2C;1个个IrDA;l音频流控制器:音频流控制器:1个多主的个多主的IIS;lPWM控制器:控制器:5个个PWM定时器,定时器,1个内部定时器;个内部定时器;l看门狗控制器:看门狗控制器:1个看门狗定时器;个看门狗定时器;l通用通用IO口控制器:口控制器:71个通用编程个通用编程IO口,口,8个外部中断源;个外部中断源;u1.片上外设简介片上外设简介
3、lADC控制器:控制器:8路路10位位ADC;l具有日历功能的具有日历功能的RTC;lPLL时钟发生器;时钟发生器;u2.电压范围电压范围l内核:内核:2.5V;ll I/O:3.0V3.6V;l功耗控制模式:正常、低、休眠、停止;功耗控制模式:正常、低、休眠、停止;u3.运行频率运行频率l最高运行频率:最高运行频率:66MHz;u4.封装形式封装形式l160LQFP/160FBGA;u1.片上外设简介片上外设简介lADC控制器:控制器:8路路10位位ADC;l具有日历功能的具有日历功能的RTC;lPLL时钟发生器;时钟发生器;u2.电压范围电压范围l内核:内核:2.5V;ll I/O:3.0
4、V3.6V;l功耗控制模式:正常、低、休眠、停止;功耗控制模式:正常、低、休眠、停止;u3.运行频率运行频率l最高运行频率:最高运行频率:66MHz;u4.封装形式封装形式l160LQFP/160FBGA;uS3C44B0X的内部结构如图的内部结构如图6.1所示。所示。图图6.:S3C44B0X的内特性的内特性ARM7TDMI核核CPU单元单元JTAG控制器控制器JTAG写缓冲器写缓冲器8KB Cache时钟发生时钟发生器器PLL系统总线系统总线总线仲裁器总线仲裁器电源管理电源管理看门狗定时看门狗定时器器系系统统总总线线桥桥&仲仲裁裁/BDMA(2路路)ROM/SRAMDRAM/SDRAMLC
5、DDMA|LCDCONT中断控制器中断控制器IVCZDMA(2路)路)外围设备总线外围设备总线实时时钟实时时钟RTCADCAIN7:0GPIO控制器控制器I2C控制器控制器IIS控制器控制器UART0/1同步输入同步输入/输出输出PWM定时器定时器04,5通用输入输出通用输入输出GPIO10M32.768Ku(1)系统存储管理系统存储管理l工作模式:工作模式:支持大端模式、小端模式;支持大端模式、小端模式;可以通过外部引脚选择,默认为小端模式;可以通过外部引脚选择,默认为小端模式;l地址空间:地址空间:包含包含8个独立地址空间(个独立地址空间(BANK07););每个地址空间为每个地址空间为3
6、2MB,合计,合计256MB;l对齐方式:所有地址空间都可以对齐方式:所有地址空间都可以8位、位、16位、位、32位对齐;位对齐;l存储类型:存储类型:BANK0-5起始地址固定但大小可编程的地址空间,可用于存储器(起始地址固定但大小可编程的地址空间,可用于存储器(ROM、SRAM)和)和IO口扩展;口扩展;BANK6-7起始地址固定、大小都可编程的地址空间,可用于起始地址固定、大小都可编程的地址空间,可用于ROM、SRAM、DRAM、SDRAM等存储器;等存储器;BANK0的的0 x01C000000 x01FFFFFF固定为片内特殊功能寄存器空间固定为片内特殊功能寄存器空间u(2)Cach
7、e和片内和片内SRAMl4路组相连统一的路组相连统一的8KB指令指令/数据数据Cache;l未做未做Cache使用的使用的0/4/8KB Cache空间可作为空间可作为SRAM使用;使用;l具有具有4级深度的写缓冲;级深度的写缓冲;u(3)时钟和功耗管理时钟和功耗管理l片上片上PLL使得使得MCU的工作时钟频率最高为的工作时钟频率最高为66MHz;l时钟可以通过软件选择性地返回每个功能块;时钟可以通过软件选择性地返回每个功能块;l功耗模式:功耗模式:正常模式:正常运行模式;正常模式:正常运行模式;低速模式:不带低速模式:不带PLL低频时钟;低频时钟;休眠模式:只使休眠模式:只使CPU的时钟停止
8、;的时钟停止;停止模式:所有时钟都停止;停止模式:所有时钟都停止;lEINT7:0或或RTC警告中断可使功耗管理从停止模式唤醒;警告中断可使功耗管理从停止模式唤醒;u(4)中断控制器中断控制器l30个中断源个中断源l中断源分类说明中断源分类说明表表6.1:中断源列表:中断源列表分类分类数量数量说明说明看门狗看门狗1个个 WDT计数器溢出中断计数器溢出中断定时器定时器6个个 PWM定时器定时器0-定时器定时器5计数器溢出中断计数器溢出中断UART6个个 UART0-1错误中断、错误中断、UART0-1接收中断、接收中断、UART0-1发送中断发送中断外部中断外部中断8个个 独立外部中断独立外部中
9、断0-3、共享外部中断、共享外部中断4567DMA中断中断 4个个 ZDMA中断中断0-1、BDMA中断中断0-1RTC中断中断2个个 RTC报警中断、报警中断、RTC滴答中断滴答中断ADC中断中断1个个 ADC中断中断I中断中断1个个 IIC中断中断SIO中断中断1个个 SIO中断中断u(4)中断控制器中断控制器l30个中断源;个中断源;l支持矢量支持矢量IRQ中断;中断;l外部中断信号支持电平外部中断信号支持电平/边沿两种触发方式;边沿两种触发方式;l可编程电平可编程电平/边沿极性;边沿极性;l支持支持FIQ中断;中断;u(5)带带PWM(脉宽可调)的定时器(脉宽可调)的定时器l5个个16
10、位的位的PWM定时器;定时器;1个个16位基于位基于DMA或基于中断的内部或基于中断的内部定时器;定时器;l可编程工作周期、频率、极性;可编程工作周期、频率、极性;l死区(死区(Dead-zone)产生器;)产生器;l支持外部中断源;支持外部中断源;u(6)实时时钟实时时钟RTCl工作模式:年月日时分秒毫秒星期;工作模式:年月日时分秒毫秒星期;l运行频率:运行频率:32.768KHz;lCPU唤醒的警告中断;唤醒的警告中断;l时间滴答(时间滴答(Time Tick)中断;)中断;u(7)通用输入通用输入/输出端口输出端口l8个外部中断端口;个外部中断端口;l71个多功能复用个多功能复用GPIO
11、端口;端口;u(8)UARTl2个基于个基于DMA或基于中断的或基于中断的UART;l支持支持5、6、7、8位数据传输;位数据传输;l传输过程中,支持硬件握手逻辑;传输过程中,支持硬件握手逻辑;l波特率可编程;波特率可编程;l支持支持IrDA1.0(115.2kbps););l用于回路检测模式;用于回路检测模式;l每个通道有两个内部每个通道有两个内部32B FIFO收发缓冲器;收发缓冲器;u(9)DMA控制器控制器l2路通用的无路通用的无CPU干涉的干涉的DMA控制器;控制器;l2路桥式路桥式DMA(外设(外设DMA)控制器;)控制器;l支持支持IO到内存、内存到到内存、内存到IO、IO到到I
12、O的桥式的桥式DMA传送;传送;lDMA请求方式:软件,内部请求方式:软件,内部4种功能块(种功能块(UART、SIO、实时、实时器、器、IIS),外部引脚;),外部引脚;lDMA间的优先级可编程;间的优先级可编程;l突发模式提高了突发模式提高了FPDRAM、EDODRAM和和SDRAM的传送速率;的传送速率;l支持内存到外设的支持内存到外设的fly-by模式和外设到内存的传送模式;模式和外设到内存的传送模式;u(10)ADC控制器控制器l8通道多路通道多路ADC;l最高速率:最高速率:100ksps/10位;位;u(11)LDC控制器控制器l支持彩色支持彩色/单色单色/灰度灰度LCDl支持单
13、扫描和双扫描显示;支持单扫描和双扫描显示;l支持虚拟显示功能;支持虚拟显示功能;l系统内存可作为显示内存;系统内存可作为显示内存;l专用专用DMA用于从系统内存提取图像数据;用于从系统内存提取图像数据;l可编程屏幕大小;可编程屏幕大小;l灰度灰度16级;级;l彩色模式:彩色模式:256色;色;u(12)WDT看门狗定时器看门狗定时器l16位看门狗定时器;位看门狗定时器;l定时中断请求,或系统超时复位;定时中断请求,或系统超时复位;u(13)I2C总线控制器总线控制器l1个基于中断操作的多主个基于中断操作的多主I2C总线;总线;l8位双向串行数据收发器;标准工作模式:位双向串行数据收发器;标准工
14、作模式:100kbps;快速;快速工作模式:工作模式:400kbps;u(14)IIS(音频接口)总线控制器(音频接口)总线控制器l1路基于路基于DMA操作的音频操作的音频IIS总线接口;总线接口;l每个通道每个通道8/16位数据传送;位数据传送;l支持支持MSB可调整的数据格式;可调整的数据格式;u(15)SIO(同步串行(同步串行I/O)总线控制器)总线控制器l1路基于路基于DMA的或基于中断的的或基于中断的SIO;l波特率可编程;波特率可编程;l支持支持8位位SIO串行数据收发;串行数据收发;u(1)引脚分类:如图引脚分类:如图6.2所示。所示。u(3)总线控制类总线控制类l主要与总线扩
15、展(包括存储器扩展和主要与总线扩展(包括存储器扩展和IO口扩展)相关信号。口扩展)相关信号。表表6.2:S3C44B0X引脚定义引脚定义-总线控制类总线控制类信号信号类型类型 描述描述1:0I1:000011011设置模式设置模式nGCS0 DB=8位位 nGCS0 DB=16位位 nGCS0 DB=32位位TestADDR24:0 O地址总线。地址总线。DATA31:0 I/O数据总线:存储器存取时,可编程为数据总线:存储器存取时,可编程为/32位。位。nGCS7:0O通用片选,通用片选,nGCS7:0=BANK7 0,nGCSn有效时有效时BANKn被选中。被选中。nWEO写使能,指示当前
16、总线周期为写周期。写使能,指示当前总线周期为写周期。nWBE3:0 O写字节使能,控制存储器存取。写字节使能,控制存储器存取。nBE3:0O高字节高字节/低字节使能,低字节使能,SRAM使用。使用。nOEO输出使能,指示当前总线周期为读周期。输出使能,指示当前总线周期为读周期。nXBREOI总线保持请求,允许另一个主控器请求本地总线控制。总线保持请求,允许另一个主控器请求本地总线控制。nXBACKO总线保持应答,指示总线保持应答,指示S44B0X释放总线,另一个主控器获得总线控制权。释放总线,另一个主控器获得总线控制权。nWAITIL请求插入一个等待周期。请求插入一个等待周期。ENDIANI选
17、择存储器模式:选择存储器模式:1为大端模式(为大端模式(Big Endian)、)、0为小端模式(为小端模式(Little Endian)符号描述符号描述I:输入;:输入;O:输入;:输入;L:低电平;:低电平;H高电平;高电平;U:上升沿;:上升沿;D:下降沿;:下降沿;P:脉冲;:脉冲;u(4)存储器信号存储器信号l主要是与主要是与SDRAM接口相关的信号。接口相关的信号。表表6.3:S3C44B0X引脚定义引脚定义-存储器信号存储器信号信号信号类型类型 描述描述nRAS1:0 O行地址锁存信号行地址锁存信号nCAS3:0 O列地址锁存信号列地址锁存信号nSRASOSDRAM行地址锁存信号
18、行地址锁存信号nSCASOSDRAM列地址锁存信号列地址锁存信号nSCS1:0 OSDRAM片选信号片选信号DOM 3:0 OSDRAM数据输入输出屏蔽信号数据输入输出屏蔽信号SCLKOSDRAM时钟时钟SCKEOSDRAM时钟使能信号时钟使能信号u(5)LCD信号信号l主要是与主要是与LCD接口相关的信号。接口相关的信号。u(6)PWM信号信号l主要是与主要是与PWM接口相关的信号。接口相关的信号。表表6.4:S3C44B0X引脚定义引脚定义-LCD信号信号信号信号类型类型 描述描述VD7:0 OLCD数据总线数据总线VFRAME OLCD帧信号帧信号VMO交替改变行列电压极性交替改变行列电
19、压极性VLINEOLCD行信号行信号VCLKOLCD时钟信号时钟信号表表6.5:S3C44B0X引脚定义引脚定义-PWM信号信号信号信号类型类型 描述描述TOUT4:0 O定时器输出定时器输出4:0TCLKI外部时钟输入外部时钟输入u(7)中断控制信号中断控制信号l主要是外部中断相关的信号。主要是外部中断相关的信号。u(8)DMA信号信号l主要是主要是DMA操作相关的信号。操作相关的信号。S44B0X引脚定义:中断控制信号引脚定义:中断控制信号信号信号类型类型 描述描述EINT7:0 I外部中断请求输入外部中断请求输入7:0表表6.6:S3C44B0X引脚定义引脚定义-DMA信号信号信号信号类
20、型类型 描述描述nXDREQ4:0 I外部外部DMA请求信号请求信号nXDACK4:0 O外部外部DMA请求应答信号请求应答信号u(9)UART信号信号l主要是与主要是与UART接口相关的信号。接口相关的信号。u(10)SIO总线信号总线信号l主要是与主要是与SIO总线相关的信号。总线相关的信号。表表6.7:S3C44B0X引脚定义引脚定义-UART信号信号信号信号类型类型 描述描述RxD1:0IUART接收数据信号线接收数据信号线TxD1:0OUART发送数据信号线发送数据信号线nCTS1:0 I清除发送清除发送nRTS1:0 O请求发送请求发送表表6.10:S3C44B0X引脚定义引脚定义
21、-SIO总线信号总线信号信号信号类型类型 描述描述SIORxD ISIO接收数据信号线接收数据信号线SIOTxD OSIO发送数据信号线发送数据信号线SIOCKIOSIO时钟时钟SIORDYIO当当DMA完成完成SIO操作时,操作时,SIO的握手信号的握手信号u(11)IIS总线控制类总线控制类l主要是与主要是与IIS总线相关的信号。总线相关的信号。u(12)I2C总线信号总线信号l主要是与主要是与IIC总线相关的信号。总线相关的信号。表表6.9:S3C44B0X引脚定义引脚定义-IIS总线信号总线信号信号信号类型类型 描述描述IISLRCKIOIIS总线通道选择时钟总线通道选择时钟IISDO
22、OIIS总线串行数据输出总线串行数据输出IISDIOIIS总线串行数据输入总线串行数据输入IISCLKIOIIS总线串行时钟总线串行时钟CODECCLK OCODEC系统时钟系统时钟表表6.8:S3C44B0X引脚定义引脚定义-I总线控制类总线控制类信号信号类型类型 描述描述IICSDA IOI总线数据总线数据IICSCL IOI总线时钟总线时钟u(13)ADC信号信号l主要是与主要是与ADC接口相关的信号。接口相关的信号。u(14)GPIO信号信号l主要是通用主要是通用IO相关的信号。相关的信号。表表6.11:S3C44B0X引脚定义引脚定义-ADC信号信号信号信号类型类型 描述描述AIN7
23、:0 AIADC输入输入7:0AREFTAIADC.Top.VrefAREFBAIADC.Bottom.VrefAVCOMAIADC.Common.Vref表表6.12:S3C44B0X引脚定义引脚定义-GPIO总线信号总线信号信号信号类型类型 描述描述P70:0 IO通用输入输出,一些端口仅仅用于输出通用输入输出,一些端口仅仅用于输出符号描述符号描述I:输入;:输入;O:输入;:输入;L:低电平;:低电平;H高电平;高电平;U:上升沿;:上升沿;D:下降沿;下降沿;P:脉冲;:脉冲;u(15)复位和时钟信号复位和时钟信号l主要是与复位、时钟相关的信号。主要是与复位、时钟相关的信号。表表6.1
24、3:S3C44B0X引脚定义引脚定义-复位和时钟信号复位和时钟信号信号信号类型类型 描述描述nRESET ST L 复位信号,至少复位信号,至少4个个MCLK的低电平的低电平3:2I时钟时钟产生方法产生方法000110,11XTAL0,和和PLLon决定决定EXTCLK和和PLLon决定决定芯片测试芯片测试EXTCLK I3:2=01时为外部中断源,未使用时,必须接高电平时为外部中断源,未使用时,必须接高电平XTAL0AI系统时钟晶振输入,未使用时,必须接高电平系统时钟晶振输入,未使用时,必须接高电平EXTAL0 AO系统时钟晶振输出,是系统时钟晶振输出,是XTAL0反相输出,未使用反相输出,
25、未使用时须浮时须浮空空PLLCAP AI系统时钟系统时钟PLL滤波电容滤波电容XTAL1AI实时时钟晶振输入实时时钟晶振输入EXTAL1 AO实时时钟晶振输出,是实时时钟晶振输出,是XTAL1反相输出反相输出CLKoutOfout或或fpllo符号描述符号描述I:输入;:输入;O:输入;:输入;L:低电平:低电平;H高电平;高电平;U:上升沿;:上升沿;D:下降沿;:下降沿;P:脉冲;:脉冲;u(16)JTAG信号信号l主要是与主要是与JTAG接口相关的信号。接口相关的信号。u(17)电源类电源类l主要是与电源与地相关的信号。主要是与电源与地相关的信号。表表6.14:S3C44B0X引脚定义引
26、脚定义-JTAG信号信号信号信号类型类型描述描述nTRSTITAP控制器复位,接控制器复位,接10K上拉电阻上拉电阻TMSITAP控制器模式选择,接控制器模式选择,接10K上拉电阻上拉电阻TCKITAP控制器时钟,接控制器时钟,接10K上拉电阻上拉电阻TDIITAP控制器数据输入,接控制器数据输入,接10K上拉电阻上拉电阻表表6.15:S3C44B0X引脚定义引脚定义-电源类电源类信号信号类型类型描述描述VDDP内核逻辑内核逻辑VDD=2.5VVSSP内核逻辑内核逻辑VSSVDDIOPIO端口端口VDDIO=3.3VVSSIOPIO端口端口VSSIORTCVDDPRTCVDD=2.5V/3.0
27、V,不支持,不支持3.3VVDDADCPVDDADC=2.5VVSSADCPVSSADCuS3C44B0X包含包含8个独立地址空间:个独立地址空间:l从从BANK0到到BANK7,每个,每个BANK为为32MB,合计,合计256MB。l8个个BANK6-7可扩展为可扩展为ROM、SRAM、DRAM、SDRAM等存储器等存储器类型,涵盖了常用的存储类型。类型,涵盖了常用的存储类型。lIO设备可以影射到存储空间进行管理。设备可以影射到存储空间进行管理。u1.存储空间定义存储空间定义lS3C44B0X存储空间划分如图存储空间划分如图6.3所示。所示。u1.存储空间定义:如图存储空间定义:如图6.3所
28、示。所示。0 x10000000ROM/DRAM/SDRAM:nGCS732MB:BANK7/16/32MB0 x0E000000ROM/DRAM/SDRAM:nGCS632MB:BANK6/16/32MB0 x000000ROM:nGCS532MBBANK50 x000000ROM:nGCS432MBBANK40 x08000000ROM:nGCS332MBBANK30 x06000000ROM:nGCS232MBBANK20 x04000000ROM:nGCS132MBBANK10 x02000000Special Function Registers4MBSFR0 x00000ROM:n
29、GCS028MBBANK00 x00000000图图6.3:S3C44B0X复位后的存储器地址分配复位后的存储器地址分配u2.BANK6BANK7的地址分配的地址分配表表6.16:BANK6BANK7的地址分配的地址分配地址地址/MB 2481632BANK6起始地址起始地址 0 x0000000 0 x0000000 0 x00000000 x00000000 x0000000结束地址结束地址 0 x1FFFFF 0 x3FFFFF 0 x7FFFFF0 x0CFFFFFF 0 x0DFFFFFFBANK7起始地址起始地址 0 x2000000 0 x4000000 0 x80000000
30、x0D0000000 0 x0E0000000结束地址结束地址 0 x3FFFFF 0 x7FFFFF 0 x0CFFFFFF 0 x0DFFFFFF 0 x0FFFFFFF说明说明BANK7与与BANK6大小相同,地址连续大小相同,地址连续u3.存储器控制器的功能描述存储器控制器的功能描述l主要介绍主要介绍S3C44B0X存储器控制器存储器控制器MMC的功能、特殊功能寄的功能、特殊功能寄存器存器SFR、控制方法等。、控制方法等。l大端模式、小端模式选择大端模式、小端模式选择处理器复位时,通过引脚处理器复位时,通过引脚ENDIAN选择大端模式、小端模式。选择大端模式、小端模式。表表6.17:选
31、择存储器模式:选择存储器模式Endian模式模式条件条件0小端模式(小端模式(Little Endian)Endian电阻下拉到电阻下拉到VSS1大端模式(大端模式(Big Endian)Endian电阻上拉到电阻上拉到VDDu3.存储器控制器的功能描述存储器控制器的功能描述lBANK0总线宽度总线宽度BANK0是启动是启动ROM所在的空间(映射地址为所在的空间(映射地址为0 x00000000),所以必须),所以必须在第一次访问在第一次访问ROM前设置前设置BANK0的数据宽度;的数据宽度;BANK0的数据宽度引脚由的数据宽度引脚由OM1:0选择;选择;表表6.18:BANK0总线宽度选择总
32、线宽度选择OM1OM0条件条件008位位0116位位1032位位11测试测试u3.存储器控制器的功能描述存储器控制器的功能描述lBANK0总线宽度总线宽度uBANK0的数据宽度与地址连线表的数据宽度与地址连线表表表6.19:BANK0总线宽度与地址连线总线宽度与地址连线存储器地址线存储器地址线S44B0X地址线地址线8位数据宽度位数据宽度S44B0X地址线地址线16位数据宽度位数据宽度S44B0X地址线地址线32位数据宽度位数据宽度A0A0(字节寻址)(字节寻址)A1(半字寻址)(半字寻址)A2(字寻址)(字寻址)A1A1A2A3A2A2A3A4A3A3A4A5uS3C44B0X的存储控制器具
33、有的存储控制器具有13个个SFR,这,这13个个SFR控制着控制着S3C44B0X存储器的功能和操作方法,下面存储器的功能和操作方法,下面详细描述其功能和配置方法。主要包括:详细描述其功能和配置方法。主要包括:lSFR列表:包括列表:包括SFR的名称、地址、状态、功能、初始值。的名称、地址、状态、功能、初始值。l单个单个SFR特性:包括特性:包括SFR的位名称、位地址、位功能、初始的位名称、位地址、位功能、初始值。值。u存储器控制器的存储器控制器的13个个SFR列表列表表表6.20:存储器控制器的:存储器控制器的13个个SFR寄存器名称寄存器名称地址地址状态状态 功能功能初始值初始值BWSCO
34、N0 x80000 R/W 总线宽度和等待状态的控制寄存器总线宽度和等待状态的控制寄存器 0 x000000BANKCON0 0 x80004 R/W Bank 0 控制寄存器控制寄存器0 x000700BANKCON1 0 x80008 R/W Bank 1 控制寄存器控制寄存器0 x000700BANKCON2 0 xR/W Bank 2 控制寄存器控制寄存器0 x000700BANKCON3 0 x80010 R/W Bank 3 控制寄存器控制寄存器0 x000700BANKCON4 0 x80014 R/W Bank 4 控制寄存器控制寄存器0 x000700BANKCON5 0 x
35、80018 R/W Bank 5 控制寄存器控制寄存器0 x000700BANKCON6 0 xR/W Bank 6 控制寄存器控制寄存器0 x018008BANKCON7 0 x80020 R/W Bank 7 控制寄存器控制寄存器0 x018008REFREASH0 x80024 R/W DRAM/SDRAM 刷新控制寄存器刷新控制寄存器0 xAC0000BANKSIZE0 x80028 R/W 存储器大小配置寄存器存储器大小配置寄存器0 x000000MRSRB60 xR/W Bank6 模式设置寄存器模式设置寄存器0 x*MRSRB70 x80030 R/W Bank7 模式设置寄存器
36、模式设置寄存器0 x*说明说明在在C语言中,可以把寄存器的地址、初始值等定义成符号常量,方便编程使用。如:语言中,可以把寄存器的地址、初始值等定义成符号常量,方便编程使用。如:#dedinearBWSCON 0 x80000;/前缀前缀r表示寄存器,前缀表示寄存器,前缀a表示地址表示地址#dedinecrBWSCON 0 x00000000;/前缀前缀r表示寄存器,前缀表示寄存器,前缀c表示常量表示常量u特殊功能寄存器特殊功能寄存器SFR的详细描述见教材。的详细描述见教材。u要求:在掌握要求:在掌握S3C44B0X存储器控制寄存器的基础存储器控制寄存器的基础上,进一步掌握应用汇编语言对其编程配
37、置的方法。上,进一步掌握应用汇编语言对其编程配置的方法。u实例实例6.2:存储器配置:配置:存储器配置:配置13个存储控制寄存器个存储控制寄存器,只能用汇编编写;,只能用汇编编写;配置配置13个存储控制寄存器个存储控制寄存器LDRR0,=SMRDATALDMIA R0,R1-R13LDRR0,=0 x80000;BWSCON ADRRESSSTMIA R0,R1-R13SMRDATA:;定义配置值定义配置值.LONG 0 x22221210;BWSCON.LONG 0 x00000600;GCS0.LONG 0 x00000700;GCS1.LONG 0 x00000700;GCS2.LONG
38、 0 x00000700;GCS3.LONG 0 x00000700;GCS4.LONG 0 x00000700;GCS5u实例实例6.2:存储器配置:配置:存储器配置:配置13个存储控制寄存器个存储控制寄存器,只能用汇编编写;,只能用汇编编写;配置配置13个存储控制寄存个存储控制寄存器器(续)(续).LONG 0 x;GCS6;DRAMTrcdTcas Tcp CAN32110bit.LONG 0 x;GCS7,;DRAM.LONG 0 x00960000;REFRESHREFEN TREFMD Trp Trc Tchr10353.LONG 0 x00000000;BANK SIZE.LON
39、G 0 x00000020;MRSR6(CL=2).LONG 0 x00000020;MRSR7(CL=2)描述描述u实例实例6.3:存储器读写,汇编语言程序:存储器读写,汇编语言程序:存储器读写,存储器读写,cRWramtest.scRWramtest:LDRR2,=0 x010000LDMIAR3,=0 x55AA55AASTRR3,R2;向向0 x010000地址写入一个字地址写入一个字LDRR3,R2;从从0 x010000地址读取一个字地址读取一个字LDRR2,=0 x010000LDRHR3,R2;从从0 x010000地址读取一个半字地址读取一个半字STRHR3,R2,#2;向向
40、0 x010002地址写入一个半字地址写入一个半字LDRR2,=0 x010000LDRBR3,R2;从从0 x010000地址读取一个字节地址读取一个字节STRBR3,R2,#1;向向0 x010001地址写入一个字节地址写入一个字节描述描述 用用LDR和和STR指令,从已经初始化的指令,从已经初始化的RAM读写一个字节读写一个字节/半子半子/字字u实例实例6.4:存储器读写,:存储器读写,C语言程序:语言程序:存储器读写,存储器读写,cRWramtest.cvoid cRWramtest(void)unsigned long*ptrw=0 x010200;/定义一个长指针并赋初值定义一个长
41、指针并赋初值unsigned short*ptrh=0 x010200;/定义一个短指针并赋初值定义一个短指针并赋初值unsigned char*ptrb=0 x010200;/定义一个字符指针并赋初值定义一个字符指针并赋初值unsigned longtmpw;/定义一个长整型变量定义一个长整型变量unsigned shorttmph;/定义一个短整型变量定义一个短整型变量unsigned chartmpb;/定义一个字符变量定义一个字符变量*ptrw=0 x55AA55AA;tmpw=*ptrw;/长字读长字读*ptrw=tmpw;/长字写长字写tmph=*ptrh;/半字读半字读*ptrh
42、=tmph;/半字写半字写tmpb=*ptrb;/字节读字节读*ptrb=tmpb;/字节写字节写uS3C44B0X具有具有71个通用可编程多功能输入个通用可编程多功能输入/输出脚输出脚GPIO。u每个每个GPIO都可能是一个多功能引脚,都可以通过都可能是一个多功能引脚,都可以通过GPIO的的SFR进行配置。进行配置。u1.GPIO的功能概述的功能概述lS3C44B0X有有71个通用可编程个通用可编程GPIO端口,共分为端口,共分为7类类l1个个10位输入位输入/输出端口:输出端口:PortA;l1个个11位输入位输入/输出端口:输出端口:PortB;l1个个16位输入位输入/输出端口:输出端
43、口:PortC;l2个个9位输入位输入/输出端口:输出端口:PortE、PortF;l2个个8位输入位输入/输出端口:输出端口:PortD、PortG;u2.GPIO的复用技术的复用技术lS3C44B0X的的I/O端口引脚为多功能复用引脚。如果引脚的端口引脚为多功能复用引脚。如果引脚的多功能没有使用,那么默认该引脚为多功能没有使用,那么默认该引脚为I/O引脚。引脚。l采用多路开关实现采用多路开关实现GPIO的多功能复用。通过多路开关,控的多功能复用。通过多路开关,控制引脚的功能选择。如图制引脚的功能选择。如图6.5所示:所示:l图图6.5中的中的PINn有有3种选择,因此需要种选择,因此需要2
44、位控制信号。位控制信号。l当开关接在当开关接在“1”上时,上时,PINn是是GPIO;l当开关接在当开关接在“2”上时,上时,PINn是是TxD0;l当开关接在当开关接在“3”上时,上时,PINn是是PWM1输出。输出。u3.GPIO的配置方案的配置方案l实例实例6.5:配置表如表:配置表如表6.28所示。所示。表表6.28:配置:配置IO端口控制寄存器端口控制寄存器端口端口功能功能0功能功能1功能功能2功能功能3PortAPA9PA1OADDR24ADDR16PA0OADDR0PortBPB10PB6OnGCS5 nGCS1PB5OnWBE3:nBE3:DQM3PB4OnWBE2:nBE2:
45、DQM2PB3OnSRAS:nCAS3PB2OnSCAS:nCAS2PB1OSCLKPB0OSCKEu3.GPIO的配置方案的配置方案l实例实例6.5:配置表如表:配置表如表6.28所示。所示。表表6.28:配置:配置IO端口控制寄存器端口控制寄存器端口端口功能功能0功能功能1功能功能2功能功能3PortCPC15IODATA31nCTS0PC14IODATA30nRTS0PC13IODATA29RxD1PC12IODATA28TxD1PC11IODATA27nCTS1PC10IODATA26nRTS1PC9IODATA25nXDREQ1PC8IODATA24nXDACK1PC7 PC4IOD
46、ATA23 DATA20VD4VD7PC3IODATA19IISCLKPC2IODATA18IISDIPC1IODATA17IISDOPC0IODATA16IISLRCKu3.GPIO的配置方案的配置方案l实例实例6.5:配置表如表:配置表如表6.28所示。所示。表表6.28:配置:配置IO端口控制寄存器端口控制寄存器端口端口功能功能0功能功能1功能功能2功能功能3PortDPD7IOVFRAMEPD6IOVMPD5IOVLINEPD4IOVCLKPD3 PD0IOVD3VD0PortEPE8EndianCODECLKIOPE7IOTOUT4VD7PE6IOTOUT3VD6PE5IOTOUT2
47、TCLKPE4IOTOUT1TCLKPE3IOTOUT0PE2IORxD0PE1IOTxD0PE0IOFplloFoutu3.GPIO的配置方案的配置方案l实例实例6.5:配置表如表:配置表如表6.28所示。所示。表表6.28:配置:配置IO端口控制寄存器端口控制寄存器端口端口功能功能0功能功能1功能功能2功能功能3PortFPF8IOnCTS1SIOCKIISCLKPF7IORxD1SIORxDIISDIPF6IOTxD1SIORDYIISDOPF5IOnRTS1SIOTxDIISLRCKPF4IOnXBREQnXDREQ0PF3IOnXBACKnXDACK0PF2IOnWAITPF1IOI
48、2CSDAPF0IOI2CSCLPortGPG7IOIISLRCKEINT7PG6IOIISDOEINT6PG5IOIISDIEINT5PG4IOIISCLKEINT4PG3IOnRTS0EINT3PG2IOnCTS0EINT2PG1IOVD5EINT1PG0IOVD4EINT0u3.GPIO的配置方案的配置方案l实例实例6.5:配置表如表:配置表如表6.28所示。所示。表表6.28:配置:配置IO端口控制寄存器端口控制寄存器端口端口功能功能0功能功能1功能功能2功能功能3说明说明 复位后,复位后,S3C44B0X默认带有下划线的功能;默认带有下划线的功能;nRESET=L有效时时,有效时时,
49、Endian(PE8)才会被使用;)才会被使用;PG0PG7:在掉电模式下是系统的唤醒信号;在中断模式下是外中断信号;:在掉电模式下是系统的唤醒信号;在中断模式下是外中断信号;GPIO可以配置成功能可以配置成功能0(I、O、IO)、功能)、功能1、功能、功能2、功能、功能3等功能,因此需要等功能,因此需要3位选;位选;符号:符号:I-输入;输入;O-输入;输入;L-低电平;低电平;H-高电平;高电平;U-上升沿;上升沿;D-下降沿;下降沿;P-脉冲;脉冲;uS3C44B0X的的GPIO端口是通过端口是通过SFR进行配置的,因进行配置的,因此必须掌握此必须掌握GPIO端口功能和端口功能和SFR的
50、配置方法。的配置方法。uS3C44B0X具有具有22个个GPIO端口端口SFR。u每个端口都会有一个每个端口都会有一个l配置寄存器配置寄存器l数据寄存器数据寄存器l上拉寄存器等上拉寄存器等l如表如表6.29所示。所示。uGPIO端口的端口的22个个SFR列表列表表表6.29:GPIO端口的端口的22个个SFR列表列表寄存器名称寄存器名称地址地址状态状态功能功能初始值初始值PCONA0 x01D20000 R/W Port A的引脚配置寄存器的引脚配置寄存器0 x3ffPDATA0 x01D20004 R/W Port A的数据寄存器的数据寄存器Undef.PCONB0 x01D20008 R/