S3C2410启动代码从ADSv1.2移植到KEIL For ARM uV4的方法

发布者:咖啡狐狸最新更新时间:2019-11-08 来源: 51hei关键字:S3C2410  启动代码  ADSv1  2移植  KEIL  For  ARM  uV4 手机看文章 扫描二维码
随时随地手机看文章

深圳旋极ARM9实验箱上面的ARM9实验教程是基于ADSv1.2 和 Mult-ICE2.2并口仿真器的,大概是04~09年期间流行的开发方式。目前ARM公司主推RVMDK(KEIL For ARM uVsion4)和ULINK(中国ARM玩家主要是JLINK V8)仿真器了,怎么把原来的ADS程序移植到KEIL上面呢?


经过分析ADS工程下面的文件,可以看到,原来的工程文件主程序是main.C,其他必须的汇编文件、C头文件、C源文件都放在common和include目录下。首先我们需要把这些工程都需要的基本文件都copy出来,放到一个“基本文件”目录下。

里面的“DebugInRAM.ini“文件,是通过JTAG将镜像文件下载到SDRAM内存中运行时,所需要加载的SDRAM配置文件,相当于ADSV1.2工程中每次都需要通过命令行键入” obey wtk2410.ads “文件中的内容。 

DebugInRAM.ini文件的内容如下:可以看到,去掉了ads文件里面的禁止vector_catch和semihosting两个命令,其余都一样。

二、建立RVMDK工程文件,不要系统自建的启动代码,加入基本文件和main主程序文件。

修改init.s文件,这个是移植的关键。需要注意的地方有:
1. 宏”MOV_PC_LR“在KEIL里面修改成相应的BX 指令。


2.把init.s文件原来定义的段名”Init“ 修改成”RESET“,这应该相当于ADSV1.2里面告诉编译器镜像文件开始的段是谁。

3. 在AREA段定义伪指令前,加入” PRESERVE8 “伪指令,告诉KEIL编译器字节对齐。

4. 将ADSv1.2里面的RO、RW、ZI基地址和大小定义的系统变量,修改为KEIL中的格式,所有出现的代码都要修改。


5. 设置projectTarget 1工程属性。

misc contrls里面加入”--entry 0x30100000“编译选项 

6. 在”Debug“页面里面加入 "DebugInRAM.ini"文件,并在”Load Application at Startup“选项打勾。

重新编译工程,生成镜像文件,并下载到SDRAM中开始调试。

关键字:S3C2410  启动代码  ADSv1  2移植  KEIL  For  ARM  uV4 引用地址:S3C2410启动代码从ADSv1.2移植到KEIL For ARM uV4的方法

上一篇:ARM9学习2-ARM镜像文件和Scatter文件
下一篇:2440裸机编程之四 外部中断

推荐阅读最新更新时间:2024-11-17 17:37

