2022年新手一定要看的学习笔记-ARM开发

上传人:工**** 文档编号:567388655 上传时间:2024-07-20 格式:PDF 页数:6 大小:70.13KB
返回 下载 相关 举报
2022年新手一定要看的学习笔记-ARM开发_第1页
第1页 / 共6页
2022年新手一定要看的学习笔记-ARM开发_第2页
第2页 / 共6页
2022年新手一定要看的学习笔记-ARM开发_第3页
第3页 / 共6页
2022年新手一定要看的学习笔记-ARM开发_第4页
第4页 / 共6页
2022年新手一定要看的学习笔记-ARM开发_第5页
第5页 / 共6页
点击查看更多>>
资源描述

《2022年新手一定要看的学习笔记-ARM开发》由会员分享,可在线阅读,更多相关《2022年新手一定要看的学习笔记-ARM开发(6页珍藏版)》请在金锄头文库上搜索。

1、以下问题常被问到,我就想到哪说到哪吧。一 首先说说 ARM 的发展可以用一片大好来形容,翻开各个公司的网站,招聘里面嵌入式占据了大半工程师职位。广义的嵌入式无非几种:传统的什么51、AVR、PIC 称做嵌入式微控制器;ARM 是嵌入式微处理器;DSP;FPGA。客观的讲,工作需求量上DSP 的需求比 ARM 要多,而 ARM 和 FPGA 差不多。DSP 因为数字处理与通信领域的空前发展而火暴,小到MP3 射象头,大到我们军品里的控制器,应用面很广。FPGA 的兄弟一般做ANSIC(特殊芯片设计,好象是这么翻译的)。而 ARM 单纯说来并不比一个单片机强多少,但是它的独特就在于不断下降的价格和

2、提升的性能。这完全依靠于 ARM 公司的战略,厉害! !很佩服他们的战略眼光! !值得注意的是:在找工作中,企业(著名的,小的不算)对单纯的ARM 硬件开发工程师并不比单片机重视,很少有大企业的职位里写“ 从事过 ARM 开发优先 ” 。写的多的是什么?“ 嵌入式 LINUX ”到这相信大家看出来了吧,需要的是硬件中的软件 。二 ARM 是硬件还是软件很难说, ARM 是硬件, LINUX 是软件。ARM 的硬件多半已经模块化了,像我这样把板子改成这样的就算动的多的了,这同样是ARM 公司的战略,再次佩服。实际中的LINUX 的开发工作更多,更耗时。从这方面说ARM 应该算是软件了。在找工作中

3、更是这样,举个例子,联想里和ARM 最接近的是 “BIOS工程师 ” 是软件, MOTO 里接近的是嵌入式 LINUX 工程师是软件。而其他很多公司把嵌入式产品开发归为硬件。所以,不要讨论这个,好好玩转自己的板子才是关键。实在不爽你就把自己叫“ 嵌入式开发工程师”三 要不要买开发板买哪家我的答案是 “ 在你个人的学习方* ” ,但是如果看家是需要看这骗笔记的水平,个人推荐还是买现成的。1 买买板子可以把注意力集中在软件开发上,软件开发(尤其是驱动)可以不必担心自己硬件上的问题,我就是以便调试一边写驱动和程序,每次写驱动前就要先确认硬件没问题。另外,买板子更省钱和时间,我自己做的板子,原理图PC

4、B 花了 2 周以上!制版又15 天,回来以后焊接44B0 160 个脚!那叫一个麻烦 花了多少钱呢? 2 层板,制版费就300 块!当然我把接口都外引了,还做了个 20X18 的 LCD 背板,板子比较大。总体下来元件 +LCD 屏+PCB=11XX 块!够 2410 的了。再有就是买的资料相对来说比较全,但是不要指望有技术支持!都是骗人的,卖你之后就不会理你。2 做自己做可以更了解底层硬件,可以按照自己的要求加东西,比如我就加了GPS模块、GPRS模块 、SD卡模块,扩了个IIC 的 35 个键子的键盘、把LCD 接口按照买的LCD 改装了,可以用FPC线直接连接。做的很爽的。玩一把吗。当

