ARM整理.docx

上传人:b****7 文档编号:11137553 上传时间:2023-02-25 格式:DOCX 页数:12 大小:25.14KB
下载 相关 举报
ARM整理.docx_第1页
第1页 / 共12页
ARM整理.docx_第2页
第2页 / 共12页
ARM整理.docx_第3页
第3页 / 共12页
ARM整理.docx_第4页
第4页 / 共12页
ARM整理.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

ARM整理.docx

《ARM整理.docx》由会员分享,可在线阅读,更多相关《ARM整理.docx(12页珍藏版)》请在冰豆网上搜索。

ARM整理.docx

ARM整理

ARM

    这几个月来我一直都爬在51的问题,自己都有一点笑自己了,用了4个月的时间,来稳固51的原理和程序,还好我自己算是走过来了,自己笨,身边的高才生又看不上51的原理,他们都比拟“牛〞,说51过时了,你问那个做什么?

我比拟郁闷!

过时吗?

我有一点疑心?

    他们不愿意说有他们自己的理由,没有人强求,靠自己好了。

    我自己个人的观点:

51是一个根底,而且还很重要,这是再我看了ARM之后感觉到的。

它可以加速你的ARM学习速度,真得!

不相信你试一试好了。

    但凡要求一个速度、效率,不要做一些无用功,抓紧身边的每一个一分钟,人是活的,东西〔知识、书〕是死得,想要做的事情因此就简单了。

2.我在网上看到了一篇很不错的ARM文章,粘贴过来,为了和像我一样在很少有人帮助的情况下,自学ARM 的难兄难弟们。

“ARM怎么入门〞。

我不是高手,仍然是菜鸟。

    但是回想起自己当时的迷茫,特意写了这篇东西,当作给和我一样的兄弟姐妹的帮助吧。

问这个问题的人多半不是已经工作的工程师,而是和我一样是学生,所以这篇笔记就把看家当成我一样的菜鸟,高手勿怪。

    首先声明:

本人还没有找工作,事实上处于研究生刚毕业,还没开始找工作的空闲时间,44B0只是兴趣所在,打发时间。

    所有看法完全是自己的感受,不代表任何他人。

错了的观点各位帮我纠正。

再次补充:

很多朋友看了上面的话就问我为什么研究生毕业了还不找工作:

〕说是打发时间,其实是因为研究生的时候带了一个工程,申请提前毕业以后工程还有块尾巴,容许导师把工程做完再走:

〕就这么简单。

男人总点负点责,呵呵

   以下问题常被问到,我就想到哪说到哪吧。

一 首先说说ARM的开展

   可以用一片大好来形容,翻开各个公司的网站,招聘里面嵌入式占据了大半工程师职位。

广义的嵌入式无非几种:

传统的什么51、AVR、PIC称做嵌入式微控制器;ARM是嵌入式微处理器;DSP;FPGA。

   客观的讲,工作需求量上DSP的需求比ARM要多,而ARM和FPGA差不多。

   DSP因为数字处理与通信领域的空前开展而火暴,小到MP3 射象头,大到我们军品里的控制器,应用面很广。

   FPGA的兄弟一般做ANSIC〔特殊芯片设计,好象是这么翻译的〕。

而ARM单纯说来并不比一个单片机强多少,但是它的独特就在于不断下降的价格和提升的性能。

这完全依靠于ARM公司的战略,厉害!

很佩服他们的战略眼光!

   值得注意的是:

在找工作中,企业〔著名的,小的不算〕对单纯的ARM硬件开发工程师并不比单片机重视,很少有大企业的职位里写“从事过ARM开发优先〞。

写的多的是什么?

“嵌入式LINUX〞到这相信大家看出来了吧,需要的是硬件中的软件。

二 ARM是硬件还是软件

   很难说,ARM是硬件,LINUX是软件。

ARM的硬件多半已经模块化了,像我这样把板子改成这样的就算动的多的了,这同样是ARM公司的战略,再次佩服。

   实际中的LINUX的开发工作更多,更耗时。

从这方面说ARM应该算是软件了。

   在找工作中更是这样,举个例子,联想里和ARM最接近的是“BIOS工程师〞是软件,MOTO里接近的是嵌入式LINUX工程师是软件。

而其他很多公司把嵌入式产品开发归为硬件。

所以,不要讨论这个,好好玩转自己的板子才是关键。

