1,ARM和LINUX什么关系? 2,ARM和单片机又是什么关系 3,LINUX的C和单片机的C有什么不一样的

大神们帮我分析下,1,ARM和LINUX什么关系? 2,ARM和单片机又是什么关系 3,LINUX的C和单片机的C有什么不一样的?

4,嵌入式的驱动开发等等是什么方向?具体是干什么的?
5,推荐几本好书

宁外,我学过单片机,现在准备学嵌入式,所以请大家着重于单片机的比较来回答问题,这样我比较能有个感性的认识.

谢谢......O(∩_∩)O~
学ARM需要买个板子才可以么?
最新回答
林中雨亭

2024-09-10 04:48:10

ARM(Advanced RISC Machines)是微处理器行业的一家知名企业,设计了大量高性能、廉价、耗能低的RISC处理器、相关技术及软件。技术具有性能高、成本低和能耗省的特点。适用于多种领域,比如嵌入控制、消费/教育类多媒体、DSP和移动式应用等。 ARM将其技术授权给世界上许多著名的半导体、软件和OEM厂商,每个厂商得到的都是一套独一无二的ARM相关技术及服务。利用这种合伙关系,ARM很快成为许多全球性RISC标准的缔造者。 目前,总共有30家半导体公司与ARM签订了硬件技术使用许可协议,其中包括Intel、IBM、LG半导体、NEC、SONY、飞利浦和国民半导体这样的大公司。至于软件系统的合伙人,则包括微软、升阳和MRI等一系列知名公司。 ARM架构是面向低预算市场设计的第一款RISC微处理器。 ARM 即Advanced RISC Machines的缩写,既可以认为是一个公司的名字,也可以认为是对一类微处理器的通称,还可以认为是一种技术的名字。 1985年4月26日,第一个ARM原型在英国剑桥的Acorn计算机有限公司诞生,由美国加州SanJoseVLSI技术公司制造。 20世纪80年代后期,ARM很快开发成Acorn的台式机产品,形成英国的计算机教育基础。 1990年成立了Advanced RISC Machines Limited(后来简称为ARM Limited,ARM公司)。20世纪90年代,ARM 32位嵌入式RISC(Reduced lnstruction Set Computer)处理器扩展到世界范围,占据了低功耗、低成本和高性能的嵌入式系统应用领域的领先地位。ARM公司既不生产芯片也不销售芯片,它只出售芯片技术授权。
编辑本段ARM的学习和开发都需要学习哪些软件
总结起来最主要的有以下几个吧 1 ADS调试用 确切的说是ADS+AXD。ADS里包含AXD。原来都用SDT后来ARM公司停止对SDT支持了,改支持ADS了,还是用ADS吧。 有的人的程序发布的仍然是SDT版本的,但基本都可以找到相应ADS的,新人在这里不要发蒙。ADS是编译器,AXD是调试器。编译成AXF以后再在ARM的RAM里调试。 2 FLASHPGM FLASH烧写的软件。AXF在RAM里调试,掉电就没有了,方便程序修改。调试好的程序再下到FLASH里,上电直接运行。 同类的软件还有很多,什么FLUTED了、FLSHP了都是,但FLASHPGM最好,要是有人还问FLASH不支持BIN格式文件的问题就要看我写的FLASHPGM使用了。 3 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。 8 source insight 代码编辑工具 linux下使用kscope
编辑本段ARM公司简介
1991 年 ARM 公司成立于英国剑桥,主要出售芯片设计技术的授权。目前,采用 ARM技术知识产权( IP )核的微处理器,即我们通常所说的 ARM 微处理器,已遍及工业控制、消费类电子产品、通信系统、网络系统、无线系统等各类产品市场,基于 ARM 技术的微处理器应用约占据了 32 位 RISC 微处理器 75 %以上的市场份额, ARM 技术正在逐步渗入到我们生活的各个方面。 ARM 公司是专门从事基于 RISC 技术芯片设计开发的公司,作为知识产权供应商,本身不直接从事芯片生产,靠转让设计许可由合作公司生产各具特色的芯片,世界各大半导体生产商从ARM公司购买其设计的 ARM 微处理器核,根据各自不同的应用领域,加入适当的外围电路,从而形成自己的 ARM 微处理器芯片进入市场。目前,全世界有几十家大的半导体公司都使用 ARM 公司的授权,因此既使得 ARM 技术获得更多的第三方工具、制造、软件的支持,又使整个系统成本降低,使产品更容易进入市场被消费者所接受,更具有竞争力。 ARM处理器的三大特点是:耗电少功能强、16位/32位双指令集和众多合作伙伴。 ARM商品模式的强大之处在于它在世界范围有超过100个的合作伙伴(Partners)。ARM 是设计公司,本身不生产芯片。采用转让许可证制度,由合作伙伴生产芯片。 当前ARM体系结构的扩充包括: ·Thumb 16位指令集,为了改善代码密度; ·DSP DSP应用的算术运算指令集; ·Jazeller 允许直接执行Java字节码。 ARM处理器系列提供的解决方案有: ·无线、消费类电子和图像应用的开放平台; ·存储、自动化、工业和网络应用的嵌入式实时系统; ·智能卡和SIM卡的安全应用。 ARM处理器本身是32位设计,但也配备16位指令集。一般来讲存储器比等价32位代码节省达35%,然而保留了32位系统的所有优势。ARM的Jazelle技术使Java加速得到比基于软件的Java虚拟机(JVM)高得多的性能,和同等的非Java加速核相比功耗降低80%。CPU功能上增加DSP指令集提供增强的16位和32位算术运算能力,提高了性能和灵活性。ARM还提供两个前沿特性来辅助带深嵌入处理器的高集成SoC器件的调试,它们是嵌入式ICE-RT逻辑和嵌入式跟踪宏核(ETMS)系列。
编辑本段内核种类
家族 架构 内核 特色 高速缓存 (I/D)/MMU 常规 MIPS 于 MHz 应用
ARM1 ARMv1 ARM1