5、然,你可以有策略的做,比如像我一样,把RAM 和 ROM,网络 都保持和某现成的板子一样,这样他们的资料你就可以拿过来直接用,给自己留个退路。其他的如SD 了 什么的自己做。都达到了 就是费名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 6 页 - - - - - - - - - 钱,费时间。再有就是给做的朋友几点建议:尽量拿到现成的板子,尽量多搜集其他板子的全套资料,一定要拿到一张没问题的原理图。网上流传的原理图多数是龚俊03 年画的,再这里对龚俊表达一下我的敬意!牛人

6、!但是那个图有个小BUG,我指的是03 版的,后来的没这问题了。8019 那地址线和地址有问题。还有人仿照他的 PDF图画的 SCH,更是漏洞百出!谴责!顺便谴责把龚俊板子偷卖的人。3 买哪家个人感觉分3 类吧 1 )首先是 ZLG 的,资料非常的全,感觉他是真正想教你怎么开发ARM,而不是像有的公司自己技术都没做好就做个板子出来卖钱。但是最大的不利就是价格太贵!而且主要是PHILIP 的,货源比较麻烦 可能有人说 21XX 系列的不贵啊,那是总线不外扩的,只能跑UCOS,不能跑UCLINUX。但是说是话,21XX 系列才是 ARM7 的价格性能结合点。ARM7 最适合做工业控制,ARM 普及

7、,销量都是怎么来的?都是ARM7来的,而 44B0 是典型的商业片子。但是,这里如果你看中的是为工作做准备,还是选能跑UCLINUX 的吧。但是仍然作为第一个推荐,因为菜鸟时期,合适的资料太重要了!在这里被ZLG 的务实 * 感动!你看人家那代码写的。2)感觉立宇泰的44B0 不错硬件没别的,就是资料比较全的说,不像有些家,原理图直接拿人家的,还错的 3)找个最便宜的好象最便宜的有卖350 的吧?也是没别的,就是即省了钱还省时间搜集资料,至于资料全不全, 别计较了 硬件肯定好使就行吧。四 要不要有 51 AVR 等单片机基础有更好,但没有也无所谓。两个月以前,我只是看别人做,耳濡目染 ,本科学

8、过单片机,从来没做过。我们这的技术主干做AVR和 51,我就跟他们调过C 语言程序。你看出来了?我是个不折不扣的菜鸟吧?但是做这个之前我特意找了ZLG 的两本书,看了里面的例子和原理图,这很重要。例程里有汇编有C,都看懂了就 OK,不用自己现写五 开发都需要学习哪些软件总结起来最主要的有以下几个吧1 ADS 调试用确切的说是ADS+AXD 。 ADS 里包含 AXD。 原来都用SDT 后来 ARM 公司停止对SDT 支持了,改支持 ADS了,还是用ADS 吧。有的人的程序发布的仍然是SDT 版本的,但基本都可以找到相应ADS 的,新人在这里不要发蒙。ADS是编译器, AXD 是调试器。便宜成A

9、XF 以后再在 ARM 的 RAM 里调试。2 PLASHPGM FLASH 烧写的软件。 AXD 在 R AM 里调试,掉电就没有了,方便程序修改。调试好的程序再下到FLASH里,上电直接运行。同类的软件还有很多,什么FLUTED 了、 FLSHP 了都是,但FLASHPGM最好,要是有人还问FLASH 不支持 BIN 格式文件的问题就要看我写的PLASHPGM 使用了。3 BANYANT 调试代理(不知道名对不,起这么个难记的,我一般都叫它“ 半羊 ” 因为知道它那几天刚吃了名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名

10、师精心整理 - - - - - - - 第 2 页,共 6 页 - - - - - - - - - 烤羊)调试代理就是用它帮你使用更简单的JTAG(便宜啊)来实现原本1K 才卖的 JTAG 仿真器的大部分功能。JTAG 调试原理看我另一篇笔记。简单的就可以把他理解为你自己做的JTAG的驱动就行了。调试代理还有很多种,什么H-JTAG 了、 ARM7 了(不知道具体叫什么,就记得可执行文件叫ARM7.EXE)都是, BANYANT 比较好。需要注意的是, 没种调试代理安装方* 虽然都简单但都不一样, 需要看说明。 而且 AXD 调试之前都要运行。省钱了,就别怕麻烦了。 4 ARM-ELF-TOO

