学习arm的入门笔记

学习arm的入门笔记

ID:19306990

大小:45.05 KB

页数:39页

时间:2018-09-30

学习arm的入门笔记_第1页
学习arm的入门笔记_第2页
学习arm的入门笔记_第3页
学习arm的入门笔记_第4页
学习arm的入门笔记_第5页
资源描述:

《学习arm的入门笔记》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、学习arm的入门笔记11111111111简单的介绍打今天起菜鸟的ARM笔记算是开张了,也算给我的这些笔记找个存的地方。为什么要发布出来?也许是大家感兴趣的,其实这些笔记之所以叫笔记而不是文章,是因为它们完全是本人个人学习经验的总结,而这些经验都来自于其他前辈的无私奉献,在这里对这些乐于发表自己经验的前辈致以由衷的感谢!现在我把这些前辈的文章经过自己的理解写出来一方面是对于他们的尊重,另一方面也希望觉得本人的笔记有参考意义的朋友把这种精神继续传下去。再次声明,本人确实是个菜鸟,现在手头的板子是自己画的,以RT&ZQ的板子为底版

2、,对部分电路进行了改动。比如加入了SD卡,IIC总线键盘,触摸屏,GPS,GPRS等等。并对LCD接口进行改造,使之完全适合手头的SHARP液晶。把网络,串口,USB这些调试用接口都外扩了,目的是使主板尽量小(目前第一版为了调试方便,主板特意画的比较大)。但是存储部分(RAMROM)没有做任何变动,在这里对RT&ZQ致谢!这块板子是本人第二个板子(第一块是个接口板,30根线。)所以走线,设计都经不起推敲,但是同样非常希望大家能够指点!板子基本元件清单说一下吧,方便其他人参考CPU:44B0RAM:HY57V641620ROM:

3、AM29LV160NET:8019USB:D12KEY:ZLG7290LCD:SHARPLM7M632目前为止本人做的工作1板子的硬件调试是跟着软件来的2ADSAXD调试环境搭建3FLSH烧写笔记4UBOOT移植笔记5UCLINUX编译下载简单笔记6字符设备驱动开发C工程模板使用说明本模板用于使44B0运行C程序一般说来汇编用来初始化之后跳到C入口MAIN函数处一、关于工程文件1、本目录下建工程文件(.MCP)2、工程文件至少包含3个文件44binit.s44blib_a.s*.c(自己的c文件)3、44binit.s中开头部

4、分INCLUDE两个文件MEMCFG.SOption.s用于基本设置注意这两个文件的存放目录,即让INCLUDE找到它们4、以上文件除自己的c文件之外均为三星公版,不需修改二、关于CodeWarrior设置1、DebugRelSetting里一般设置几项1)TargetSetting->Linker里选ARMLinker用于设置连接2)TargetSetting->Post-Linker选ARMfromELF用于生成FLASH烧录代码(只在RAM里运行而不烧录则不用)3)ARMLinker->ROBASE里添地址根据板子来,这

5、板子上RAM接的NSCS6,地址0XC000000-0XC7FFFFF;FLASH接的NSCS0,地址0X00000-0XFFFFF地址分配原理见44B0数据手册内存管理那章的内存分配图想在RAM里调试就添0XC000000(比如0XC008000)的地址但是注意的是地址不要添过界,比如想在RAM里调试却添0X00000000程序可以进入C代码但没法运行再有想生成用于烧写得FLASH代码RO地址就需要设置为0X0000000开始的而且LAYOUT中也必须设置44BINIT.O为初始加载文件以上FLASH测试结论经FLASHPG

6、M测试而且FLASHPGM不支持BIN文件只支持INTEL得HEX文件4)RW可以添可以不添一般RO解释为数据段,RW解释为数据段有时高兴了就添上0XC100000(RAM调试时)5)ARMLinker->OPTION->Imageentrypoint选择0xc000000(RAM调试时)6)ARMLinker->Layout->Object/Symbol里可以添工程起始程序44BINIT.O注意是.O不是.S和.0(零)也可以不添三、AXD设置1)按照BANYANGT或者ARM7正确设置调试代理BANYANGT、ARM7、H

7、-JTAG都是代理,装哪个无所谓,一般认为BANYANGT好,但无论哪个调试之前必须运行代理2)在option->configureinterface里在sessionfile选择44b0.ini这个文件是初始化44b0寄存器的,必须运行3)Options->ConfigueTarget里本来有两项,上面上是硬件调试,下面是软件仿真(在电脑上仿真)用ARM7就改第一项(按照ARM7说明改),用BANYANGT就按照BANYANGT说明在下面再加个BANYANGT的驱动4)在general标签页选择attach,然后确定,最后在

8、file->savesession,关闭AXD(在CodeWarrior里一DEBUG就自动打开)四、关于JTAG1)JTAG一般有几种SDT和WIGGLER我的是WIGGLER的,两者区别主要在并口25针定义不一样(不算复位脚),与板子上JTAG相连的脚不是区分JTAG类型

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。