云栖社区《例说51单片机(C语言版)》

8x51系统的开发流程与一般单片机微控制器的开发流程类似,其基本开发流程可分为软件与硬件两部分,而这两部分可以并行开发。我们可以应用这套软件来开发FPGA嵌入式系统、单片机微控制器的软件与硬件。.src文件与汇编语言编写的源程序相同,可经由汇编器将它汇编而产生目的文件(.obj)。

1-5 MCS-51开发流程及工具

8×51系统的开发过程与通用微控制器类似。 其基本开发流程可分为软件和硬件两部分,并且这两部分可以并行开发。 在硬件开发方面,主要是设计原型电路板(prototype),也就是目标板(target board)。 在软件开发方面,编写源程序(可以使用C语言或汇编语言),然后编译并组装成可执行代码,然后进行调试/模拟。 完成软件设计后,可以使用在线仿真器(ICE),加载可执行代码,然后在目标板上进行在线仿真。 如果软硬件设计正确,可以使用IC烧录器将可执行代码烧录到8×51,最后将8×51插入目标板即可完成设计,如图1-22所示。

云栖社区《例说51单片机(C语言版)》

8×51的开发工具有很多,这里只介绍其中比较流行的三个工具。

1-5-1 传统开发工具

使用8×51设计控制电路时,除了8×51电路设计外,还必须编写8×51程序。 传统的8×51程序开发大多是在DOS环境下完成的,但在Windows环境下就不太方便了。

云栖社区《例说51单片机(C语言版)》

编辑源程序