11、LS 工具链里面是 UCLINUX 开发用的工具比如ARM-ELF-GCC 只类的。工具链就是把很多工具打包在一起发布的方便你开发的东西。具体安装方* 看我另一篇笔记。另外如果你开发LINUX 就要用 ARM-LINUX-TOOLS ,不一样,不通用。 5 U-BOOT 大名鼎鼎的BOOTLOADER 生成工具,同类的好象还有VIVI (名字很暧昧 )生成的 BOOTLOADER 烧到 FLASH里,然后就可以用BOOTLOADER 下载 烧写其他了有了 BOOTLOADER 才能下 UCLINUX。BOOTLOADER 就像电脑上的BIOS。当然 UCOS 的不用这个,用什么我不知道:)最新

12、版本是1.1.4 具体使用方 * 看我另一篇笔记吧。6 UCLINUX 包UCLINUX 的源码包,不用多说了吧?建议大家用现成的先体会一下,然后再自己编译,裁剪。因为单独UCLINUX 的编辑技术上比较简单,但涉及的方面还是比较广的。 7 VMWARE 老牌的虚拟机软件,在一个机器上虚拟出一个机器装LINUX(PC 上用的),省得你来回开关机了。记得装VMWARE-TOOLS,安装方 * 在我另一篇笔记里。六 有哪些书推荐主要推荐 ZLG 的三本书,有这3 本再加网络就不用别的书了,其中主要推荐前2 本,3 是介绍体系结构的,也不错 1 ARM 嵌入式 LINUX 系统构建与驱动开发,北航版

13、驱动写的很详细,前期开发介绍也很好 2 ARM 嵌入式系统实验教程(二),北航版有 ZLG2200 的原理图,实验程序和注释,了解人家是怎么开发的。 3 ARM 嵌入式系统基础教程最重要的是体系结构,汇编部分介绍,看看 吧,增加理论素质。 4 44B0数据手册写在这里是强调它的重要。不推荐 ZLG 早期出的红色皮的ARM 什么体系结构 只类的写的太多,看烦了。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 6 页 - - - - - - - - - 其他的书没了几本,没看

14、见好的,大家有看过的推荐吧。七 选 UCOS?UCLINUX?LINUX?VXWORKS?还是当单片机用1 搞开发,工程设计,用UCOS,小巧,多进程,简单,体现了ARM7 的精髓。2 LINUX 正根的嵌入式系统,LINUX 消费与通信领域用的比较多,但缺点是必须ARM9 才能跑, ARM9的板子自己做就不行了,6 层板太贵。买开发板1K 达底吧。但是还是推荐选ARM9+LINUX 3 UCLINUX 算投机嵌入式系统: ) ARM7 上可以跑,由有 LINUX 近亲, 学好好可以比较方便的转向LINUX,像我一样的穷鬼用吧,呵呵4 VXWORKS 学好后可以找到高薪工作,但工作机会本身并不

15、比LINUX 好找。5 当单片机用不推荐,虽然我景仰的ZLG 一直号召这么干。因为对于学习来说多进程的系统设计才是ARM7 的玩头,至少你也要整个UCOS 啊: )有朋友问我先学这个当基础不行吗?那当然可以 但我当时就用了1 周搞定, 就是我先的 ADS 在 RAM 中调试的笔记。 后来我清空FLASH 用的小段程序还是当时写的LED 闪烁程序呢。 另外 1 周里其中还因为自己过于菜,没把OM 设置好导致晶阵不阵哈哈。这个是必须做的,但一带而过。目标放的远一点。八 学习要用多长时间我从菜鸟到现在两个多月,中间被打扰数次。 仍然搞定了PCB设计与制版, RAM 调试,FLASH 下载,UBOOT