ARM2 ARMv2 ARM2 Architecture 2 加入了MUL(乘法)指令 无 4 MIPS @ 8MHz Acorn Archimedes,Chessmachine
ARMv2a ARM250 Integrated (完整的)MEMC (MMU),图像与IO处理器。Architecture 2a 加入了SWP和SWPB(置换)指令。 无,MEMC1a 7 MIPS @ 12MHz Acorn Archimedes
ARM3 ARMv2a ARM2a 首次在ARM架构上使用处理器高速缓存 均为4K 12 MIPS @ 25MHz Acorn Archimedes
ARM6 ARMv3 ARM610 v3 架构首创支援寻址32位的内存(针对26位) 均为4K 28 MIPS @ 33MHz Acorn Risc PC 600,Apple Newton
ARM7TDMI ARMv4T ARM7TDMI(-S) 三级流水线 无 15 MIPS @ 16.8 MHz Game Boy Advance,Nintendo DS,iPod

ARM710T
均为8KB, MMU 36 MIPS @ 40 MHz Acorn Risc PC 700,Psion 5 series,Apple eMate 300

ARM720T
均为8KB, MMU 60 MIPS @ 59.8 MHz Zipit

ARM740T
MPU

ARMv5TEJ ARM7EJ-S Jazelle DBX 无

ARM9TDMI ARMv4T ARM9TDMI 五级流水线 无

ARM920T
16KB/16KB, MMU 200 MIPS @ 180 MHz Armadillo,GP32,GP2X(第一颗内核), Tapwave Zodiac(Motorola i. MX1)

ARM922T
8KB/8KB, MMU

ARM940T
4KB/4KB, MPU
GP2X(第二颗内核)
ARM9E ARMv5TE ARM946E-S
可变动,tightly coupled memories, MPU
Nintendo DS,Nokia N-GageConexant 802.11 chips

ARM966E-S
无高速缓存,TCMs
ST Micro STR91xF,包含Ethernet [2]

ARM968E-S
无高速缓存,TCMs

ARMv5TEJ ARM926EJ-S Jazelle DBX 可变动,TCMs, MMU 220 MIPS @ 200 MHz 移动电话:Sony Ericsson(K, W系列),Siemens 和 Benq(x65 系列和新版的)

ARMv5TE ARM996HS 无振荡器处理器 无高速缓存,TCMs, MPU

ARM10E ARMv5TE ARM1020E (VFP),六级流水线 32KB/32KB, MMU

ARM1022E (VFP) 16KB/16KB, MMU

ARMv5TEJ ARM1026EJ-S Jazelle DBX 可变动,MMU or MPU

XScale ARMv5TE 80200/IOP310/IOP315 I/O处理器

80219

400/600MHz Thecus N2100

IOP321

600 BogoMips @ 600 MHz Iyonix

IOP33x

IOP34x 1-2核,RAID加速器 32K/32K L1, 512K L2, MMU

PXA210/PXA250 应用处理器,七级流水线

Zaurus SL-5600

PXA255
32KB/32KB, MMU 400 BogoMips @ 400 MHz Gumstix,Palm Tungsten E2

PXA26x

可达 400 MHz Palm Tungsten T3

PXA27x

800 MIPS @ 624 MHz HTC Universal, Zaurus SL-C1000,3000,3100,3200, Dell Axim x30, x50,和 x51 系列

PXA800(E)F

Monahans

1000 MIPS @ 1.25 GHz

PXA900

Blackberry 8700, Blackberry Pearl (8100)

IXC1100 Control Plane Processor

IXP2400/IXP2800

IXP2850

IXP2325/IXP2350

IXP42x

NSLU2

IXP460/IXP465

ARM11 ARMv6 ARM1136J(F)-S SIMD, Jazelle DBX, (VFP),八级流水线 可变动,MMU ?? @ 532-665MHz (i.MX31 SoC) Nokia N93,Zune,Nokia N800
ARMv6T2 ARM1156T2(F)-S SIMD, Thumb-2, (VFP),九级流水线 可变动,MPU

ARMv6KZ ARM1176JZ(F)-S SIMD, Jazelle DBX, (VFP) 可变动,MMU+TrustZone

ARMv6K ARM11 MPCore 1-4核对称多处理器,SIMD, Jazelle DBX, (VFP) 可变动,MMU

Cortex ARMv7-A Cortex-A8 Application profile, VFP, NEON, Jazelle RCT, Thumb-2, 13-stage pipeline 可变动 (L1+L2), MMU+TrustZone up to 2000(2.0 DMIPS/MHz 从600 MHz到超过1 GHz的速度) Texas Instruments OMAP3

ARMv7-R Cortex-R4(F) Embedded profile, (FPU) 可变动高速缓存,MMU可选配 600 DMIPS Broadcom is a user

ARMv7-M Cortex-M3 Microcontroller profile 无高速缓存,(MPU) 120 DMIPS @ 100MHz Luminary Micro[3] 微控制器家族

设计文件
设计文件讲求精简又快速的设计方式,整体电路化却又不采用微码,就像早期使用在Acorn微电脑的8位6502处理器。
°小可爱

2024-09-10 00:38:51

1,ARM和LINUX什么关系?
ARM是一种MCU的架构,Linux是一种操作系统,ARM不是为Linux而设计,Linux也不是为ARM而设计,只是Linux可以移植到以ARM为核心的硬件平台下工作。除了linux外ARM还可以运行Windows CE、VxWord等嵌入式操作系统。因此可以认为他们是没有关系的。

2,ARM和单片机又是什么关系
ARM芯片就是一种功能超强的单片机,并且能运行操作系统的单片机。

3,LINUX的C和单片机的C有什么不一样的
几乎一样的,语法什么的也和我们平时学的C语言差不多。 不同的只是他们的编译器不一样,不同的编译器编译出针对不同平台的二进制代码。

4,嵌入式的驱动开发等等是什么方向?
嵌入式驱动开发属于底层开发, 需要了解硬件解构也要了解操作系统的工作原来等等, 比较复杂,就是教操作系统如果使用某个硬件。

5,推荐几本好书
建议你从ARM7开始学
《ARM嵌入式基础教程 第二版》 周立功 著
《ARM体系结构与编程》 杜春雷 著

强烈建议买板子,没有板子你只看书永远学不会,
买板子最重要的是要有配套的教学视频,
可以参考以下两种板子:
天祥电子的 TX-3C 有配套视频,价格较贵
立天电子的 LT-ARM210x 有配套视频,相对便宜。

最好从ARM7学起, 然后过度到ARM9、ARM11 ,不要一下就ARM9或11,本人的实际经验
狙击甜心

2024-09-10 06:28:28

ARM是一种单片机系列的名字或型号,ARM是一种单片机。
Linux是一类Unix计算机操作系统的统称,特点是开放源码。
C是一种编程语言,具有较强的底层操作功能。
LINUX的C和单片机的C的核心都是一样的,在语法上、一些关键词也相同。
嵌入式的驱动开发说白了就是连接单片机和计算机之间的桥梁。举个例子,打印机、扫描仪等的驱动程序。
推荐《嵌入式系统开发与应用》。你学过单片机,再学习嵌入式就简单多了。呵呵
一只眠羊

2024-09-10 03:25:29

我劝你转行吧,不要学计算机了。