首先,使用文本编辑程序编写源代码(源代码,即/*.asm)。 这是一个用8×51汇编语言编写的程序,是一个人们可以解释的文本文件。 如果是在DOS环境下编写源程序,可以使用PE2等文本编辑程序; 如果是在Windows环境下编写源程序,可以使用Windows自带的记事本。

组装和串联

源程序编辑完成后,使用8×51汇编器,如美国2500AD公司的x8051,对源程序进行汇编,得到目标代码(即.obj); 然后使用链接器连接目标代码以生成可执行文件(.obj)。 TSK) 或 Intel 的十六进制文件 (*.HEX)。 因为汇编和链接是在 DOS 下使用两个不同的程序顺序执行的操作。 我们可以使用批处理程序来简化操作程序。 test.bat批处理程序如下所示。 它的作用可以让我们在一次操作中完成组装和连接两个动作。

Y9162!&2/btn!.E!
AFDIP!PGG!
JG!FSSPSMFWFM!2!HPUP!FSS! AFDIP!PO!
MJOL! ė D!&2/pck! AFDIP!PGG!
HPUP!FOE!
;FSS!
AFDIP!FsspsČ Č !
;FOE!
AFDIP!PGG!
test.bat

要汇编并连接 ch1.asm 源程序,请在 DOS 命令行中输入:

test ch1    Enter(回车)

注意:
不要指定扩展文件名,如此将可省去不少麻烦。

软件模拟

生成TSK文件或HEX文件后,可以使用8×51的软件模拟程序,例如AVSIM51,进行简单的软件模拟。

在线模拟

在线仿真就是将TSK文件或HEX文件加载到在线仿真器中,然后将在线仿真器用作8×51,插入到我们开发的目标板中,然后进行在线仿真。 当然,80×51在线模拟器是必不可少的。 8×51在线模拟器有很多品牌和类型,光盘附录中介绍的8×51在线模拟器属于新一代8×51在线模拟器。

如果一切正确,您可以使用IC刻录机将HEX文件刻录为8×51。 用我们编写的程序编写8×51,将其插入目标板就​​完成了8×51电路设计。

1-5-2 Altium Designer电路设计软件

Altium Designer是一套多功能电路设计软件,其中最著名的有两个部分。 第一部分是电路图/电路板设计工具,就是大家熟悉的Protel电路板设计软件; 第二部分是FPGA嵌入式系统(embedded system)设计,即TASKING。 事实上,TASKING拥有超过10万家客户,广泛分布于全球知名通信制造商、信息设备制造商、无线制造商和外围设备制造商,是嵌入式设计系统的领先品牌。 我们可以使用该软件来开发FPGA嵌入式系统和微控制器微控制器的软件和硬件。 TASKING除了提供集成的文本编辑器外,还提供编译、调试、嵌入式Internet和RTOS(Real Time Operating System,实时操作系统)等,并支持多种DSP,8位、16位和32位位嵌入式微处理器设备。

在TASKING中,嵌入式软件生成过程与通用微型计算机或微控制器系统类似。 基本程序为“编写源程序”→“编译(C语言)”→“汇编”→“连接”→“模拟/调试”→“在线模拟”。 图1-24展示了TASKING中开发FPGA嵌入式系统设计或8×51微控制器设计的开发流程。

如果使用C语言编写源程序,需要先通过C语言编辑器将源程序编译成.src文件; 如果编译过程中出现错误,错误信息将被保存在该文件(即.err 文件)中。 .src 文件与用汇编语言编写的源程序相同。 可以通过汇编器对其进行汇编,生成目标文件(.obj)。 此外,汇编过程还会生成错误信息文件(.ers)和列表文件(.lst)。 然后使用连接器连接目标文件和函数库(如果在源程序中应用了函数库中的函数),就可以生成可执行文件,包括三种可执行文件格式,例如Intel的十六进制生产文件(. hex)、IEEE-695 目标文件 (.abs) 和 Motorola S 记录文件 (*.sre)。 TASKING 中的调试/仿真和在线仿真使用 IEEE-695 目标文件作为输入。 当然,如果你想使用外部在线仿真和烧录,可以使用它生成的hex文件。

另一方面,我们可以在Altium Designer的电路设计环境中同时设计电路图和电路板,并生成生产电路板所需的文件和相关报告。

云栖社区《例说51单片机(C语言版)》

1-5-3 Keil μVision3集成开发环境

Keil的μVision3集成开发环境(IDE)是一套非常易于使用的8×51开发软件。 在集成开发环境中,包括项目管理器(Project Manager)、源程序编辑器(Editor)、汇编器(Assembler)、编译器(Compiler)、连接器(Linker/Locator)、调试器(Debugger)等。我们可以从建立设计工程(Project),然后编辑源程序(C语言或汇编语言)、编译、汇编、连接,然后调试(调试是程序功能模拟),如图1-25开发流程所示。

对于首次尝试Keil μVision3的用户,Keil提供免费评估版本,以确保用户在购买前感到满意。 当然,评估版也有其局限性,即无法生成超过2KB的可执行程序。 然而,编写超过2KB的可执行程序并不容易,特别是对于初学者来说。 本书中的例子编译生成的文件不到2KB,你可以放心尝试这个可爱又迷人的开发环境。 该程序包含在本书的 CD-ROM 中。 如果需要更新版本,可以直接从Keil公司网站()下载。

1-5-4 89S51的在线烧录功能

89S51有什么理由取代89C51,成为下一代MCS-51的新主流呢? 最有说服力的是它提供的在线烧录功能(In-System Programmable,ISP)。 事实上,89C51已经有了ISP的雏形,而89S51则更加成熟。 从现在开始,我们几乎已经抛弃了IC录音机,甚至昂贵的在线模拟器也不一定需要了。

云栖社区《例说51单片机(C语言版)》

Atmel提供的ISP电路和程序允许用户通过个人计算机的并行端口或串行端口(RS232C)直接下载可执行文件到89C51/89S51。 这样不仅可以节省大量的开发工具和设备,而且可以重写在线仿真的方法,对初学者有很大的帮助。 本书还推荐了一款89S51在线烧录实验板(USB版)。 除了ISP功能外,还提供了一些简单的外围器件,如LED、蜂鸣器、拨码开关等,我们可以直接在这块实验板上开发89S51系统。 有关该实验板的说明,请参阅 CD-ROM 附录。

单片机

嵌入专用计算机嵌入式处理器的核心是什么?

2024-5-9 14:04:04

单片机

树莓派的特点是什么?派是怎么样的?

2024-5-9 15:05:04

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索