16、移植和下载UCLINUX(没剪裁,用现成的) ,LCD 驱动。再次坦诚的说:我确实比较菜,说这些不是让大家羡慕,只是告诉你们“ 你们应该比这个更好”我相信良好的态度+合适的方 *+ 及时的总结 = 成绩九 ARM 都玩什么就几点1 硬件设计2 系统移植3 驱动开发4 应用开发没了。其中推荐把注意力放在后两个上,3 有难度, 4 比较灵活,最重要的是都是找工作的砝码。十 我用的什么板子很多人问我这个问题,我特意写过一个的。再说一次吧。我是自己做的, RAM、ROM、8019 等比较麻烦而当时的自己不理解的都按照龚俊的做的。保持其他不便的情况下做了如下改动。 1 加了串口通信的GPS模块、GPRS

17、模块一个 UART0 ,一个 UAR T1 ,当与要用超级终端时用跳线切换。 2 SD 卡,和 7843 触摸屏名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 6 页 - - - - - - - - - 同时挂在 SPI 总线上,因为SPI 只能挂一个设备,同时还做了I/O 模拟的准备,把两个设备又通过跳线挂在 4 个 IO 上。 3 扩了个 IIC 的 35 个键子的键盘用的 ZLG 的 7290 ,不占用 CPU,最大支持 64 个键子,只上了35 个,其他留接口。

18、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+RO

19、M+ 周边电路,用BANYANT+ 仿真器连接,可以显示正确的44B0 了7 用 BANYANT+ 仿真器连接,开AXD,在命令行窗口操作RAM,看可不可以修改,可以的话(用内存窗口看 RAM 地址) RAM 就没问题可以用这个命令 “setmem 0xc000000,0xffffffff,32”我的 RAM 挂在 BANK6 上 所以地址是 0XC000000 ,你要是改了就也得改。8 用我写的自己写了个C 工程模板又写了个使用说明里的方 * 调试程序吧,写个简单的,我当时写个LED 闪烁的。看好使不。9 把程序按照 FLASH 烧写总结里的烧到FLASH 里,测试一下10 按照 UBOOT

20、 移植操作移植UBOOT 11 按照 UCLINUX 下载简单说明下个UCLINUX 12 看看驱动开发的方* ,自己写个驱动看看13 还有很多事东西着你玩呵呵十二关于 JTAG 访真器JTAG 访真器现在用的多是简板的,一个244 那种,用的没什么不好。按照并口定义不同分几种,建议选WIFFLER 定义的,因为支持的软件多。这个网上多的是,不多说了。值得提的是有的JTAG 访真器原理图上有跳线用来使能复位信号,这个一般不跳上。就是不用复位信号,因为 JTAG 协议里本身也可以控制44B0 复位。当然,板子上的复位信号跳线也不用跳。十三哪个公司的ARM 这个是问题比较简单。 1 ARM7 主要

21、就几个公司的三星, PHILIP ,ATMEL 的ATMEL 的有比较便宜的AT91SAM7S32 和 AT91SAM7S64 专为 8 位应用产品量身定做, 价格很便宜好象 3刀吧。和 PHILIP 的 21XX 差不多,资料太少,项目中选还不错。其他两家上面说了的不多说了吧名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 6 页 - - - - - - - - - 2 ARM9 这个玩 2410 和 2440 的多吧,现在2440 还比较火啊可以考虑买个了但是 2410 就比较便宜了,作为学习来说反到和不错,推荐整一个:)其实 ARM9 用的最多的领域应该是消费电子,比如手机PDA,而这上面用的多的应该是INTEL 的和 TI 的吧。但是 INTEL 的 TI 的入门材料少,价格高,自己看情况定吧。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 6 页 - - - - - - - - -

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号