ARM+Linux==嵌入式开发--->承接嵌入式项目开发

ARM开发工具汇编:
                      
目前在网上有好多的ARM开发工具集,但主要分类分为两大类,a、基于GNU GCC的toolchain;b、各种商业软件;具体分类如下:
一、Windows
    1、开源软件
      a、WINARM (based on MingW)
        类似于WINAVR,GUN的东西比较规范,资料也比较全
        http://www.siwawi.arubi.uni-kl.de/avr_projects/arm_projects/index.html 总站  
         by Martin THOMAS,相当的不错,里面也有好多其他的工具可以下载,是值得参考的网站
        http://gandalf.arubi.uni-kl.de/avr_projects/arm_projects/index.html   主站的镜像
        http://winarm.scienceprog.com/   也是不错的网站,有资料下载
         Everyone who is working with AVR microcontrollers knows this powerful tool – WinAVR which is completely
         open source and does the job comparable to commercial.
         It already has many routine tasks included in package that you don't need to worry about.
         So when shifting to ARM7 microcontrollers it is logical to try WinARM as nice alternative to WinAVR.
         WinARM tools are collected by Martin Thomas and put in one distribution package ready to use
           under Windows platform.
                          
        http://www.macraigor.com/full_gnu.htm gun工具
          In the past, most people have used the Macraigor OCDRemote utility that reads GDB serial commands
          and manipulates the ARM JTAG lines using the PC’s parallel port and a simple hardware level-shifting
          device called a “wiggler”.
          WIGGLER的发明人,他是与OCDromote一起配合使用,后来German college student Dominic Rath做了一个结业设计,就产生
          了著名的OPENOCD,主页是 http://openocd.berlios.de/web/
        http://sourceforge.net/projects/winavr AVR的homepage
          WinAVR (tm) is a suite of executable, open source software development tools for the Atmel AVR
          series of RISC microprocessors hosted on the Windows platform. Includes the GNU GCC compiler for C and C++.
      b、GNUARM  (based on cygwin)
        http://www.gnuarm.org/
          GNU ARM toolchain for Cygwin, Linux and MacOS
        http://www.gnuarm.com/
          GNU ARM toolchain
      c、YAGARTO (based on MingW+ecilpse)   "yet another GNU ARM Toolchain"
          not based on Cygwin
          works with Eclipse
          cheap for the beginners
      d、 http://www.codesourcery.com/
        CodeSourcery, in partnership with ARM, Ltd., develops improvements to the GNU Toolchain for ARM processors
        and provides regular, validated releases of the GNU Toolchain. Sourcery G++ Lite Edition supports ARM, Thumb,
        and Thumb-2 compilation for all architectures in active use, including Version 7 of the ARM Architecture.


      d、etc
    2、商业软件
     不多说了,一般个人使用,用于学习还是可以的了,他们和开源的软件比,主要优势在他的IDE开发环境,还有就是他还提供了register的定义和一些范例;
      a、ARM ADS
      b、ARM STD
      c、Keil ARM(realview MDK)
      d、Rowley.Associates.CrossWorks.for.ARM.v1
         Rowley Associates出品的东西 , 是一家嵌入式开发工具提供商,针对不同的CPU,推出了相应的开发工具 http://www.rowley.co.uk/
      e、IAR for ARM(EWARM)
      f、ICCV7 for ARM
       http://www.imagecraft.com/ 和IAR差不多了公司,就是小了点,也提供各种CPU的开发工具
      f、etc
二、Linux
    1、arm-linux-gcc
      LINUX平台下的开发工具,可以用它在LINUX下开发ARM。也是一个好选择哦 http://www.arm.linux.org.uk/
      如果用一句话讲清楚arm-linux-gcc和arm-elf-gcc的区别的话,如何来说呢?
      arm-linux-gcc是针对arm + linux的开发环境的,kernel使用的是linux,不是uclinux,arm是有硬件MMU的。
      而arm-elf-gcc是针对no MMU arm + uclinux的开发环境,kernel使用的是uclinux,硬件是廉价的无MMU的arm芯片。http://www.uclinux.org/
      arm-linux-gcc倒是有点类似X86 PC环境下的linux开发
    2、DIY
      可以自己动手在LINUX下编译出自己的toolchain,但是还是比较烦的哦,有一堆的东西设置,所以在一般情况下,不会自己去编译的了,但要知道有那么回事就好了
    3、etc

   面对这么多的开发工具链,我们应该怎么选择呢,我觉得其实都差不多了吧,对于GNU的东西,其实都 是对其进行了不同的封装,目的是为了方便用户的使用,而
商业软件则各有优点了,看你喜欢那个了,我个人喜欢IAR的,其实只要知道他们的开发流程,就可以了,所谓“万法合一”嘛!“一法通则通万法”

你可能感兴趣的:(ARM+Linux==嵌入式开发--->承接嵌入式项目开发)