QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 3402|回复: 3

step by step 学习手记-ADS下的开发(一)

[复制链接]
发表于 2005-6-3 12:42:54 | 显示全部楼层 |阅读模式
运行了可以下载的程序之后就开始考虑如何自己来写程序(这里犯了一个错误,没有正确理解liming写的make,稍后再加说明),vmware下的linux还不会玩,对linux比较熟,但是没有在linux下安装使用过仿真器之类的东东,先从window的开始(微软真因该感谢盗版,以至于现在一做东西就喜欢先从window环境开始)。

看ADS的手册,ADS1.2解压之后有个子文件夹,是pdf,其中有片文章“ADS_GETTINGSTARTED_D.PDF”, Charpter 3 是“Creating an Application”,跟上照办。参考led_blink.s,写一个自己的东东,内容一致(直接下载led_blink.bin,运行时发现等常亮,似乎delay的时间不够,具体没有分析)。首先运行ADS附带的CodeWarrior构建项目并进行编译链接生成elf文件运行AXD进行调试(关于AXD中仿真器的配置可以查看banyan相关资料,注意首先需要安装banyan仿真器)。在AXD中,首先运行cmd命令,输入如下的arm存储空间配置信息:
setmem 0x3ff4004  0xffffffff  32
setmem 0x3ff4008  0xffffffff  32
setmem 0x3ff0000  0xe7ffffa0  32
setmem 0x3ff3010  0x00003002  32
setmem 0x3ff3014  0x11040060  32
setmem 0x3ff3018  0x00000060  32
setmem 0x3ff301c  0x00000060  32
setmem 0x3ff3020  0x00000060  32
setmem 0x3ff3024  0x00000060  32
setmem 0x3ff3028  0x00000060  32
setmem 0x3ff302c  0x10000380  32
setmem 0x3ff3030  0x00000000  32
setmem 0x3ff3034  0x00000000  32
setmem 0x3ff3038  0x00000000  32
setmem 0x3ff303c  0xce278360  32
然后才可以运行程序。
结果成功blink led,因为写程序时对所有的IO端口进行了控制,led一闪一闪的同时,喇叭也忽叫忽叫的。 8-)
发表于 2005-6-3 14:00:20 | 显示全部楼层
老实说,我至今还没怎么用过 cmd 方式来运行程序呢,这下我也长见识了,呵呵  
回复

使用道具 举报

发表于 2005-6-14 16:50:39 | 显示全部楼层
好象在用axd调试程序时,不能把程序加载到一些无法写入的地址,这些地址可以在axd中测试出来。
回复

使用道具 举报

发表于 2005-6-15 08:52:04 | 显示全部楼层
banyan在初始化samsung4510时,把rom地址设在0x0~0x200000(2M大小),sdram地址0x1000000(16M)~0x1400000(20M),共4M大小。用axd调试时,应该先在ads中的linker内把地址RO指定在sdram段中,axd的调试原理是把程序写入sdram中,调试时,axd不能把程序写入其它地址。调整RO地址,或重映射sdram均可达到调试的目的。但重映射的sdram为0x0开始时,段实用地址较小。bouncer chen如果把其它无用的命令删去,可能会更清楚些。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-22 18:02 , Processed in 0.039346 second(s), 15 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表