实在不爽你就把自己叫“嵌入式开发工程师〞

三 要不要买开发板 买哪家

   

    我的答案是“在你个人的学习方法〞,但是如果看家是需要看这骗笔记的水平,个人推荐还是买现成的。

1 买

    买板子可以把注意力集中在软件开发上,软件开发〔尤其是驱动〕可以不必担忧自己硬件上的问题,我就是以便调试一边写驱动和程序,每次写驱动前就要先确认硬件没问题。

另外,买板子更省钱和时间,我自己做的板子,原理图PCB花了2周以上!

制版又15天,回来以后焊接44B0 160个脚!

那叫一个麻烦~~花了多少钱呢?

2层板,制版费就300块!

当然 我把接口都外引了,还做了个20X18的LCD背板,板子比拟大。

总体下来 元件+LCD屏+PCB=11XX块!

够2410的了。

   再有就是买的资料相对来说比拟全,但是不要指望有技术支持!

都是骗人的,卖你之后就不会理你。

2 做

    自己做可以更了解底层硬件,可以按照自己的要求加东西,比方我就加了GPS模块、 GPRS模块 、SD卡模块,扩了个IIC的35个键子的键盘、把LCD接口按照买的LCD改装了,可以用FPC线直接连接。

做的很爽的。

玩一把吗。

    当然,你可以有策略的做,比方像我一样,把RAM和ROM,网络都保持和某现成的板子一样,这样他们的资料你就可以拿过来直接用,给自己留个退路。

其他的如SD了 什么的自己做。

都到达了~~就是费钱,费时间。

    再有就是给做的朋友几点建议:

尽量拿到现成的板子,尽量多搜集其他板子的全套资料,一定要拿到一张没问题的原理图。

    网上流传的原理图多数是龚俊03年画的,再这里对龚俊表达一下我的敬意!

牛人!

但是那个图有个小BUG,我指的是03版的,后来的没这问题了。

8019那地址线和地址有问题。

还有人仿照他的PDF图画的SCH,更是漏洞百出!

谴责!

顺便谴责把龚俊板子偷卖的人。

3 买哪家

  个人感觉分3类吧

   1〕首先是ZLG的,资料非常的全,感觉他是真正想教你怎么开发ARM,而不是像有的公司自己技术都没做好就做个板子出来卖钱。

但是最大的不利就是价格太贵!

而且主要是PHILIP的,货源比拟麻烦~~可能有人说21XX系列的不贵啊,那是总线不外扩的,只能跑UCOS,不能跑UCLINUX。

但是说是话,21XX系列才是ARM7的价格性能结合点。

ARM7最适合做工业控制,ARM普及,销量都是怎么来的?

都是ARM7来的,而44B0是典型的商业片子。

但是,这里如果你看中的是为工作做准备,还是选能跑UCLINUX的吧。

但是仍然作为第一个推荐,因为菜鸟时期,适宜的资料太重要了!

在这里被ZLG的务实精神感动!

你看人家那代码写的。

   2〕感觉立宇泰的44B0不错

硬件没别的,就是资料比拟全的说,不像有些家,原理图直接拿人家的,还错的~~

   3〕找个最廉价的

好象最廉价的有卖350的吧?

也是没别的,就是即省了钱 还省时间搜集资料,至于资料全不全,别计较了~~硬件肯定好使就行吧。

四 要不要有51 AVR等单片机根底

    有更好,但没有也无所谓。

    两个月以前,我只是看别人做,耳濡目染~~,本科学过单片机,从来没做过。

我们这的技术主干做AVR和51,我就跟他们调过C语言程序。

你看出来了?

我是个不折不扣的菜鸟吧?

但是做这个之前我特意找了ZLG的两本书,看了里面的例子和原理图,这很重要。

例程里有汇编有C,都看懂了就OK,不用自己现写

五 开发都需要学习哪些软件

总结起来最主要的有以下几个吧

1 ADS调试用

确切的说是ADS+AXD。

ADS里包含AXD。

原来都用SDT后来ARM公司停止对SDT支持了,改支持ADS了,还是用ADS吧。

有的人的程序发布的仍然是SDT版本的,但根本都可以找到相应ADS的,新人在这里不要发蒙。

ADS是编译器,AXD是调试器。

廉价成AXF以后再在ARM的RAM里调试。

2 PLASHPGM

FLASH烧写的软件。

