永远的白身 » 日志 » ARM学习
ARM学习
xiaozhang 发表于 2007-09-24 20:00:56
上周五刚拿到定的开发板(SAM7X256-EK),做工还可以,可惜软件包里面内容比较少,连开发板使用说明都没有。只有自己慢慢消化了。 板子采用USB供电,USB线路连接好后,发现USB设备不能识别,师傅指点,要先ERASE跳线接3.3V->上电->下电->去跳线->上电。操作了下果然可以。心里面在考虑为什么要这样,仔细研究了芯片的DATASHEET后,在Memory 和AT91SAM BOOT PROGRAM中找到了线索。 根据上面的资料,可以知到,上电后(或者RESET)指令是由地址0X0开始执行的。在没有REMAP之前,是由GPNVM Bit 2决定FLASH还是ROM来MAP到0X0~0XF FFFF中。也就等同于决定BOOT FROM FLASH 还是BOOT FROM ROM。ERASE跳线接3.3V->上电,来清掉FLASH中内容,同时使GPNVM BIT2=0.下电->去跳线->上电,因为BIT 2=0,所以执行ROM中的内容,根据AT91SAM BOOT PROGRAM中描述,它能初始化USB设备。(进入SAM_BA中,可以验证地址0X0开始的内容和地址0X00300000开始的内容一样) 因此用SAM_BA时,通过USB来进入要执行前面的步骤。最后往FLASH里面烧入BIN文件后,一定要在script选项中选择ENABLE GPNVM(让BIT 2=1)才能使得RESET后,FLASH中烧入的程序才能跑起来。
相关日志:
收藏:
QQ书签
del.icio.us
订阅:
Google
抓虾