DS18B20 for STM32 源代码 【worldsing笔记】
DS18B20是DALLAS公司生产的一线式数字温度传感器,具有3引脚TO-92小体积封装形式;温度测量范围为-55℃~+125℃,可编程为9位~12位A/D转换精度,测温分辨率可达0.0625℃。主机控制DS18B20完成温度转换必须经过三个步骤:初始化、ROM操作指令、存储器操作指令。必须先启动DS18B20开始转换,再读出温度转换值。本程序仅挂接一个芯片,使用默认的12位转换精度,外接供电电源,读取的温度值高位字节送WDMSB单元,低位字节送WDLSB单元,再按照温度值字节的表示格式及其符号位,经过简单的变换即可得到实际温度值.本例VCC用3.3V 供电,将DQ连接结到stm32的PA1口, DS18B20 STM32
[单片机]
DS18B20 <font color='red'>for</font> STM32 源<font color='red'>代码</font> 【worldsing笔记】
ARM Linux异常处理之data abort二
上文提到data abort的正常处理过程中,最终会调用do_DataAbort函数,下面分析一下该函数的处理过程。 do_DataAbort asmlinkage void __exception do_DataAbort( unsigned long addr, // 导致异常的内存地址 unsigned int fsr, // 异常发生时CP15中的寄存器值,见前文 struct pt_regs *regs) // 异常发生前的寄存器值列表 { const struct fsr_info *inf = fsr_info +
[单片机]
ARM高层跳槽英特尔 将负责连网装置业务
英特尔(Intel)于11月29日表示,前安谋(ARM)战略执行副总裁Thomas Lantzsch将于1月加入英特尔担任高级副总裁,负责以物联网(IoT)为重点的英特尔事业群。 根据华尔街日报(WSJ)报导,英特尔正在成立命名为自动驾驶事业群(ADG)的部门。该部门将专注于开发自驾车和辅助驾驶系统相关芯片及其他技术。 英特尔表示,其物联网事业群高级副总裁Douglas Davis已取消退休计划,并将领导自动驾驶事业群。而在2016年稍早从Delphi Automotive跳槽加入英特尔的副总裁Kathy Winter将担任自驾解决方案研发部门的总经理。 11月从高通(Qualcomm)跳槽加入英特尔、负责监督大多数产
[物联网]
stm32f407discovery 的keil 4.60ST-linkII不能用解决方法
1 、用资源中的STLink文件替换 C:\Keil\ARM\STLink, 记得备份原来的文件, 2、C:\Keil\TOOLS.INI改成如下的 ORGANIZATION= cs2c NAME= jianzhong , cui EMAIL= cjzswust@gmail.com ARMSEL=1 BOOK0=UV4\RELEASE_NOTES.HTM( uVision Release Notes ) PATH= C:\Keil\ARM VERSION=4.60 PATH1= C:\Program Files\arm-none-eabi-gcc-4_6\ TOOLPR
[单片机]
stm32f407discovery 的<font color='red'>keil</font> 4.60ST-linkII不能用解决方法
采用S3C2410和Linux系统的指纹识别管理系统
指纹识别技术在金融、交通、安全等领域以及日常工作和生活中被越来越广泛地应用。指纹识别的算法中通常有大量的矩阵运算,域变换,三角函数运算等等,属于典型的运算密集型的应用,因此通常采用DSP来实现嵌入式应用。不过近期情况有了很大改观,MCU的性能突飞猛进,使得指纹识别这样的运算密集型的应用也可以采用MCU来实现。例如,三星公司推出的基于ARM920内核的嵌入式处理器S3C2410,速度高达200MIPS,完全可以满足指纹识别应用对运算速度的要求。S3C2410具有的丰富外设,并且可以运行Linux操作系统,这样的特性则是传统的DSP所无法比拟的。 进行指纹识别,首先要设法获取指纹。之前用得最多的是光学采集器,特点是价格相对便宜($1
[单片机]
采用<font color='red'>S3C2410</font>和Linux系统的指纹识别管理系统
stm32从keil安装到程序烧录
1.准备工具 (1)一块stm32板,我用的是芯片型号是stm32L151C8T6; (2)keil5软件,可以到官网下载: https://www.keil.com/download/product/ ,也可以直接下载网友的版本,我这里用的是keil5.15版本; (3)stm32L1芯片包,到官网下载自己的芯片对应的包, https://www.keil.com/dd2/Pack/ ,我这里下载的是:Keil.STM32L1xx_DFP.1.2.0; (4)keil注册机,用于破解,百度去下; (5)ST-LINK V2烧录器,淘宝可以买,需要下载安装驱动,到官网下载: http://www.stmcu.org.cn/docu
[单片机]
STM32 启动步骤和升级方式以及代码跳转的实现
#!/bin/sh #首先把BOOT0/Boot1 设置为 1 0, 即使用 STM32的ISP升级模式 #按下板子的reset, 硬复位进入 SYS ISP 模式(BOOTLOADER) #sudo stm32flash -w F407ZG_New.bin -v -g 0x0 /dev/ttyUSB0 sudo stm32flash -w F407ZG_Old.bin -v -g 0x0 /dev/ttyUSB0 #烧写以及验证完毕后, 自动加载 Flash的程序运行。 #把把BOOT0/Boot1 设置为 0 0, 即使用 STM32的flash模式,即用户程序模式。 #reset按键, 硬复位后自动启动新烧入的程
[单片机]
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved