电脑桌面
添加盘古文库-分享文档发现价值到电脑桌面
安装后可以在桌面快捷访问

arm入门心得

来源:漫步者作者:开心麻花2025-11-191

arm入门心得(精选5篇)

arm入门心得 第1篇

ARM学习心得,ARM入门,ARM基础,什么是ARM 一个电子工程师的ARM学习心得 目录:

一 首先说说ARM的发展 二 ARM是硬件还是软件 三 要不要买开发板 买哪家

四 要不要有51 AVR等单片机基础 五 开发都需要学习哪些软件

七 选UCOS?UCLINUX?LINUX?VXWORKS?还是当单片机用 八 学习要用多长时间

九 ARM都玩什么 十 我用的什么板子 十一 开发流程

十二 关于JTAG访真器 十三 哪个公司的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类吧

1)首先是ZLG的,资料非常的全,感觉他是真正想教你怎么开发ARM,而不是像有的公司自己技术都没做好就做个板子出来卖钱。但是最大的不利就是价格太贵!而且主要是PHILIP的,货源比较麻烦~~可能有人说21XX系列的不贵啊,那是总线不外扩的,只能跑UCOS,不能跑UCLINUX。但是说是话,21XX系列才是ARM7的价格性能结合点。ARM7最适合做工业控制,ARM普及,销量都是怎么来的?都是ARM7来的,而44B0是典型的商业片子。但是,这里如果你看中的是为工作做准备,还是选能跑UCLINUX的吧。但是仍然作为第一个推荐,因为菜鸟时期,合适的资料太重要了!在这里被ZLG的务实*感动!你看人家那代码写的。

2)感觉硅谷芯微的2440不错

硬件没别的,就是资料比较全的说,不像有些家,原理图直接拿人家的,还错的~~ 3)找个最便宜的

好象最便宜的有卖350的吧?也是没别的,就是即省了钱 还省时间搜集资料,至于资料全不全,别计较了~~硬件肯定好使就行吧。四 要不要有51 AVR等单片机基础

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

两个月以前,我只是看别人做,耳濡目染~~,本科学过单片机,从来没做过。我们这的技术主干做AVR和51,我就跟他们调过C语言程序。你看出来了?我是个不折不扣的菜鸟吧? 但是做这个之前我特意找了ZLG的两本书,看了里面的例子和原理图,这很重要。例程里有汇编有C,都看懂了就OK,不用自己现写 五 开发都需要学习哪些软件 总结起来最主要的有以下几个吧 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使用了。BANYANT调试代理(不知道名对不,起这么个难记的,我一般都叫它“半羊”因为知道它那几天刚吃了烤羊)

调试代理就是用它帮你使用更简单的JTAG(便宜啊)来实现原本1K才卖的JTAG仿真器的大部分功能。JTAG调试原理看我另一篇笔记。简单的就可以把他理解为你自己做的JTAG的驱动就行了。

调试代理还有很多种,什么H-JTAG了、ARM7了(不知道具体叫什么,就记得可执行文件叫ARM7.EXE)都是,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,安装方法在我另一篇笔记里。七 选UCOS?UCLINUX?LINUX?VXWORKS?还是当单片机用 搞开发,工程设计,用UCOS,小巧,多进程,简单,体现了ARM7的精髓。2 LINUX 正根的嵌入式系统,LINUX消费与通信领域用的比较多,但缺点是必须ARM9才能跑,ARM9的板子自己做就不行了,6层板太贵。买开发板500-1500吧。但是还是推荐选ARM9+LINUX 3 UCLINUX 算投机嵌入式系统:)ARM7上可以跑,由有LINUX近亲,学好好可以比较方便的转向LINUX,像我一样的穷鬼用吧,呵呵 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线直接连接。

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

这里是我的开发流程 设计原理图(含WIGGLER的JTAG访真器)2 设计PCB(含WIGGLER的JTAG访真器)3 制版 焊接电压,确定电压没问题 焊接44B0+JTAG电路+WIGGLER的JTAG访真器+周边电路,用BANYANT+仿真器连接,BANYANT提示错误,但可以显示44B0编号,好象是0X0F0F0F0F只类的,说明44B0没问题 焊接晶体+RAM+ROM+周边电路,用BANYANT+仿真器连接,可以显示正确的44B0了 7 用BANYANT+仿真器连接,开AXD,在命令行窗口操作RAM,看可不可以修改,可以的话(用内存窗口看RAM地址)RAM就没问题 可以用这个命令“setmem 0xc000000,0xffffffff,32”

我的RAM挂在BANK6上 所以地址是0XC000000,你要是改了就也得改。8 用我写的《自己写了个C工程模板又写了个使用说明 》里的方法调试程序吧,写个简单的,我当时写个LED闪烁的。看好使不。把程序按照《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差不多,资料太少,项目中选还不错。其他两家上面说了的不多说了吧 ARM9 这个玩2410和2440的多吧,现在2440还比较火啊 可以考虑买个了 但是2410就比较便宜了,作为学习来说反到和不错,推荐整一个:)

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

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

硅谷芯微技术中心: 芯片级IT教育第一品牌 开设课程:单片机、嵌入式、ARM、Linux、Android、iphone、PCB设计 硅谷芯微推荐:嵌入式ARM9驱动实战开发班

本文由JACK转载与网络,如有版权问题,请通知本人删除

arm入门心得 第2篇

一 首先说说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,不用自己现写

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

总结起来最主要的有以下几个吧ADS调试用

确切的说是ADS+AXD。ADS里包含AXD。原来都用SDT后来ARM公司停止对SDT支持了,改支持ADS了,还是用ADS吧。

有的人的程序发布的仍然是SDT版本的,但基本都可以找到相应ADS的,新人在这里不要发蒙。ADS是编译器,AXD是调试器。便宜成AXF以后再在ARM的RAM里调试。PLASHPGM

FLASH烧写的软件。AXD在RAM里调试,掉电就没有了,方便程序修改。调试好的程序再下到FLASH里,上电直接运行。

同类的软件还有很多,什么FLUTED了、FLSHP了都是,但FLASHPGM最好,要是有人还问FLASH不支持BIN格式文件的问题就要看我写的PLASHPGM使用了。BANYANT调试代理(不知道名对不,起这么个难记的,我一般都叫它“半羊”因为知道它那几天刚吃了烤羊)

调试代理就是用它帮你使用更简单的JTAG(便宜啊)来实现原本1K才卖的JTAG仿真器的大部分功能。JTAG调试原理看我另一篇笔记。简单的就可以把他理解为你自己做的JTAG的驱动就行了。

调试代理还有很多种,什么H-JTAG了、ARM7了(不知道具体叫什么,就记得可执行文件叫ARM7.EXE)都是,BANYANT比较好。

需要注意的是,没种调试代理安装方法虽然都简单但都不一样,需要看说明。而且AXD调试之前都要运行。省钱了,就别怕麻烦了。ARM-ELF-TOOLS工具链

里面是UCLINUX开发用的工具比如ARM-ELF-GCC只类的。工具链就是把很多工具打包在一起发布的方便你开发的东西。具体安装方法看我另一篇笔记。

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

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

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

有了BOOTLOADER才能下UCLINUX。BOOTLOADER就像电脑上的BIOS。当然UCOS的不用这个,用什么我不知道:)

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

UCLINUX的源码包,不用多说了吧?建议大家用现成的先体会一下,然后再自己编译,裁剪。因为单独UCLINUX的编辑技术上比较简单,但涉及的方面还是比较广的。VMWARE

老牌的虚拟机软件,在一个机器上虚拟出一个机器装LINUX(PC上用的),省得你来回开关机了。记得装VMWARE-TOOLS,安装方法在我另一篇笔记里。

六 有哪些书推荐

主要推荐ZLG的三本书,有这3本再加网络就不用别的书了,其中主要推荐前2本,3是介绍体系结构的,也不错ARM嵌入式LINUX系统构建与驱动开发,北航版

驱动写的很详细,前期开发介绍也很好ARM 嵌入式系统实验教程

(二),北航版

有ZLG2200的原理图,实验程序和注释,了解人家是怎么开发的。ARM嵌入式系统基础教程

最重要的是体系结构,汇编部分介绍,看看吧,增加理论素质。44B0数据手册

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

不推荐ZLG早期出的红色皮的ARM什么体系结构~只类的写的太多,看烦了。

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

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

学好后可以找到高薪工作,但工作机会本身并不比LINUX好找。当单片机用

不推荐,虽然我景仰的ZLG一直号召这么干。因为对于学习来说多进程的系统设计才是ARM7的玩头,至少你也要整个UCOS啊:)

有朋友问我先学这个当基础不行吗?那当然可以~~但我当时就用了1周搞定,就是我先的ADS在RAM中调试的笔记。后来我清空FLASH用的小段程序还是当时写的LED闪烁程序呢。另外1周里其中还因为自己过于菜,没把OM设置好导致晶阵不阵

哈哈。这个是必须做的,但一带而过。目标放的远一点。

八 学习要用多长时间

我从菜鸟到现在两个多月,中间被打扰数次。仍然搞定了PCB设计与制版,RAM调试,FLASH下载,UBOOT移植和下载UCLINUX(没剪裁,用现成的),LCD驱动。

再次坦诚的说:我确实比较菜,说这些不是让大家羡慕,只是告诉你们“你们应该比这个更好”

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

九 ARM都玩什么

就几点硬件设计系统移植驱动开发应用开发

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

十 我用的什么板子

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

我是自己做的,RAM、ROM、8019等比较麻烦而当时的自己不理解的都按照龚俊的做的。保持其他不便的情况下做了如下改动。加了串口通信的GPS模块、GPRS模块

一个UART0,一个UART1,当与要用超级终端时用跳线切换。SD卡,和7843触摸屏

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

用的ZLG的7290,不占用CPU,最大支持64个键子,只上了35个,其他留接口。4 把LCD接口按照买的LCD改装了,可以用FPC线直接连接。

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

十一 开发流程

这里是我的开发流程设计原理图(含WIGGLER的JTAG访真器)设计PCB(含WIGGLER的JTAG访真器)制版焊接电压,确定电压没问题焊接44B0+JTAG电路+WIGGLER的JTAG访真器+周边电路,用BANYANT+仿真器连接,BANYANT提示错误,但可以显示44B0编号,好象是0X0F0F0F0F只类的,说明44B0没问题 6 焊接晶体+RAM+ROM+周边电路,用BANYANT+仿真器连接,可以显示正确的44B0了用BANYANT+仿真器连接,开AXD,在命令行窗口操作RAM,看可不可以修改,可以的话(用内存窗口看RAM地址)RAM就没问题

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

我的RAM挂在BANK6上 所以地址是0XC000000,你要是改了就也得改。用我写的《自己写了个C工程模板又写了个使用说明 》里的方法调试程序吧,写个简单的,我当时写个LED闪烁的。看好使不。把程序按照《FLASH烧写总结 》里的烧到FLASH里,测试一下按照《UBOOT 移植操作》移植UBOOT按照《UCLINUX下载简单说明》下个UCLINUX看看驱动开发的方法,自己写个驱动看看还有很多事东西着你玩 呵呵

十二 关于JTAG访真器

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

按照并口定义不同分几种,建议选WIFFLER定义的,因为支持的软件多。这个网上多的是,不多说了。

值得提的是有的JTAG访真器原理图上有跳线用来使能复位信号,这个一般不跳上。就是不用复位信号,因为JTAG协议里本身也可以控制44B0复位。

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

ARM入门两步走准备篇 第3篇

ARM是一家微控制器设计公司。它本身并不出售芯片而只是将微处理器的内核技术出售。芯片厂商购买他们的I P (知识产权) 后, 可以按需要加入RAM, ROM, USB, CAN, USART等外围模块, 从而构建具有“自家特色”的处理器。ARM公司凭借这种“只卖技术, 不卖东西”的经营理念, 经过十几年的发展。现在, 以ARM为内核的芯片占据着手机处理器90%的市场份额, 平板电脑处理器70%的市场份额, 每年的出货量都以十亿计。由于市场份额的不断攀升, 连软件帝国微软公司, 也宣布将会在最新的Windows8操作系统上支持以ARM为内核的处理器。

既然ARM这么厉害, 那学它肯定会很难很昂贵吧?

对不起, 您错了!学会ARM, 您只需不到20块钱。“什么, 只要20块?您不会是骗人吧?”您可能会惊叫道。继续往下阅读, 您就知道我是不是在骗您了。

关于STM32F103

在说STM32F103之前, 我想先向您简单介绍一下ARM内核家族。作为专业设计处理器内核的公司, ARM内核并不仅有一两种, 而是从低端到高端有着完整的系列。在ARM官方网站上我们可以看到, A R M公司将其分为经典处理器两大类, 以及新推出的Cortex系列处理器两大类。经典处理器主要包括ARM7, ARM9, ARM11。而Coretex主要包括CoretexMx, CoretexRx, CoretexAx (“x”代表“某个数字”的意思, 以上“处理器”仅指内核) 。现在, 我将为您介绍以CoretexM3作为内核的STM32F103系列微控制器的入门。首先, 让我简单介绍一下STM32F103RBT6。

时钟:最高72MHz的时钟频率, 带PLL (锁相环) 。通过设置几个寄存器, 您就可以轻松地将外部8MHz晶振的时钟频率在芯片中提高9倍。另外, 芯片内部也有经过校准的R-C振荡器。在时间准确性要求不高的场合, 您完全可以省去接晶振的麻烦, 特别对于我们初学者来说, 更是有效地降低了接错线的概率。要知道, 接错线一根线都有可能将集成了上千万个晶体管的芯片烧掉!

接口:带有USB2.0、IIC、USART、SPI、IIS、CAN等接口, 可以满足不同的需要。特别是对于初学者, 买一块芯片就可以学更多的知识了。只要您喜欢, 您可以把它制成一个U盘;只要您喜欢, 您可以将它制成一个MP3播放器。

存储器:128KB的片内FLASH、20KB的RAM。像飚车一样, 轻松跑起uc/OSII等操作系统。

除此之外, 它还带有JTAG和SW两种调试接口。SW下只需两根数据线, 大大降低我们初学者出错的概率。拥有49个IO口 (GPIO) , 3个定时器, 20mA的扇出电流直接驱动LED等详细资料请参考数据手册, 我在这里就不一一列举了。

关于开发板

当看到这里, 您可能会问“这块芯片是不是很贵呀?”, “我需要买什么型号的开发板?”, “开发板价位在多少?”等问题。我的回答是:“您根本不需要买开发板。自己动手做, 如果熟练的话, 用不了1个小时就能做出属于自己的开发板。您只需要有最基础的焊接技术并奉献出一点点耐心, 保证连线无误就可以了。”表1是具体的材料清单, 以及参考价格。即使把JLINK加起来也不足100元。如果您家附近没有电子市场, 可以在淘宝上买到所有材料。唉!每次想起以前花500大洋买的不带硬件仿真的51学习板, 我就不由得懊恼起来。

由于STM32F103RBT6是LQF64封装的, 为了方便焊接, 我们最好买一块LQF64的小转接板, 如图1。如果您希望将代码下载到芯片上运行, 可以通过串口下载代码的方式, 只不过这样的话我们就无法对它调试了。就是说我们不能通过软件, 一步一步跟踪芯片执行的代码。这不管对于初学者还是开发人员来说都是很痛苦的事。还好, 我们可以通过JTAG接口进行调试。在过去, 开发人员都是在PC机的并口上连接一块JTAG小板来实现的。JTAG小板固然方便, 但是在今天, 大部分PC机都将并口淘汰了。现在我们大部分都是用JLINK将USB信号转成JTAG的。因此, 我建议大家最好再买一个JLINKV8调试器。

JLINKV8调试器其实是很好很强大的。在开发软件上, 它不但可以支持MDK, 还支持鼎鼎大名的IAR以及ARM公司早期的ADS1.2。在内核上, 它不但可以支持Cortex系列, 还支持ARM7, ARM9, ARM11内核。好学的你肯定不会仅仅了解一种内核吧?

选择JLINK, 您已成功了一半!

具体制作

1.我们首先要将STM32焊接到转接板上, 最好选用防静电的调温电烙铁, 温度控制在300℃~350℃。现在的CMOS芯片很怕静电, 我以前学MSP430时就因为用一把普通的电烙铁来焊接, 尽管很小心, 结果还是毁了好几片芯片, 从此以后再也不敢用它了。另外, 最好用扁平的烙铁头。这样接触面积大、导热快, 焊接起来会很快很方便的。

2.连接电源引脚。“电源不就一正一负吗?”以前用过51单片机的朋友会说。然而, 由于STM32片内具有高精度AD转换器。如果它与数字信号共用电源的话将会引起测量值不稳, 误差大等问题。不过由于我们暂时用不到AD, 因此在这里我们将模拟和数字电源共用也是没有问题的。连接方法如图2画框区域, VSS连到负极, VDD连到正极就可以了。由于电源引脚比较多, 最好直接在转接板“飞线”, 把杂乱无章的电源“飞线”隐藏在转接板底部, 仅1对电源引线接入到洞洞板的电源供应电路, 这样看起来舒服多了。另外, 如果我们为了省事, 准备用电脑的USB接口供电的话, 那么直接与芯片相连是绝对不行的, 因为USB的电压是5V, 而芯片的供应电压是3.3V。这时, 就需要有一个电路将5V转到3.3V。在这里, 我们使用HT7133作为调压器, 外加2个电容就行了。具体原理图如图3, 实物如图1。根据您的喜好, 可以用一个发光二极管连到3.3V作为指示灯 (有的发光二极管额定电压可能是低于3.3V的, 串联上一个470Ω的限流电阻即可) 。

3.JTAG连接:标准的JTAG需要4根数据线, 不过在SW模式下只需要2根。SWDIOD对应第46脚;SWCLK对应第49脚;NRST (复位) 对应第7脚。我们只需要将这几个管脚外加电源引脚与JLINK接口一一对应就行了, JLINK接口上都会标有每个管脚的功能 (如图5) , 不用查资料, 直接对照着焊就行了!JTAG接口在洞洞板上的连接实物如图1。接法如图4。 (图4是JTAG的标准接法, 因此要连接的引脚会多一点, 不过在SW模式下就没那么多了。另外, 根据芯片的器件手册的说明, 芯片内部已经连接了上拉/下拉电阻, 不过为了保证通信的可靠, 相应的脚最好再在外部连接上10k电阻到VDD。)

4.BOOT (启动方式) 选择

也许您会很好奇地问:“启动方式是什么, 以前怎么没听说过这个词?”的确51, MSP430等单片机均没有启动方式这个概念, 因为它们复位后便从FLASH的0地址处运行代码了, 而STM32则有些不同。它可以从FLASH, 系统引导装载程序或, SRAM三种方式下启动。我们需要通过BOOT0和BOOT1两个管脚来配置, 如图6, 实物如图1。另外, 为了日后学习方便, 我们可以用短路帽将它们连到高/低电平。在调试代码的时候通常选择从系统引导装载程序启动, 只需BOOT1连到高电平, BOOT0连到低电平就行了。

关于IDE (集成开发环境)

过去, 开发人员往往使用ADS1.2进行ARM的开发。而现在, 我们可以使用更优秀的软件。比如KEIL, IAR等。在这里, 我将介绍一下用KEIL软件的设置。KEIL目前已被ARM公司收购, 在开发ARM为内核的芯片时往往称作MDK, 因此以下称MDK。目前最新版是4.0版。读者可以到ARM的官方网站下载最新版。如果您没有购买此软件, 可能会有一定代码量的限制, 不过作为初学者使用没有大问题。

工程建立

在一开始, 我们没必要自己建立工程。MDK提供了很多例子, 我们只需打开它既可。地址在:D:KEIL3.80AARMExamplesSTSTM32F10xFWLibExamples。如果您的软件安装在D盘下, 直接“复制”就可以了, 如果在C盘, 那开头字母应该成“C”。然后在地址栏中键入或者一级一级地打开文件夹。

在安装了JLINK V8的上位机软件之后 (卖家将负责教您如何安装) , 我们接上JLINK-V8。在MDK中打开示例工程后。如图7所示:在菜单栏中点击“Project”选择“Options for Target”菜单项, 打开Options for Target选项卡, 在Debug栏选择仿真工具为Cortex-M3 J-LINK。

然后我们点击Settings, 设置J-LINK的一些参数。

我们使用J-LINK V8的SW模式调试。可以点击Auto Clk来自动设置Max Clock。我们使用默认的设置, 此时JLINK的调试速度为10MHz。如果您的USB数据线比较差, 那么可能会出问题。此时, 您可以通过降低这里的速率来试试。

单击OK, 完成此部分设置。接下来我们还需要在Utilities选项卡里面设置下载时的目标编程器, 如图8所示。

我们选择J-LINK来调试Cortex M3。然后点击Settings, 这里要根据不同的MCU选择FLASH的大小, 因为我们开发板使用的是STM32F103RBT6, 其FLASH大小为128K, 所以我们在Programming Algorithm里面选择128K型号的STM32。最后根据需要选中Rese and Run, 以实现在编程后自动启动。其他默认设置即可。

arm心得. 第4篇

本次实习时间是一周,我们组所选的题目是直流电动机转速控制设计,其要求有:硬件部分要求在LPC2100系列ARM的最小系统的基础上,设计通过按键控制直流电动机速度的驱动电路,要求通过LPC2100内置的PWM发生器控制直流电动机;并将电动机速度通过串口送至PC机。软件部分要求设计以上功能的脱机运行程序,并在试验室调试通过。我负责的是硬件部分。首先我将系统分为两部分。一是电动机控制驱动电路;二是ARM最小系统。在电动机驱动中,直流电机控制使用了H桥驱动电路,控制口线为P0.21、P0.22。在ARM最小系统中,分为5部分:电源电路、复位电路、JTAG接口电路、RS232串口电路、时钟电路。

在制作原理图中,我查阅了实验指导书和课本。我所选用的是2114板子。因为LPC2114是基于一个支持实时仿真和跟踪的16/32位ARM7TDMI-STM CPU的微控制器,并带有128/256 k字节(kB)嵌入的高速Flash存储器。128位宽度的存储器接口和独特的加速结构使32位代码能够在最大时钟速率下运行。对代码规模有严格控制的应用可使用16位Thumb模式将代码规模降低超过30%,而性能的损失却很小。

在这个过程中,我注意到了许多问题。通过最小系统的制图,我对一些问题逐渐了解,不像刚开始学习一样,感觉什么也不懂,硬装知识。我画了5部分,这几个部分让我对书上的内容更加深了学习。如:时钟电路中,我就把时钟系统和晶体振荡两节课程,重新学习。

而在软件设计中,在我的搭档编程完之后,我也对程序进行了研究。在主程序中,我们用的是i、j表示速度与方向,正转为“+”、反转为“—”;最小速度为1,最大速度为4。先让电机正向慢慢的加速,加到正传的最大速后,在按下就变成反转,然后在依次加速,往返循环,直至没有按键按下。所运用的是,调节PWM的占空比就能达到电机的速度调节。

我们组在硬件中遇到的问题并不多,主要是在画各部分原理图时找器件很不熟练,不能很快的找到。这说明我不经常用软件。其实这个软件制图很方便,各种器件几乎都能找到,找不到时也可以在上面画图。

软件中,程序在编译正确后,下载方面出现了许多问题,如连接不上;不能生成hex文件等。其实这些问题,都是因为我们对软件不熟悉所造成的。在我们多次调试、链接之后,终于完成。

书法入门心得 第5篇

我是一名手工香道作坊主,小练书法也有几年了,前几日一师弟问:作为入门者,需要准备和注意什么?

说实话,这是一个很宏观的话题,我仅仅只能就自己的心得体会马虎回答。

书法入门心得体会,在我看来,无非这样几点:

1、了解书法的要义:滴水石穿,没有捷径。

2、试试不同的笔,你会发现不是所有笔都适合你的书写习惯,选择你最顺手和舒心的那支笔。这是我的老师教给我的第一课——欲善其事,先利其器。

3、看字!对,看。可能我接受的都是在野的路子,而不是正统的书法教育的原因吧。不要急匆匆地上手,而是去看。你会发现,其实写的好的字,最重要是笔画之间的结构!结构,结构!重要的事情说三遍。然后再是字与字之间的结构,这样,一副作品在心里就出现了。怎么说呢?这就好比一个设计总监,心里已经有了具体的画面细节,差的只是动手去呈现出来!

4、要坚持自己的审美。审美,是随着书法技术层次的提升,一步一步地改变的。对!最初接触书法的人,总会无意中接触、欣赏各类高大上的作品,非常懵逼地跟着老师的指点,如何如何!其实,一开始,你只需要点头微笑就可以了。你现在的审美情趣没到那个层次,没必要强迫自己,有一天你会明白的!这里面还涉及一个敏感的人际话题——要知道,学员之间因为身份职业的差异,好多点评早已超出了书法的层面,你懂得„„

