| RSS
深圳电器感厂家
您当前的位置:电感器制造商 > 技术知识

基于uClinux内核移植ARM开发板应用

来源:    作者:     发布时间:2015-04-24 17:53:26     点击数:

*)(_IRQ_BASEADDRESS+0x138))//0x58))

#define pISR_WDT (*(unsigned

*)(_IRQ_BASEADDRESS+0x13c))//0x5c))

#define pISR_BDMA1 (*(unsigned

*)(_IRQ_BASEADDRESS+0x140))//0x60))

#define pISR_BDMA0 (*(unsigned

*)(_IRQ_BASEADDRESS+0x144))//0x64))

#define pISR_ZDMA1 (*(unsigned

*)(_IRQ_BASEADDRESS+0x148))//0x68))

#define pISR_ZDMA0 (*(unsigned

*)(_IRQ_BASEADDRESS+0x14c))//0x6c))

#define pISR_TICK (*(unsigned

*)(_IRQ_BASEADDRESS+0x150))//0x70))

#define pISR_EINT4567 (*(unsigned

*)(_IRQ_BASEADDRESS+0x154))//0x74))

#define pISR_EINT3 (*(unsigned

*)(_IRQ_BASEADDRESS+0x158))//0x78))

#define pISR_EINT2 (*(unsigned

*)(_塑封电感IRQ_BASEADDRESS+0x15c))//0x7c))

#define pISR_EINT1 (*(unsigned

*)(_IRQ_BASEADDRESS+0x160))//0x80))

#define pISR_EINT0 (*(unsigned

*)(_一体成型电感IRQ_BASEADDRESS+0x164))//0x84))

例如,我们要使用到Exint4567中断,定义好中断处理程序Meint4567Isr()后,仅需要一条语句:

pISR_EINT4567=(int)MEint4567Isr;

就能使中断发生后正确跳转到我们编写的处理程序上。

1.3.3 初始化各种处理器模式

ARM7TDMI支持7种Operation

Mode:User,FIQ,IRQ,Supervisor,Abort,System和Undefined。Bootloader需要依次切换到每种模式,初始化其程序状态寄存器(SPSR)和堆栈指针(SP)。

1.3.4 复制RO和RW,清零ZI

一个ARM由RO,RW和ZI三个段组成,其中RO为代码段,RW是已初始化的全局变量,ZI是未初始化的全局变量(对于GNU工具,对应的概念是

TEXT,DATA和BSS)。Bootloader要将RW段复制到RAM中,并将ZI段清零。编译器使用下列符号来记录各段的起始和结束地址:

|Image$$RO$$Base| :RO段起始地址

|Image$$RO$$Limit|

:RO段结束地址加1

|Image$$RW$$Base| :RW段起始地址

|Image$$RW$$Limit|

:ZI段结束地址加1

|Image$$ZI$$Base| :ZI段起始地址

|Image$$ZI$$Limit| :ZI段结束地址加塑封电感器1

需要注意的是,这些标号的值是根据链接器中设置的中ro-base和rw-base的设置来计算的,我们的Bootloader的对应设置是:ro-base =

0xc000000, rw-base = 0xc5f0000。

完成这个步骤后,第一阶段的硬件初始化就完成了。

BL Main

跳转到C语言程序,开始第二阶段的初始化和系统引导。

1.3.5 C语言中的硬件初始化

继续对硬件进行初始化,主要包括对以下设备的初始化:GPIO,Cache,Interrupt Controller,Watchdog

Timer和UARTs。S3C44B0X处理器内置data/instruction合一的8KB

Cache,大电流电感且允许按地址范围设置两个Non-Cacheable区间。合理的配置是打开对RAM区间的Cache,关闭对其它地址区间(非存储器设备, I/O设备

)的Cache。所有硬件初始化完毕之后,开中断。

1.3.6 建立人机界面

引导过程的最后一步是在串行终端上建立人机界面,并等待用户输入命令。若接收到用户输入,则显示菜单模式或命令行模式的交互界面,等待用户进一步的命令。这里就不对此详细讨论了。

电感式接近传感器1.4加载uClinux内核

ARMSYS

提供的Bootloader支持两种uClinux启动运行方式:直接从SDRAM中的内核映像中运行;从flash将压缩格式的内核映像加载到

SDRAM,再从SDRAM运行。前者需要利用Bootloader提供的对映像文件下载的工具;后者则需要利用Bootloader提供的

flash烧录工具进行烧录,然后再加载运行。

压缩格式的uClinux内核映像文件都是由开头的一段自解压代码和后面的压缩数据部分组成。对于Kernel而言,由于是以压缩格式存放,因次只能以非XIP方式执行。自解压类型的uClinux

内核映像文件首先存放在Flash Memory中,由Bootloader加载到SDRAM中的0xc100000地址处,然后将控制权交给它。可执行的uClinux

Kernel将被解压到最终的执行空间,然后开始运行。压缩格式Image所占据的临时SDRAM空间可在随后由uClinux回收利用。

可以从flash拷贝到SDRAM解压运行,自然同样也可以直接下载到SDRAM运行。这对于调试内核都是非常方便的。对于压缩格式的内核映像文件(image.rom和image.ram)都可以直接下载到SDRAM的特定地址处,并从该地址开始运行(参考2.2节)。

1.5调用Kernel

Bootloader调用uClinux 内核的方法是直接跳转到Kernel的第一条指令处。

采用C语句:((void

(*)(void))ram_addr)();

1.6工具

ARMSYS

的Bootloader在人机界面上提供了8个功能项目,其中包括支持从主机通过USB口下载文件到目标板的SDRAM和Nandflash上;用1

集成门极换向晶闸管(IGCT)是集成门极驱动电路和门极换流晶闸管(GCT)的总称,其中GCT是以GTO为基础的器件。IGCT采用了硬驱动、缓冲层和透明阳极发射极等新技术,与GTO相比具有开

贴片绕线电感的作用。基本作用:电感滤波、振荡、延迟、陷波等;形象说法: 通直流,阻交流 细模压电感生产厂化解说:在电子线路中,电感线圈对交流有限流作用,它与电阻器或电容器能组成高通或低通滤波器、移

插件电感器工厂 相信大家对开关电源变压器并不陌生,开关电源变压器在各种电子装备中都常被用到,它作为一种主要的软磁一体成型电感厂家电磁元件,在电源技术中和电力电子技术中得到广泛的应用,开关电功率电感器


上一篇: AT89C51串并转换驱动数码管实验指导
下一篇:功率电感器
来顶一下
返回首页
返回首页
相关文章
推荐资讯
电感数字转换器
电感数字转换器
相关文章
栏目更新
栏目热门