免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1074 | 回复: 0
打印 上一主题 下一主题

ARM开发板学习 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-11-02 19:43 |只看该作者 |倒序浏览
一直想在CU开个博客,学习一下嵌入式linux,然而这里的的高手如云!怕写出来的反遭到高手的笑话,不过尽管如此,本人还是写一下自己的博客,来整理一下自己的思绪!为什么说是整理一下自己的思绪呢:原因有几点:
1.因为以前没有接触过嵌入式,甚至51(我只自学过一个多月);所以对嵌入式的学习很模糊,不知道重点和脉络;这就引起自己的思想很乱,不能统一!
2.因为学习ARM,或者说自己想吃这碗饭;学习ARM又没有人指导,目前接触过的开发板有博创的ARM3000、莱顿的QQ2440以及周立功的easyarm2104由于没有专门的配套教材,所以自己学习起来真吃力!而且思维很乱!
3.自己学习arm了一段时间;QQ2440在linux下编程,博创在windows的ads下编程,但是都很模糊,拿到一个新的arm处理器又不能很快上手!很耽误时间,感觉就是自己思维很乱,不成系统。

现在就来总结一下自己的感受:
像一位学者一样,想脱离windows在linux下编程,发觉很困难,很多时候企业还是习惯在windows下编程的。所以自己也要两方面具备才行;首先要明确单片机的五脏是什么,我查了一些资料,认为这五脏是:cpu,rom,ram,计时器和定时器,还有I/O接口。因此,我想,如果搞嵌入式的话,必须做好以下工作:
1.要搞清楚arm的这个五脏及其连接(特别是ram和rom是在片内还是在片外);
2.要搞清楚arm片内的数据总线(有可能是2类或者是3类数据总线,他们的主要区别是时钟频率不一样);
3.要搞清楚arm复位后是如何启动的(例:QQ2440中的s3c2440就是将nand flash中的前4KB的数据通过硬件拷贝到0x00000000位置前4Kstepping stone中,然后开始运行,如果程序太大的话,那么我们要把nand flash 4KB后的一些代码拷到我们的外部的存储器sdram中, 只把一些重要的启动代码通过硬件拷贝到stepping stone中)
4.要搞清楚arm存储器空间的分配,这个极关重要!因为外部存储器,和一些I/O接口的地址都要跟他挂钩的,所以要搞清楚了;
5.要搞清楚有没有mmu和cashe(s3c2440有);
我想搞清楚了前面几点,那就可以开始做一些简单而必要的驱动了:
1.串口驱动的编写(这是最基本的,也是最重要的,很多驱动开发要它来监控);
2.系统时钟和电源的管理(因为,我们用的外部时钟频率是较为低的,如果想开发arm就要用到它的优势,所以要学会将时钟频率提高);
3.定时器和计数器的应用;
4.中断的应用;
5.内存的分配与控制(主要是内存bank的分配与设置,包括数据宽度);
6.(若有的话)内存的管理(主要是内存的映射);
7.flash的读写;

如果把这几个必要的驱动熟悉了,我想编写一些其他的驱动应改能入手了!



本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u1/45498/showart_413447.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP