mini2440原理图
- 格式:pdf
- 大小:167.92 KB
- 文档页数:9


mini2440的组成结构
白色部分为CPU内部寄存器,黄色部分为外设寄存器,绿色部分为存储控制器所接外设,红色部分为外设
一、S3C2440有31个通用寄存器和6个程序状态,如白色那部分
访问这些寄存器直接使用它们的名字,如:
1.msr cpsr_c,#0xd2
2.ldr r0,=pWTCON
二、S3C2440是32位的,2的32次方得知该CPU的地址空间为4G,即该CPU可访问4G 大小的范围。
1、绿色那部分为存储控制器所接外设地址空间,大小为1G,存在于CPU外部,由于存放
数据与程序用的,CPU可通过地址线和数据线从中读取数据。
其中存储控制器所接外设的地址空间如下表:
2、黄色那部分为外设寄存器,大小为3G,存在于外设控制器内部,即在这些寄存器上写入一些数据,则可控制相应外设的行为,而访问这些寄存器得通过具体的地址来访问(因为S 3C2440是使用统一编址的),如:
1.ldr r0, =pWTCON /* 将WATCHDOG计时器寄存器设为0 */
2.mov r1, #0x0
3.str r1, [r0]
其中的外设寄存器地址空间如表下:。
一起学mini2440裸机开发(四)--S3C2440定时器学习S3C2440定时器原理概述s3c2440有5个16位定时器,定时器0、1、2和3有脉冲宽度调制(PWM)功能,因此这4个定时器也被称为PWM定时器。
定时器4是一个内部的定时器,没有外部输出引脚。
定时器的时钟源是PCLK,定时器工作所需频率并不等于PCLK,还要进一步将PCLK 通过内部的分频器分频才能得到。
这里也可以看出外部设备所需的工作频率不一定等于它的时钟源。
其中,定时器0、1公用一个分频器,另外3个定时器公用一个分频器。
分频器输入信号经过第2级分频器进一步降低时钟频率,然后输出作为定时器工作的时钟。
下图为由PCLK得到定时器工作时钟的框图:虽然S3C2440定时器有5个,但是它们的工作原理都是相同的,只需要理解一个定时器的工作原理即可。
对于某一个定时器,其内部结构原理如图2所示。
寄存器TCMPBn和TCNTBn用于缓存定时器n的比较值和初始值;TCON用于控制定时器的开启与关闭;可以通过读取寄存器TCNTOn得到定时器的当前计数值。
注意图2所示的是PWM定时器,也就是定时器0-3,不包含定时器4,定时器4也没有外部输出引脚。
定时器工作原理概述:●首先,将定时器的比较值和初始值装入寄存器TCMPBn和TCNTBn中●然后,设置定时器控制寄存器TCON,启动定时器。
此时,TCMPBn和TCNTBn 中的值会加载到寄存器TCMPn和TCNTn中●此时,定时器会减1计数,即TCNTn进行减1计数,当TCMPn=TCNTn时,TOUTn引脚输出取反。
S3C2440定时器相关寄存器●定时器控制寄存器TCON由于各个定时器的工作原理相似,下面以定时器0为例进行讲解。
在定时器控制寄存器TCON中,位[3:0]用于控制定时器0,其含义如表1所示:位功能简述描述0开启/停止0:停止定时器1:开启定时器1手动更新0:未使用1:TCMPB0和TCNTB0中的值会加载到寄存器TCMP0和TCNT0中2输出控制0:当TCMP0=TCNT0时,TOUTO0引脚输出不翻转1:当TCMP0=TCNT0时,TOUTO0引脚输出翻转3自动加载0:自动加载1:当TCNTO0的值减到0时,TCMPB0中的值会加载到寄存器TCMPB0和TCNTB0中●定时器比较值缓存寄存器TCMPBn、计数值缓存寄存器TCNTBn这两个寄存器用于存储定时器的比较值初始值和计数值初始值。