AXD在RAM里调试,掉电就没有了,方便程序修改。

调试好的程序再下到FLASH里,上电直接运行。

同类的软件还有很多,什么FLUTED了、FLSHP了都是,但FLASHPGM最好,要是有人还问FLASH不支持BIN格式文件的问题就要看我写的PLASHPGM使用了。

3 BANYANT调试代理〔不知道名对不,起这么个难记的,我一般都叫它“半羊〞因为知道它那几天刚吃了烤羊〕

调试代理就是用它帮你使用更简单的JTAG〔廉价啊〕来实现原本1K才卖的JTAG仿真器的大局部功能。

JTAG调试原理看我另一篇笔记。

简单的就可以把他理解为你自己做的JTAG的驱动就行了。

调试代理还有很多种,什么H-JTAG了、ARM7了〔〕都是,BANYANT比拟好。

需要注意的是,没种调试代理安装方法虽然都简单 但都不一样,需要看说明。

而且AXD调试之前都要运行。

省钱了,就别怕麻烦了。

4 ARM-ELF-TOOLS工具链

里面是UCLINUX开发用的工具比方ARM-ELF-GCC只类的。

工具链就是把很多工具打包在一起发布的方便你开发的东西。

具体安装方法看我另一篇笔记。

另外如果你开发LINUX就要用ARM-LINUX-TOOLS,不一样,不通用。

5 U-BOOT

大名鼎鼎的BOOTLOADER生成工具,同类的好象还有VIVI〔名字很暧昧~~〕

生成的BOOTLOADER烧到FLASH里,然后就可以用BOOTLOADER下载 烧写其他了

有了BOOTLOADER才能下UCLINUX。

BOOTLOADER就像电脑上的BIOS。

当然UCOS的不用这个,用什么我不知道:

最新版本是1.1.4 具体使用方法看我另一篇笔记吧。

6 UCLINUX包

UCLINUX的源码包,不用多说了吧?

建议大家用现成的先体会一下,然后再自己编译,裁剪。

因为单独UCLINUX的编辑技术上比拟简单,但涉及的方面还是比拟广的。

7 VMWARE

老牌的虚拟机软件,在一个机器上虚拟出一个机器装LINUX〔PC上用的〕,省得你来回开关机了。

记得装VMWARE-TOOLS,安装方法在我另一篇笔记里。

六 有哪些书推荐

   主要推荐ZLG的三本书,有这3本再加网络就不用别的书了,其中主要推荐前2本,3是介绍体系结构的,也不错

1 ARM嵌入式LINUX系统构建与驱动开发,北航版

驱动写的很详细,前期开发介绍也很好

2 ARM 嵌入式系统实验教程〔二〕,北航版

有ZLG2200的原理图,实验程序和注释,了解人家是怎么开发的。

3 ARM嵌入式系统根底教程

最重要的是体系结构,汇编局部介绍,看看吧,增加理论素质。

4 44B0数据手册

写在这里是强调它的重要。

不推荐ZLG早期出的红色皮的ARM什么体系结构~只类的

写的太多,看烦了。

其他的书没了几本,没看见好的,大家有看过的推荐吧。

七 选UCOS?

UCLINUX?

LINUX?

VXWORKS?

还是当单片机用

   1 搞开发,工程设计,用UCOS,小巧,多进程,简单,表达了ARM7的精髓。

   2 LINUX 正根的嵌入式系统,LINUX消费与通信领域用的比拟多,但缺点是必须ARM9才能跑,ARM9的板子自己做就不行了,6层板太贵。

买开发板1K达底吧。

但是还是推荐选ARM9+LINUX

   3 UCLINUX 算投机嵌入式系统:

〕ARM7上可以跑,由有LINUX近亲,学好好可以比拟方便的转向LINUX,像我一样的穷鬼用吧,呵呵

   4 VXWORKS

学好后可以找到高薪工作,但工作时机本身并不比LINUX好找。

  5 当单片机用

不推荐,虽然我景仰的ZLG一直号召这么干。

因为对于学习来说多进程的系统设计才是ARM7的玩头,至少你也要整个UCOS啊:

有朋友问我先学这个当根底不行吗?

那当然可以~~但我当时就用了1周搞定,就是我先的ADS在RAM中调试的笔记。

后来我清空FLASH用的小段程序还是当时写的LED闪烁程序呢。

