你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

ARM入门最好的文章(1)

[复制链接]
得蜜 发布时间:2009-1-15 16:02
1.ARM简介(摘录)
' t: ?! v7 i, |# L/ V  ARM(Advanced RISC Machines)是微处理器行业的一家知名企业,设计了大量高性能、廉价、耗能低的RISC处理器、相关技术及软件。技术具有性能高、成本低和能耗省的特点。适用于多种领域,比如嵌入控制、消费/教育类多媒体、DSP和移动式应用等。
: X6 u! f( v& q! X1 b. X1 E  ARM将其技术授权给世界上许多著名的半导体、软件和OEM厂商,每个厂商得到的都是一套独一无二的ARM相关技术及服务。利用这种合伙关系,ARM很快成为许多全球性RISC标准的缔造者。
5 V: W% j3 m) ^, F, m  目前,总共有30家半导体公司与ARM签订了硬件技术使用许可协议,其中包括Intel、IBM、LG半导体、NEC、SONY、菲利浦和国民半导体这样的大公司。至于软件系统的合伙人,则包括微软、升阳和MRI等一系列知名公司。8 k+ P  ]- _+ i. h
  ARM架构是面向低预算市场设计的第一款RISC微处理器。
" s9 o" _* J& Y7 y, a  2.产品介绍& a: p5 E: r8 t! S2 X7 d' ]
  ARM提供一系列内核、体系扩展、微处理器和系统芯片方案。由于所有产品均采用一个通用的软件体系,所以相同的软件可在所有产品中运行(理论上如此)。典型的产品如下。' r: Q' W1 g7 j% Z
   ①CPU内核3 q( i$ g% r7 E; T: g4 }2 c
   --ARM7:小型、快速、低能耗、集成式RISC内核,用于移动通信。
/ @7 I  M% Z7 |5 i  -- ARM7TDMI(Thumb):这是公司授权用户最多的一项产品,将ARM7指令集同Thumb扩展组合在一起,以减少内存容量和系统成本。同时,它还利用嵌入式ICE调试技术来简化系统设计,并用一个DSP增强扩展来改进性能。该产品的典型用途是数字蜂窝电话和硬盘驱动器。
$ R9 |' G- w1 c* U  --ARM9TDMI:采用5阶段管道化ARM9内核,同时配备Thumb扩展、调试和Harvard总线。在生产工艺相同的情况下,性能可达ARM7TDMI的两倍之多。常用于连网和顶置盒。4 u3 \. R9 [  ^8 X! s& o, K
  ②体系扩展( v( q# x( H& `
  -- Thumb:以16位系统的成本,提供32位RISC性能,特别注意的是它所需的内存容量非常小。- \, [7 |4 z) c- {0 [3 ~
  ③嵌入式ICE调试4 {, {9 A7 j) [7 U5 \
  由于集成了类似于ICE的CPU内核调试技术,所以原型设计和系统芯片的调试得到了极大的简化。
( E2 M$ q5 c7 b% _( I  ④微处理器
8 D/ T  j$ E/ Z5 H  G  --ARM710系列,包括ARM710、ARM710T、ARM720T和ARM740T:低价、低能耗、封装式常规系统微型处理器,配有高速缓存(Cache)、内存管理、写缓冲和JTAG。广泛应用于手持式计算、数据通信和消费类多媒体。( v  [* \: P! u/ t, o2 [" L4 P
   --ARM940T、920T系列:低价、低能耗、高性能系统微处理器,配有Cache、内存管理和写缓冲。应用于高级引擎管理、保安系统、顶置盒、便携计算机和高档打印机。, H! u9 V/ B+ H5 x% z8 \6 g" M
  --StrongARM:性能很高、同时满足常规应用需要的一种微处理器技术,与DEC联合研制,后来授权给Intel。SA110处理器、SA1100 PDA系统芯片和SA1500多媒体处理器芯片均采用了这一技术。& @7 R% V$ K8 U. q* t* n7 o/ a" `
  --ARM7500和ARM7500FE:高度集成的单芯片RISC计算机,基于一个缓存式ARM7 32位内核,拥有内存和I/O控制器、3个DMA通道、片上视频控制器和调色板以及立体声端口;ARM7500FE则增加了一个浮点运算单元以及对EDO DRAM的支持。特别适合电视顶置盒和网络计算机(NC)。
2 W; @# p/ Z+ EWindows CE的Pocket PC只支持ARMWindows CE可支持多种嵌入式处理器,但基于Windows CE的Pocket PC则只支持ARM一种。微软在对SH3、MIPS、ARM等嵌入式处理器做了评估后认为,ARM是一种性价比较好的选择。由于目前ARM在手持设备市场占有90%以上的份额,只支持ARM,可以有效地缩短应用程序开发与测试的时间,也降低了研发费用。由于ARM开放其处理器授权,因此,用户在市场上可以在多家整机厂商中进行选择,从而保证了这一市场的竞争性。
赞 收藏 评论6 发布时间:2009-1-15 16:02

举报

6个回答
得蜜 回答时间:2009-1-15 16:12:01

回复:ARM入门最好的文章(1)

1.抓住51开发ARM' r5 v8 T2 t. O% j& @. _5 I
& |3 M8 F; h' ^% q; j) f

" d+ ?& w+ E6 ?+ e这几个月来我一直都爬在51的问题,自己都有一点笑自己了,用了4个月的时间,来巩固51的原理和程序,还好我自己算是走过来了,自己笨,身边的高才生又看不上51的原理,他们都比较“牛”,说51过时了,你问那个做什么???我比较郁闷!过时吗?我有一点怀疑?
, @* J$ m% f) k  y9 A2 j( H; t" L他们不愿意说有他们自己的理由,没有人强求,靠自己好了。
& E- _) l% c5 {$ f% u" ^我自己个人的观点:51是一个基础,而且还很重要,这是再我看了ARM之后感觉到的。它可以加速你的ARM学习速度,真得!不相信你试一试好了。( L& L2 ^: X6 W
凡是要求一个速度、效率,不要做一些无用功,抓紧身边的每一个一分钟,人是活的,东西(知识、书)是死得,想要做的事情因此就简单了。
/ T( Z2 E/ z1 _0 ]8 N0 e! W) T7 j% c8 i: X9 U- K

8 v* ~0 O9 D" H. C! t2.我在网上看到了一篇很不错的ARM文章,粘贴过来,为了和像我一样在很少有人帮助的情况下,自学ARM 的难兄难弟们。' S. N* [' E0 f$ l4 i  I9 H) X% N, ?

8 c1 X8 ~( R( I1 x( Y3 C
$ T9 C1 G: ~* `3 `* Q“ARM怎么入门”。我不是高手,仍然是菜鸟。
6 x, [& b+ g' l5 Y但是回想起自己当时的迷茫,特意写了这篇东西,当作给和我一样的兄弟姐妹的帮助吧。问这个问题的人多半不是已经工作的工程师,而是和我一样是学生,所以这篇笔记就把看家当成我一样的菜鸟,高手勿怪。7 \7 o. w- R; m
首先声明:本人还没有找工作,事实上处于研究生刚毕业,还没开始找工作的空闲时间,44B0只是爱好所在,打发时间。 字串5 6 e0 w! ], M8 A" A6 k" h( e: p
所有看法完全是自己的感受,不代表任何他人。错了的观点各位帮我纠正。再次补充:很多朋友看了上面的话就问我为什么研究生毕业了还不找工作:)说是打发时间,其实是因为研究生的时候带了一个项目,申请提前毕业以后项目还有块尾巴,答应导师把项目做完再走:)就这么简单。男人总点负点责,呵呵
2 W. h6 H6 b5 `6 n- ^" b以下问题常被问到,我就想到哪说到哪吧。
得蜜 回答时间:2009-1-15 16:13:53

回复:ARM入门最好的文章(1)

二 ARM是硬件还是软件
# j$ y6 j+ L4 I4 ^                       
/ n  a2 u; e7 c' i: P6 L                        很难说,ARM是硬件,LINUX是软件。ARM的硬件多半已经模块化了,像我这样把板子改成这样的就算动的多的了,这同样是ARM公司的战略,再次佩服。
; ~3 _" H4 D2 X* s7 d8 D6 D0 A                        实际中的LINUX的开发工作更多,更耗时。从这方面说ARM应该算是软件了。4 C2 V  `4 h9 V6 t* j
                        在找工作中更是这样,举个例子,联想里和ARM最接近的是“BIOS工程师”是软件,MOTO里接近的是嵌入式LINUX工程师是软件。而其他很多公司把嵌入式产品开发归为硬件。所以,不要讨论这个,好好玩转自己的板子才是要害。实在不爽你就把自己叫“嵌入式开发工程师”
. H$ [% s+ i) W& a3 [- ^* F" ~                        0 L+ H$ |) k0 \
                       
- q) `/ O3 I; ?0 z* B" ?5 p                        三 要不要买开发板 买哪家# e) F; ~+ ^- e! T
                       
! R- P" c) j* x' P. g3 p                        我的答案是“在你个人的学习方法”,但是假如看家是需要看这骗笔记的水平,个人推荐还是买现成的。' B1 E4 |3 c, K6 `& O" q
                       
3 x" `4 J7 A* c2 L9 l7 m$ q                        1 买
+ z9 ~: t" ^& P  q3 B: m. W                        买板子可以把注重力集中在软件开发上,软件开发(尤其是驱动)可以不必担心自己硬件上的问题,我就是以便调试一边写驱动和程序,每次写驱动前就要先确认硬件没问题。另外,买板子更省钱和时间,我自己做的板子,原理图PCB花了2周以上!制版又15天,回来以后焊接44B0 160个脚!那叫一个麻烦~~花了多少钱呢?2层板,制版费就300块!当然 我把接口都外引了,还做了个20X18的LCD背板,板子比较大。总体下来 元件 LCD屏 PCB=11XX块!够2410的了。                                                 字串4                       
  ?0 Q  W+ |$ T. y: f0 }2 G                        ! q' ~7 I  x* l* k- F) Y, @
                        再有就是买的资料相对来说比较全,但是不要指望有技术支持!都是骗人的,卖你之后就不会理你。
1 e9 X1 X" G1 u  N" I9 D                        # N) E. @  v  j- Z! H
                       
! P( q4 B/ f" U5 h' z                        2 做
, O6 _+ U) Z! V9 ~8 Q6 R                        自己做可以更了解底层硬件,可以按照自己的要求加东西,比如我就加了GPS模块、 GPRS模块 、SD卡模块,扩了个IIC的35个键子的键盘、把LCD接口按照买的LCD改装了,可以用FPC线直接连接。做的很爽的。玩一把吗。
4 R/ ~9 X- D5 {* r                        当然,你可以有策略的做,比如像我一样,把RAM和ROM,网络都保持和某现成的板子一样,这样他们的资料你就可以拿过来直接用,给自己留个退路。其他的如SD了 什么的自己做。都达到了~~就是费钱,费时间。
+ E2 G( @/ u3 l& p                        再有就是给做的朋友几点建议:尽量拿到现成的板子,尽量多搜集其他板子的全套资料,一定要拿到一张没问题的原理图。
3 y$ i7 m5 Z+ K6 Y$ s7 R( r                        网上流传的原理图多数是龚俊03年画的,再这里对龚俊表达一下我的敬意!!牛人!# ~8 I7 V$ |) B/ t; s
                        但是那个图有个小BUG,我指的是03版的,后来的没这问题了。8019那地址线和地址有问题。还有人仿照他的PDF图画的SCH,更是漏洞百出!谴责!顺便谴责把龚俊板子偷卖的人。
; }* X* z. P1 b                       
( Q; n7 Y3 }' g: Z' c2 R4 `                        & C" L6 I9 h" u1 r0 g6 }
                        3 买哪家
( f& H  f  _  g# j/ b- J                        个人感觉分3类吧 ARM # o+ T5 G0 y& \1 D+ }. ~; A
                        1)首先是ZLG的,资料非常的全,感觉他是真正想教你怎么开发ARM,而不是像有的公司自己技术都没做好就做个板子出来卖钱。但是最大的不利就是价格太贵!而且主要是PHILIP的,货源比较麻烦~~可能有人说21XX系列的不贵啊,那是总线不外扩的,只能跑UCOS,不能跑UCLINUX。但是说是话,21XX系列才是ARM7的价格性能结合点。ARM7最适合做工业控制,ARM普及,销量都是怎么来的?都是ARM7来的,而44B0是典型的商业片子。但是,这里假如你看中的是为工作做预备,还是选能跑UCLINUX的吧。
! H2 c5 p1 t$ C* i7 W3 }% w                        但是仍然作为第一个推荐,因为菜鸟时期,合适的资料太重要了!!在这里被ZLG的务实精神感动!你看人家那代码写的。, }2 c* T# d* w0 {0 B6 C% v% V9 I+ S; Z& |
                        2)感觉立宇泰的44B0不错
" M4 ?, N: a( e& L                        硬件没别的,就是资料比较全的说,不像有些家,原理图直接拿人家的,还错的~~
, F- V* N! b+ L5 T$ L                        3)找个最便宜的
% N5 s7 `) `* N5 x5 F, e2 n" S5 d9 |                        好象最便宜的有卖350的吧?也是没别的,就是即省了钱 还省时间搜集资料,至于资料全不全,别计较了~~硬件肯定好使就行吧。
: [: H$ J! `3 r% S- }7 q                       
得蜜 回答时间:2009-1-15 16:19:08

回复:ARM入门最好的文章(1)

四 要不要有51 AVR等单片机基础
6 g! _( j& Z' \% f有更好,但没有也无所谓。
, R$ C4 |8 K8 o2 O  u两个月以前,我只是看别人做,耳濡目染~~,本科学过单片机,从来没做过。我们这的技术主干做AVR和51,我就跟他们调过C语言程序。你看出来了?我是个不折不扣的菜鸟吧? 字串8
/ |, w8 F& M8 [6 C" K0 Z+ J) _  W4 Q( Y- j& C! p( R
但是做这个之前我特意找了ZLG的两本书,看了里面的例子和原理图,这很重要。例程里有汇编有C,都看懂了就OK,不用自己现写
, j8 _4 t/ o# r3 @- s4 h五 开发都需要学习哪些软件4 |2 r8 p0 y! e5 ~( i* H
总结起来最主要的有以下几个吧& i4 @1 K% y8 M) Q# |2 o  k" M

; t* P1 N, o% F2 n$ ^' z. A, `1 ADS调试用
  n5 }  m6 L/ d# Q7 O; L$ d6 P确切的说是ADS AXD。ADS里包含AXD。原来都用SDT后来ARM公司停止对SDT支持了,改支持ADS了,还是用ADS吧。6 A$ p; ~$ V# @, [5 z# ]$ a; \1 L
有的人的程序发布的仍然是SDT版本的,但基本都可以找到相应ADS的,新人在这里不要发蒙。ADS是编译器,AXD是调试器。便宜成AXF以后再在ARM的RAM里调试。
7 @, A2 V. v. m# \& n; P7 t. e! K5 h) }* Q8 d, }( Z

7 a$ o3 H" Z( f9 d! I! ^2 PLASHPGM
2 |' t: n, J; z7 VFLASH烧写的软件。AXD在RAM里调试,掉电就没有了,方便程序修改。调试好的程序再下到FLASH里,上电直接运行。* _  U" O( [0 H7 _- c7 L
同类的软件还有很多,什么FLUTED了、FLSHP了都是,但FLASHPGM最好,要是有人还问FLASH不支持BIN格式文件的问题就要看我写的PLASHPGM使用了。1 p0 {+ N  ?1 h, R0 v) b( o3 i4 H

: p, y, Z+ E) s3 z' b
$ g" G9 _& h4 ?# C0 `3 BANYANT调试代理(不知道名对不,起这么个难记的,我一般都叫它“半羊”因为知道它那几天刚吃了烤羊)
9 [, ]% ~( f/ r' \& \* P调试代理就是用它帮你使用更简单的JTAG(便宜啊)来实现原本1K才卖的JTAG仿真器的大部分功能。JTAG调试原理看我另一篇笔记。简单的就可以把他理解为你自己做的JTAG的驱动就行了。 ARM开发论坛
4 W8 h$ v: G3 J) o% J+ `调试代理还有很多种,什么H-JTAG了、ARM7了(不知道具体叫什么,就记得可执行文件叫ARM7.EXE)都是,BANYANT比较好。
* y6 f" Z1 E& s# c2 V7 `需要注重的是,没种调试代理安装方法虽然都简单 但都不一样,需要看说明。而且AXD调试之前都要运行。省钱了,就别怕麻烦了。
. V" i5 m6 t6 ^5 R6 U
3 Q1 T% w' E+ g/ Y. h2 }2 w) _7 B- |$ x. o0 K6 J0 L
4 ARM-ELF-TOOLS工具链
+ D( G2 e  A8 X/ w+ O: C里面是UCLINUX开发用的工具比如ARM-ELF-GCC只类的。工具链就是把很多工具打包在一起发布的方便你开发的东西。具体安装方法看我另一篇笔记。1 y6 K5 Q$ T7 d' M  B! k0 P2 j
另外假如你开发LINUX就要用ARM-LINUX-TOOLS,不一样,不通用。
1 r2 d1 F% y; ~% Z! a5 ]: Y% f* m5 o% m. j; f
8 ~  ~, N: m' S+ i+ _& a* F% [* j! ]
5 U-BOOT
: g# _2 ]& W' a6 d* {) e8 i5 U大名鼎鼎的BOOTLOADER生成工具,同类的好象还有VIVI(名字很暧昧~~)9 ]7 Q2 N) Z$ R: i  e% K
生成的BOOTLOADER烧到FLASH里,然后就可以用BOOTLOADER下载 烧写其他了5 A% s* x% q- O( s, J3 F
有了BOOTLOADER才能下UCLINUX。BOOTLOADER就像电脑上的BIOS。当然UCOS的不用这个,用什么我不知道:)
5 Q& s2 |9 a% h" \$ G/ m最新版本是1.1.4 具体使用方法看我另一篇笔记吧。
! A. J: i: Y3 N. U; H8 P# G0 l

* m* D; E% G7 @/ v4 `! x2 e0 J* j6 UCLINUX包
, |2 o( M& z% S3 N  pUCLINUX的源码包,不用多说了吧?建议大家用现成的先体会一下,然后再自己编译,裁剪。因为单独UCLINUX的编辑技术上比较简单,但涉及的方面还是比较广的。 字串5 * A7 i# R+ F) z! y& S. ^. N' ?
4 K! l8 I6 o! i

- v' P: H8 x, g$ _* O' P7 VMWARE. v; w" q: W: k3 f$ {
老牌的虚拟机软件,在一个机器上虚拟出一个机器装LINUX(PC上用的),省得你往返开关机了。记得装VMWARE-TOOLS,安装方法在我另一篇笔记里。
得蜜 回答时间:2009-1-15 16:22:15

回复:ARM入门最好的文章(1)

六 有哪些书推荐) l2 y- x7 D9 q" k$ h8 f( H
主要推荐ZLG的三本书,有这3本再加网络就不用别的书了,其中主要推荐前2本,3是介绍体系结构的,也不错, b9 s% v! `6 S3 p* j! s3 W* w
# G9 ~& c3 M4 {$ H
1 ARM嵌入式LINUX系统构建与驱动开发,北航版/ }, K  ~" `6 e" b$ y9 V
驱动写的很具体,前期开发介绍也很好
) c  R/ C/ p' b4 m' h" J
1 G- U6 H5 B- I$ U4 w4 h2 ARM 嵌入式系统实验教程(二),北航版# W) G7 g, ?3 K$ t: k
有ZLG2200的原理图,实验程序和注释,了解人家是怎么开发的。" A1 O4 U, A' Y; ?& `6 P: W- d
* H/ q8 {# X- }5 \8 Z
3 ARM嵌入式系统基础教程7 M8 {+ [) O4 a$ [. o, O
最重要的是体系结构,汇编部分介绍,看看吧,增加理论素质。, ?9 x  L/ W) X, G/ b5 H
% N% S2 A! H. t2 G4 J% W6 c' N
4 44B0数据手册
  i4 a, T& R+ [) r写在这里是强调它的重要。5 V/ }; `5 N8 ]  M; T

; H0 H! U- n2 ]% z! `" v: |+ f9 G  U& B1 \1 u. M
不推荐ZLG早期出的红色皮的ARM什么体系结构~只类的
* L4 w. m. k/ l7 a& \写的太多,看烦了。
' D. }) P0 |$ \6 ?+ h" J- o- A其他的书没了几本,没看见好的,大家有看过的推荐吧。+ ^( E; E( |  w" f$ N
8 c: _' J5 v* a4 ^% j
; M, f0 _3 d2 F* t5 r  R
七 选UCOS?UCLINUX?LINUX?VXWORKS?还是当单片机用
0 c; q8 X% \3 x! _+ j9 {  x  [1 搞开发,工程设计,用UCOS,小巧,多进程,简单,体现了ARM7的精髓。
! D% _" A/ `% L8 M3 `! u2 LINUX 正根的嵌入式系统,LINUX消费与通信领域用的比较多,但缺点是必须ARM9才能跑,ARM9的板子自己做就不行了,6层板太贵。买开发板1K达底吧。但是还是推荐选ARM9 LINUX : k( R5 u. O- R; \, z/ M" t
3 UCLINUX 算投机嵌入式系统:)ARM7上可以跑,由有LINUX近亲,学好好可以比较方便的转向LINUX,像我一样的穷鬼用吧,呵呵
! e- u" o7 m) V4 VXWORKS
" X9 c6 q- W( ?  `学好后可以找到高薪工作,但工作机会本身并不比LINUX好找。0 A3 K% ]; ?6 L. F: @- ?- X) Z. u
5 当单片机用' Q1 d! s, X2 b
不推荐,虽然我景仰的ZLG一直号召这么干。因为对于学习来说多进程的系统设计才是ARM7的玩头,至少你也要整个UCOS啊:)
* ]' o0 N$ K* U( [& ?' L有朋友问我先学这个当基础不行吗?那当然可以~~但我当时就用了1周搞定,就是我先的ADS在RAM中调试的笔记。后来我清空FLASH用的小段程序还是当时写的LED闪烁程序呢。另外1周里其中还因为自己过于菜,没把OM设置好导致晶阵不阵
, J+ {+ Y. D/ a/ ~% G. g8 F, }+ @哈哈。这个是必须做的,但一带而过。目标放的远一点。4 ?* D7 n! J" a0 E
# x" T) R5 j" {! L& v9 b

( I2 Q$ k+ l$ f. j& ~" j) `八 学习要用多长时间7 ?/ a* Y$ H! i2 i: r3 U
我从菜鸟到现在两个多月,中间被打搅数次。仍然搞定了PCB设计与制版,RAM调试,FLASH下载,UBOOT移植和下载UCLINUX(没剪裁,用现成的),LCD驱动。4 d% T, V9 R7 @( z$ \
再次坦诚的说:我确实比较菜,说这些不是让大家羡慕,只是告诉你们“你们应该比这个更好”
! R3 Q5 G/ ?7 Y! f我相信良好的态度 合适的方法 及时的总结=成绩
: d$ D; O. W0 Y# u* e, x+ g
$ R% q0 V; ~0 M+ a3 Z8 R4 H5 L
# ~: S! U6 c0 \* O5 z九 ARM都玩什么
% Y9 o5 n4 O: [: c( H" P0 `% f就几点- d" L; O9 p# j# l
1 硬件设计0 v2 X7 L( v# I- d) Z, Z3 o$ H! g
2 系统移植  V" \+ q* W7 @% x: L) h6 i
3 驱动开发" p. {6 z$ n' A) @% j: ~, v8 O" _
4 应用开发  a4 H* H; w2 |- J
没了。其中推荐把注重力放在后两个上,3有难度,4比较灵活,最重要的是都是找工作的砝码。 字串4
4 j- i% ?: z( w; I; q. S; h! ]6 ^
3 E4 ~+ N8 B; A) W5 R, S+ m$ R
4 I" I) @  ?; y6 q. `1 ?4 M6 c. U$ R十 我用的什么板子1 m" e: Z1 p$ j4 |
很多人问我这个问题,我特意写过一个的。再说一次吧。
2 V/ O$ u0 ]. Y5 q5 Z5 X我是自己做的,RAM、ROM、8019等比较麻烦而当时的自己不理解的都按照龚俊的做的。保持其他不便的情况下做了如下改动。
) u, M3 m4 z" }' ^" k9 C1 加了串口通信的GPS模块、 GPRS模块
: a/ U0 {1 X$ N* `8 f4 F1 ]1 x一个UART0,一个UART1,当与要用超级终端时用跳线切换。$ k3 O. \5 |3 f* A% Q( N
2 SD卡,和7843触摸屏" {; n) m# q! D: @" S
同时挂在SPI总线上,因为SPI只能挂一个设备,同时还做了I/O模拟的预备,把两个设备又通过跳线挂在4个IO上。1 w: a  |* N9 ]4 M
3 扩了个IIC的35个键子的键盘
$ s4 o  |6 C- Y0 N9 q" R3 Q用的ZLG的7290,不占用CPU,最大支持64个键子,只上了35个,其他留接口。
8 j6 f4 o# \5 X7 Y9 `4 把LCD接口按照买的LCD改装了,可以用FPC线直接连接。
8 b; j, w( ^3 U3 W. E( L/ i所以改动虽然多,但真正很移植了,初期调试有关的并没动,就是为了现在不那么菜的时候做预备:)
得蜜 回答时间:2009-1-15 16:24:37

回复:ARM入门最好的文章(1)

十一 开发流程0 }7 ?$ ~, ]1 M( J
这里是我的开发流程
. _: Q$ ^/ h- w8 ]1 设计原理图(含WIGGLER的JTAG访真器)
5 T4 |) j% H* M" ~, x  p2 设计PCB(含WIGGLER的JTAG访真器)2 n0 m# d7 _# ~- p
3 制版- @6 t- m2 L' c! Z: ?; m
4 焊接电压,确定电压没问题
) E* P3 E& ^: S# E3 o5 焊接44B0 JTAG电路 WIGGLER的JTAG访真器 周边电路,用BANYANT 仿真器连接,BANYANT提示错误,但可以显示44B0编号,好象是0X0F0F0F0F只类的,说明44B0没问题
7 O$ U3 z+ c5 A- _" V* o, Y6 焊接晶体 RAM ROM 周边电路,用BANYANT 仿真器连接,可以显示正确的44B0了 0 A8 R& }* ?$ c# j: t
7 用BANYANT 仿真器连接,开AXD,在命令行窗口操作RAM,看可不可以修改,可以的话(用内存窗口看RAM地址)RAM就没问题1 D+ R2 d2 @. s$ u2 }1 H9 \) _; F3 o) G
可以用这个命令“setmem 0xc000000,0xffffffff,32”' ?( F8 X# O" v# f  |( W2 ]
我的RAM挂在BANK6上 所以地址是0XC000000,你要是改了就也得改。* |3 l8 f8 r/ G
8 用我写的《自己写了个C工程模板又写了个使用说明 》里的方法调试程序吧,写个简单的,我当时写个LED闪烁的。看好使不。
3 u* u5 ^7 M8 Y: k9 把程序按照《FLASH烧写总结 》里的烧到FLASH里,测试一下
7 y% N; Y( j9 p2 ]; B7 w10 按照《UBOOT 移植操作》移植UBOOT
; ]! U& }; G) L. f# `11 按照《UCLINUX下载简单说明》下个UCLINUX4 {# M2 [; N+ r! n  R
12 看看驱动开发的方法,自己写个驱动看看
, k5 q. u/ T" M8 W/ Y7 Y0 X13 还有很多事东西着你玩 呵呵& E* b/ G+ S1 I
7 Q/ \# s- U- u6 V: }
8 h$ U! H* O7 g- q8 u
十二 关于JTAG访真器
1 F9 H" v8 |5 \; DJTAG访真器现在用的多是简板的,一个244那种,用的没什么不好。8 [( l' Y: e; V& o/ H
按照并口定义不同分几种,建议选WIFFLER定义的,因为支持的软件多。这个网上多的是,不多说了。7 ~) \( G0 C  B% n- M2 C. x; V
值得提的是有的JTAG访真器原理图上有跳线用来使能复位信号,这个一般不跳上。就是不用复位信号,因为JTAG协议里本身也可以控制44B0复位。
# i! D& [* k$ q& T: L当然,板子上的复位信号跳线也不用跳。7 N% G' J. J$ R; N+ N) B' K0 n$ [

( m" u2 p# w* H( b. @! A7 A/ G" C9 R2 b8 A4 v
十三 哪个公司的ARM6 g  T; d! [) r; X4 n3 B3 A
这个是问题比较简单。$ b2 w; z5 n4 A7 x1 u  C
, p4 @5 ~5 @$ {" T, l) ]
1 ARM7主要就几个公司的
: I6 [% L0 e! }三星,PHILIP,ATMEL的 & b4 t3 S8 z; ^" y% n. H& u; C3 v
" t0 T) ]$ Q* A; j
ATMEL的有比较便宜的AT91SAM7S32 和AT91SAM7S64 专为8位应用产品量身定做,价格很便宜好象《3刀吧。和PHILIP的21XX差不多,资料太少,项目中选还不错。
$ S( Q4 U8 m  s$ L+ l1 x! V! e其他两家上面说了的不多说了吧6 p' i; t+ w: v' n1 ~( M

4 f( \  P( C7 r) l: P# B- C( C' A; S3 E
2 ARM9
- R, c/ m! s9 O5 _6 |9 |这个玩2410和2440的多吧,现在2440还比较火啊 可以考虑买个了; x2 t+ e) W( W' j. }, O6 o. _
但是2410就比较便宜了,作为学习来说反到和不错,推荐整一个:)
  @* \* Q5 Q. @7 r" D/ q( e: k+ _其实ARM9用的最多的领域应该是消费电子,比如手机PDA,而这上面用的多的应该是INTEL的和TI的吧。: ^) j& J2 |+ r6 d) \6 r7 @. q
但是INTEL的TI的入门材料少,价格高,自己看情况定吧。
萧星-96138 回答时间:2009-1-15 17:08:35

RE:ARM入门最好的文章(1)

学arm 不用学51  根本不是一回事,arm是硬件 因为用arm做产品  你不仅要编程 外围电路也很重要
关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版