单片机软件开发环境
走进单片机的软件开发环境

🏠 首页 《无线电》杂志 2005年 🔗 第1期 🔗 第41页 分类:电脑·单片机·通信 🔗 谢永宁 🔗

单片机应用系统的程序存储器中必须放入调试好的应用程序,系统才能运行,编写调试单片机应用程序需要相应的软件开发工具。单片机的软件开发工具可以分为两大类:一类是功能单一的开发工具,如源程序编辑器、汇编器、编译器、反汇编工具、反编译工具、软件仿真器、硬件仿真器等;另一类是将多种功能集成在一起的集成开发环境。

一个软件集成开发环境至少需要具有以下3个基本功能:


1.源程序的编辑器

采用某种计算机语言来编写应用程序。在单片机的开发环境中常使用的计算机语言有:汇编语言、C语言和BASIC语言等。

汇编语言是一种面向硬件的程序设计语言,要求设计人员必须了解单片机的硬件结构。汇编语言的实时性能非常好,当设计一个小的应用系统时,特别是实时时钟系统,对时钟要求很严格,一般都采用汇编语言编程。

C语言和BASIC语言都是高级程序设计语言,其语法结构更符合人们的思考习惯,开发者可以更专心地考虑算法而不是考虑一些细节问题,这样就减少了开发和调试的时间。使用高级语言程序员不必知道处理器的具体内部结构,不必十分熟悉处理器的运算过程,这意味着对新的处理器也能很快上手,使得用高级语言编写的程序比汇编程序有更好的可移植性。

源程序编辑器的实质是一个文本编辑器,因此,任何一个具有文本编辑功能的软件都可以用来编辑源程序,只是在保存时,必须按照编译工具的要求,保存为相应的文本格式,即文件后缀必须满足编译工具的要求。

源程序的编辑必须符合编译程序的语法规则要求,一个优秀的源程序编辑器可以自动判别编写的源程序是否符合编译程序的语法规则,并指出不合法的语句。


2.编译工具

将源程序转换为该单片机的机器语言程序(目标代码)。根据源程序编辑时所采用的计算机语言的不同,编译工具有:汇编器、C编译器和B编译器。

有的开发环境自带有编译工具,也有的开发环境是借助于单片机厂商提供的编译工具来实现编译功能。


3.仿真调试

仿真器有两种主要类型:一类是实时在线仿真器,这类仿真器需要采用与所仿真的单片机一致的仿真芯片构成硬件系统,可以做到完全的实时在线仿真,功能强大,开发起来非常方便;另一类是软件模拟仿真,完全由软件来模拟单片机的硬件环境,其实时性能较差,适用于简单、实时性不需很强的开发,这类仿真工具可以满足用户开发的低成本要求。

一个优秀的软件集成开发环境还应该集成更多的功能,如:


4.反编译工具

将单片机的目标代码转换为汇编语言源程序(反汇编)或高级语言源程序(反编译)。


5.程序下载

将编译生成的目标代码传送到应用系统的程序存储器中运行。


6.目标代码格式的转换

转换目标代码的格式。

当前流行的几种单片机系列的软件集成开发环境有:

一、AT89系列单片机软件开发环境


AT89
系列单片机是Atmel公司的产品,由于采用的是51单片机的内核,所以大量的51单片机的开发环境均可用来开发AT89系列单片机。


1.uVision2 IDE


uVision2
是Keil Software的IDE,是一个基于Windows的51单片机集成开发环境,它把项目管理、源代码编辑、程序调试等集成到一个功能强大的环境中。

利用该软件进行源代码编辑可采用C语言,也可采用汇编语言。uVision2支持所有的KEIL 8051工具,包括C编译器(C51)、宏汇编器(A51)、库管理器(LIB51)、连接/定位器(BL51)、分段目标文件转换器(OC51)、目标代码到HEX的转换器(OH51)。


uVision2
可以连接仿真器进行仿真调试,也可以进行软件仿真调试。


2.TKStudio IDE


TKStudio IDE
集成开发环境,软件从界面、功能到操作方法与KEIL