5、不时把玩你的笔。没事的时候,把笔拿手上玩。让你的手习惯有笔的感觉。反正,你平时手里也拿着手机不是?就像我老师说的,这就犹如,你总能感觉到鞋底有颗很小很小的小石子,膈着你,那这就可以说是“人鞋合一”了。

6、多练习!书法其实就是肌肉的记忆展现。

7、依据个人的习惯,选择训练的方式。这是很微妙的哦,我一师兄,一开始就啥也不练,只写草书。哈哈„„,有人习惯从简单到复杂,也有人习惯从复杂到更复杂!所以说,练习书法还真是个发现自我审视自我的过程呢。

8、一开始就要告诉自己,没个一年半载不可能有进步,端正态度。

9、慢慢尝试去理解别人作品里面的精神。看古人的作品,看多了,总会找到一丝丝当时作者的心情、思想,完成这一步,你这就可怕了。你基本上具备了从量变到质变的基础了。

10、随时找到两种“冰火两重天”的境界:虚静和帜热!譬如:《兰亭序》一定不是在虚静的情况下写出来的,狂草也多数不是虚静状态能创作的。而蝇头小楷、平时抓基本功,一定出自虚静处。

11、一段时期之后,内心不要去迎合“大家”的言论。言书必古,一向是我非常反感的。唯颜柳为尊,视古为圣,我就想问问:从颜真卿到今天好汉历史里,别的书法家都是打酱油的?充其量跟我一样,也是个临帖者?这就好比一说到华夏璀璨文明,你扳指头数吧,解放后的成就基本没有。我的水平不一定能超越前者,但我的心态一定要有所逾越!

12、学会横看成岭侧成峰的视觉审美。老师常说:人怕上床。字怕上墙。一副作品挂起来,你会发现啥也不是。这就是视觉差异所造成的。

13、学会体会书法带给你的喜悦。书法是一件很煎熬的命题,喜悦与成就感是克服枯燥的有效方法。一个人的气质、状态的变化,都是读书、经历和长期从事的练习给与的,书法就是其中重要的一种。

14、书法最后,写的是“心”。笔正则心正!

15、书法创作,必须有“虚静、立意、用法、泻意”的心理变化。唯有用法的“法”,是平时练习积累的各类技巧,其余的,都是一系列心境的变化。得物去我、四下皆空、胸有文章、帜情于笔、一气呵成„„

16、说了这么多,感觉不是那么简单地能够掌握和运用的。这里有一个良好的建议:多涉猎姊妹艺术和兴趣爱好。天下之道莫不一统,瑜伽、禅修、茶艺、香道、书法„„,你会发现最后讲究的心境,都是一模一样的!

17、寻求一些外在物件的帮助。比如气味!!

我就一直在做这方面的尝试,也收到了诸多良好的反馈。

最初,是为了给老师准备一件别出心裁的生日礼物,挖空心思。由于自己是一个散漫的人,我做练习的砚台是一个倒流香炉,反正我也很多,顺手就拿过来用了。

但是后来,我发现,每次创作前,先不要着急下笔,而是刻意地慢腾腾地倒入墨汁,点燃一粒倒流香,静静地看着倒流香,像纯洁的牛奶,象云彩一样的香气,慢慢倾泻而下,凝居在下面的墨潭里面。

鼻翼里呼吸着崖柏的雄浑气息,闭上眼,感受那股香气的微妙运行,瞬间真就得物去我,直达虚静状态。

在胸中气象万千,写意大发的时候,笔尖饱舔含香浓墨,把心中的意象顺笔锋倾泻而下,一气呵成。

追求了那么久的境界,因为一缕香气的灵动而井喷爆发„„

我想:所谓精进,无非如斯,概莫能外!

于是,我把这样一件不算礼品的“礼品”,送给老师,结果出乎意料的好,现在基本成了学院班的标配。哈哈„„

趁着这股热情,马上又开发用于研墨的“添香墨”,一如既往地好!

arm入门心得

arm入门心得(精选5篇)arm入门心得 第1篇ARM学习心得,ARM入门,ARM基础,什么是ARM 一个电子工程师的ARM学习心得 目录:一 首先说说A...
点击下载文档文档内容为doc格式

声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。

确认删除?
回到顶部