打印

圈圈的第一个AT91SAM7S64测试程序横空出世~~~

[复制链接]
2849|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
computer00|  楼主 | 2009-3-5 00:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
下载本测试程序:https://bbs.21ic.com/upfiles/img/20093/20093503052282.rar

   经过一个晚上的忙活,圈圈的第一个AT91SAM7S64程序终于跑起来拉。
这是一个简单的IO测试程序,在PA0~PA2脚上轮流输出低电平,实现
流水灯的效果。

    程序首先初始化系统时钟,将主时钟设置为48.05MHz。然后将对应
的PA0~PA2口设置为输出状态并使能。然后在PA0~PA2上轮流输出低电平。

    本程序所用的实验平台是21IC的古道热肠设计的“DIY优盘开发板”,
板上在PA0~PA2上分别接了一个LED,把程序烧入开发板中运行,就可以
看到LED2~LED4轮流点亮了。

    由于手头的U-link被同学借走了,只好使用USB口进行ISP下载。要
进入ISP模式,首先要将板上绿色的自锁开关按下,然后给板子上电(可
直接通过USB口供电),等10秒以上,然后拔下电源,弹起绿色自锁开关。
再次给板子上电,就能进入到ISP模式了。如果是第一次使用,还需要给
它安装驱动程序。当你安装ISP软件时,会自动复制驱动程序到系统目录,
让向导自动搜索就行了。然后运行ISP软件SAM-BA v2.8(可以上atmel官方
网站下载安装包,圈圈目前所使用的是Install AT91-ISP v1.12.exe),
选择“usbARM0”,点击“connect”按钮,即可出现下载界面,打开
对应的文件,然后点击发送文件即可。

    不过,这个软件只支持*.bin文件的格式,而keil默认的输出文件是
*.hex格式。可以使用hex2bin.exe这个文件进行转换,它就在你的keil 51
安装目录下。可以直接在工程选项的output标签页中设置编译完后运行
hex2bin文件。然而,keil生成hex文件是从地址0x100000开始的(这是因为
这个芯片的FLASH地址在0x10000),如果直接转换的话,得到的bin文件
将有1M多大,无法下载到板上去。只好自己对hex文件进行修改后,再进行
转换。我们只需要修改hex文件的第一行即可,这里是定义高16位地址的。
第一行的内容为: :020000040010EA,将其修改为:020000040000FA。
其中0010就是说高16位地址为0x0010,将其改成0000,后面的EA为校验和,
朝反方向修改,为0xFA,否则转换时校验和不对会失败。先将output标签
页中的创建hex文件勾上,然后编译,再修改hex文件,然后将创建hex文件
的勾去掉,把下面的运行程序勾上,再编译,就可以得到对应的bin文件了。

    对于上面这个问题,圈圈试图将ROM地址设置在0x0,结果生成的文件
中断向量表部分还是被定位在了0x100000位置处,不能解决问题。看来
Keil的CARM编译器还不够好用。

    接下来,圈圈将会依次学习这个芯片的各个模块~~~这个芯片数据手册
有点变态,750多页,还好很多图片和表格,也很详细。花了3个多星期的
空余时间才看完...

                                     圈圈   2009-03-05  00:30

相关帖子

沙发
xwj| | 2009-3-5 00:42 | 只看该作者

呵呵,老x上周出差一周,又没玩的成:-(

使用特权

评论回复
板凳
wangkj| | 2009-3-5 08:13 | 只看该作者

00 终于玩arm了

记得几年前就劝过你。

使用特权

评论回复
地板
sodwell| | 2009-3-5 08:53 | 只看该作者

re

王会计很早就劝他玩linux,可他就是不玩,那玩意太简单了..........

使用特权

评论回复
5
古道热肠| | 2009-3-5 10:11 | 只看该作者

好,好好玩,这板是很好玩的.

AT91SAM7SX系列的芯片,内部模块很多,功能很强大.

使用特权

评论回复
6
computer00|  楼主 | 2009-3-5 11:43 | 只看该作者

嘿嘿,今天跑跑LCD看~~~~

使用特权

评论回复
7
wangkj| | 2009-3-5 14:14 | 只看该作者

俺的lcd控制板,也是内置的at91sam7s64

正在考虑把啥GUI移植过来。

使用特权

评论回复
8
小李志| | 2009-3-5 22:58 | 只看该作者

哈哈,

有没有图啊,我也自己搭一个

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

246

主题

14693

帖子

210

粉丝