另外1周里其中还因为自己过于菜,没把OM设置好导致晶阵不阵

哈哈。

这个是必须做的,但一带而过。

目标放的远一点。

八 学习要用多长时间

    我从菜鸟到现在两个多月,中间被打搅数次。

仍然搞定了PCB设计与制版,RAM调试,FLASH下载,UBOOT移植和下载UCLINUX〔没剪裁,用现成的〕,LCD驱动。

再次坦诚的说:

我确实比拟菜,说这些不是让大家羡慕,只是告诉你们“你们应该比这个更好〞

我相信良好的态度+适宜的方法+及时的总结=成绩

九 ARM都玩什么

就几点

1 硬件设计

2 系统移植

3 驱动开发

4 应用开发

没了。

其中推荐把注意力放在后两个上,3有难度,4比拟灵活,最重要的是都是找工作的砝码。

十 我用的什么板子

很多人问我这个问题,我特意写过一个的。

再说一次吧。

我是自己做的,RAM、ROM、8019等比拟麻烦而当时的自己不理解的都按照龚俊的做的。

保持其他不便的情况下做了如下改动。

1 加了串口通信的GPS模块、 GPRS模块

一个UART0,一个UART1,当与要用超级终端时用跳线切换。

2 SD卡,和7843触摸屏

同时挂在SPI总线上,因为SPI只能挂一个设备,同时还做了I/O模拟的准备,把两个设备又通过跳线挂在4个IO上。

3 扩了个IIC的35个键子的键盘

用的ZLG的7290,不占用CPU,最大支持64个键子,只上了35个,其他留接口。

4 把LCD接口按照买的LCD改装了,可以用FPC线直接连接。

所以改动虽然多,但真正很移植了,初期调试有关的并没动,就是为了现在不那么菜的时候做准备:

十一 开发流程

这里是我的开发流程

1 设计原理图〔含WIGGLER的JTAG访真器〕

2 设计PCB〔含WIGGLER的JTAG访真器〕

3 制版

4 焊接电压,确定电压没问题

5 焊接44B0+JTAG电路+WIGGLER的JTAG访真器+周边电路,用BANYANT+仿真器连接,BANYANT提示错误,但可以显示44B0编号,好象是0X0F0F0F0F只类的,说明44B0没问题

6 焊接晶体+RAM+ROM+周边电路,用BANYANT+仿真器连接,可以显示正确的44B0了

7 用BANYANT+仿真器连接,开AXD,在命令行窗口操作RAM,看可不可以修改,可以的话〔用内存窗口看RAM地址〕RAM就没问题

可以用这个命令“setmem 0xc000000,0xffffffff,32〞

我的RAM挂在BANK6上 所以地址是0XC000000,你要是改了就也得改。

8 用我写的?

自己写了个C工程模板又写了个使用说明 ?

里的方法调试程序吧,写个简单的,我当时写个LED闪烁的。

看好使不。

9 把程序按照?

FLASH烧写总结 ?

里的烧到FLASH里,测试一下

10 按照?

UBOOT 移植操作?

移植UBOOT 

11 按照?

UCLINUX下载简单说明?

下个UCLINUX

12 看看驱动开发的方法,自己写个驱动看看

13 还有很多事东西着你玩 呵呵

十二 关于JTAG访真器

JTAG访真器现在用的多是简板的,一个244那种,用的没什么不好。

按照并口定义不同分几种,建议选WIFFLER定义的,因为支持的软件多。

这个网上多的是,不多说了。

值得提的是有的JTAG访真器原理图上有跳线用来使能复位信号,这个一般不跳上。

就是不用复位信号,因为JTAG协议里本身也可以控制44B0复位。

当然,板子上的复位信号跳线也不用跳。

十三 哪个公司的ARM

这个是问题比拟简单。

1 ARM7主要就几个公司的

三星,PHILIP,ATMEL的

ATMEL的有比拟廉价的AT91SAM7S32 和AT91SAM7S64 专为8位应用产品量身定做,价格很廉价好象?

3刀吧。

和PHILIP的21XX差不多,资料太少,工程中选还不错。

其他两家上面说了的不多说了吧

2 ARM9

这个玩2410和2440的多吧,现在2440还比拟火啊 可以考虑买个了

但是2410就比拟廉价了,作为学习来说反到和不错,推荐整一个:

其实ARM9用的最多的领域应该是消费电子,比方PDA,而这上面用的多的应该是INTEL的和TI的吧。

但是INTEL的TI的入门材料少,价格高,自己看情况定吧。

TAG:

ARMarm入门

 

ARM是一个公司名!

分ARM7/ARM9等

ARM可以是16位机,也可以是32位机

 

8051单片机和羚阳单片机没有可比性,如果一定要比拟就是单片机和CPU的区别!

 

ARM〔AdvancedRISCMachines〕是微处理器行业的一家知名企业,设计了大量高性能、廉价、耗能低的RISC处理器、相关技术及软件。

技术具有性能高、本钱低和能耗省的特点。

适用于多种领域,比方嵌入控制、消费/教育类多媒体、DSP和移动式应用等。

ARM将其技术授权给世界上许多著名的半导体、软件和OEM厂商,每个厂商得到的都是一套独一无二的ARM相关技术及效劳。

利用这种合伙关系,ARM很快成为许多全球性RISC标准的缔造者。

目前,总共有30家半导体公司与ARM签订了硬件技术使用许可协议,其中包括Intel、IBM、LG半导体、NEC、SONY、菲利浦和国民半导体这样的大公司。

至于软件系统的合伙人,那么包括微软、升阳和MRI等一系列知名公司。

ARM架构是面向低预算市场设计的第一款RISC微处理器。

ARM提供一系列内核、体系扩展、微处理器和系统芯片方案。

由于所有产品均采用一个通用的软件体系,所以相同的软件可在所有产品中运行〔理论上如此〕。

典型的产品如下。

①CPU内核

--ARM7:

小型、快速、低能耗、集成式RISC内核,用于移动通信。

--ARM7TDMI(Thumb):

这是公司授权用户最多的一项产品,将ARM7指令集同Thumb扩展组合在一起,以减少内存容量和系统本钱。

同时,它还利用嵌入式ICE调试技术来简化系统设计,并用一个DSP增强扩展来改良性能。

该产品的典型用途是数字蜂窝和硬盘驱动器。

--ARM9TDMI:

采用5阶段管道化ARM9内核,同时配备Thumb扩展、调试和Harvard总线。

在生产工艺相同的情况下,性能可达ARM7TDMI的两倍之多。

常用于连网和顶置盒。

②体系扩展

--Thumb:

以16位系统的本钱,提供32位RISC性能,特别注意的是它所需的内存容量非常小。

③嵌入式ICE调试

由于集成了类似于ICE的CPU内核调试技术,所以原型设计和系统芯片的调试得到了极大的简化。

④微处理器

--ARM710系列,包括ARM710、ARM710T、ARM720T和ARM740T:

低价、低能耗、封装式常规系统微型处理器,配有高速缓存〔Cache〕、内存管理、写缓冲和JTAG。

广泛应用于手持式计算、数据通信和消费类多媒体。

--ARM940T、920T系列:

低价、低能耗、高性能系统微处理器,配有Cache、内存管理和写缓冲。

应用于高级引擎管理、保安系统、顶置盒、便携计算机和高档打印机。

--StrongARM:

性能很高、同时满足常规应用需要的一种微处理器技术,与DEC联合研制,后来授权给Intel。

SA110处理器、SA1100PDA系统芯片和SA1500多媒体处理器芯片均采用了这一技术。

--ARM7500和ARM7500FE:

高度集成的单芯片RISC计算机,基于一个缓存式ARM732位内核,拥有内存和I/O控制器、3个DMA通道、片上视频控制器和调色板以及立体声端口;ARM7500FE那么增加了一个浮点运算单元以及对EDODRAM的支持。

特别适合电视顶置盒和网络计算机〔NC〕。

 

WindowsCE的PocketPC只支持ARMWindowsCE可支持多种嵌入式处理器,但基于WindowsCE的PocketPC那么只支持ARM一种。

微软在对SH3、MIPS、ARM等嵌入式处理器做了评估后认为,ARM是一种性价比拟好的选择。

由于目前ARM在手持设备市场占有90%以上的份额,只支持ARM,可以有效地缩短应用程序开发与测试的时间,也降低了研发费用。

由于ARM开放其处理器授权,因此,用户在市场上可以在多家整机厂商中进行选择,从而保证了这一市场的竞争性。

 

看您拿来做什么?

许多世界知名电子公司都提供这方面的支持

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 经管营销 > 经济市场

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1