uVision2
高度兼容,提供Keil A51、C51系列开发工具的无缝接轨,实现编译连接工具的细节功能。系统在兼容KEIL uVision2时,更多地溶入了自己的风格与经验,使界面更美观,功能更实用,能更准确、快捷地完成仿真调试任务。


TKStudio
IDE目前可以免费下载使用,但其编译功能需要KEIL 8051工具的支持,包括C编译器(C51)、宏汇编器(A51)、库管理器(LIB51)、连接/定位器(BL51)、目标代码到HEX的转换器(OH51)等。


3.51汇编集成开发环境


51
汇编集成开发环境是基于windows环境的51汇编软件开发平台,它集源程序的编辑、汇编、反汇编和全软件仿真调试于一体,功能齐全,使用方便,适用于与MCS51兼容的各类单片机。

源程序的编辑采用汇编语言,内嵌的汇编程序还支持中文编程,MCS51源程序中的操作码、标号和特殊功能寄存器均可使用中文。

该软件还具有MCS48的汇编、反汇编和将MCS48源程序转换为MCS51源程序的移植功能。


51
汇编集成开发环境是共享软件,其大部分的功能都是免费的,只有少数高级功能需要注册收费才能使用。


4.BASCOM-8051


BASCOM-8051
是MCS公司推出的采用BASIC语言的51单片机软件开发平台,集源程序的编辑、汇编和软件仿真调试于一体。


BASCOM-8051
的DEMO版本仅可生成2KB的程序代码。


二、PIC系列单片机软件开发环境


1.MPLAB-IDE


MPLAB-IDE
是基于Windows的PIC系列单片机集成开发环境应用软件包,MPLAB-IDE集成有:项目管理器、编辑器、在线调试器(MPLAB-ICD)、软件模拟器(MPLAB-SIM)、汇编器(MPASM)、链接器(MPLINK)、库管理器(MPLIN)、C编译器(MPLAB-CXX)等开发工具,这些工具提供了完整的开发环境。该软件包环境还支持MPLAB-ICE和PICMASTER仿真器以及PICSTART Plus、PRO MATEII烧写器,还支持其他的MICROCHIP和第三方开发系统工具。


2.高奇PIC MATE


PICMATE
是一种集源程序的编辑、汇编和仿真调试于一体PIC单片机开发环境。源程序的编辑采用汇编语言,其汇编功能要借助于Microchip公司的汇编器(MPASM),仿真器采用了Microchip专门的仿真芯片,所以可以做到完全的实时在线仿真。


3.CH Basic Flash Edition


CH Basic Flash Edition是Celestial Horizons
公司的PIC单片机开发环境。其主要特点是采用BASIC语言来编辑PIC的应用程序,编辑好的程序可直接转换成目标程序,并通过COM口与CH SPC-1开发板配合传送到PIC单片机中。

三、AVR系列单片机软件开发环境


1.AVRStudio


AVRStudio
是Atmel 公司推出的AVR单片机集成开发环境。源程序的编辑采用汇编语言,其汇编级编译器(AVR Assembler)是免费提供的。AvrStudio还集成有软件调试(AVR Studio)和实时在线仿真器(JTAG ICE)以及AVR Prog下载等功能。


2.ICCAVR


ICCAVR
是ImageCraft公司推出的一种使用符合ANSI标准的C语言AVR单片机集成开发环境。源程序的编辑可采用C语言,其C编译器仅提供30天免费试用版。ICCAVR还集成有软件调试(AVR Studio)和实时在线仿真器(JTAG ICE)以及AVR Prog下载等功能。


3.BASCOM-AVR


BASCOM-AVR
是MCS公司推出的采用BASIC语言的AVR单片机软件开发平台,集源程序的编辑、汇编和软件仿真调试于一体。采用BASIC语言编辑好的源程序,编译后可直接下载到AVR单片机中运行。


BASCOM-AVR
的DEMO版本仅可生成2KB的程序代码。

今后笔者将为大家逐一介绍这些常用单片机软件开发环境的使用方法。

文/谢永宁