义隆单片机课堂
EM78P447S单片机入门与实作系列讲座

🏠 首页 《无线电》杂志 2001年 🔗 第12期 🔗 第1065353216页 分类:电脑与单片机 🔗 大海创作室 🔗

前言:本讲座将力求循序渐进、通俗易懂,覆盖开发和应用单片机所必要的硬件和软件知识、开发环境和开发工具的使用方法等内容,尽可能使读者在学习EM78P447S单片机的过程中,以花费较少的时间和精力,掌握和了解尽可能多的单片机理论知识和开发技术。EM78P447S是EM78系列单片机家族中的一个成员,在掌握了EM78P447S之后,就等于对EM78系列其他成员也有了一个基本的认识。在此基础上,如果还想再学习其他厂家生产的不同类型的单片机,也能够触类旁通、举一反三。

对于一名初步具备电子技术和微机应用基础知识的单片机初学者,是成长为一位单片机应用工程师的学习路径,最短概括为9步:单片机硬件系统;单片机指令系统;汇编程序设计基础;(宏)汇编器及其应用;软件模拟器及其应用;程序烧录器及其应用;电子元器件知识;电子产品原理电路设计;电子产品电路印板设计。其中:电子元器件知识、电子产品原理电路设计、电子产品电路印板设计,一般电子爱好者都初步具备。即使不具备也不影响单片机的学习,因此不计划占用本讲座篇幅细谈。如果想在此基础上进一步提高自己单片机应用产品开发研制的专业水平和工作效率,另外还应该补充学习硬件仿真器及其应用;C(或其他)高级语言;C语言编译器;算法设计;EDA软件工具;PCB软件工具等大量的知识。

本讲座在内容安排上充分注意了系统性和完整性,具体内容包含:EM78M447A/B单片机硬件系统;EM78指令系统;EM78汇编程序设计基础;MASM78汇编器及其应用;软件模拟器SIM447及其应用;程序烧录器及其应用。

本讲座在开始之前,就得到了义隆公司及教育市场代理商寰群公司的大力支持和积极鼓励,并且专门为此准备了届时可以配售的廉价开发工具套件(200元左右),为读者提供边学边练、学用结合的物质条件。7

一、常用单片机专业术语

以下从硬件和软件两个方面简要介绍对初学者学习EM78单片机有用的一些常用术语和基本概念。


1. 硬件方面

图1
图1 🔍原图 (567×308)

● 单片微型计算机
(Single Chip Microcomputer):俗称单片机或单片微电脑,国际上统称为微控制器(Microcontrollor,MCU,μC),就是把中央处理器CPU、随机存取存储器RAM(通常存放随机数据)、只读存储器ROM(通常固化存放用户程序)、输入/输出端口I/O等主要的计算机功能部件,都集成在了一块芯片上(芯片又称集成电路IC,Integrated Circuit),从而形成一部功能完整的微型计算机。


● 半导体存储器:
用于存储或暂存程序、数据和处理结果的半导体器件。可采用的器件种类如下:

(1) RAM(Random Access Memory)随机存取存储器。主要特点是存储的内容需要电源维持,断电后内容自动丢失(或称挥发)。主要用途是适合存储临时性的程序、随机数据或变量。RAM家族中又大致分为以下两种:

① SRAM(Static RAM)静态随机存取存储器:存储的内容只要有电源就可维持,断电后内容自动丢失。

② DRAM(Dynamic RAM)动态随机存取存储器:存储内容的维持不仅需要电源还需要不断刷新,断电后内容自动丢失。DRAM集成度比SRAM高得多,单位容量的价格也低廉得多。

(2) ROM(Read Only Memory)只读存储器。主要特点是存储的内容不需要电源维持,断电后内容也不会丢失,内容存入时需要烧写固化。主要用途是适合烧写存储那些定型的程序和/或相对固定的数据。ROM家族中又可以分为以下几种:

① 掩膜ROM:其存储内容由用户预先提交给芯片制造厂,由厂家在芯片生产线上完成烧写。显著优点是成本低廉,适合大批量定型生产;缺点是开模制版费高,初次投资多,存在最小起订数量,批量投片风险大,灵活性差,不适合开发研制阶段采用。

② PROM(Programmable ROM):可(烧写)编程只读存储器。存储的内容断电后能够维持。内容存储的过程称为固化、烧录或烧写,烧写过程需要外加高电压,一般需要在专用设备上进行。存储每一个比特的最小电路单元是熔丝,熔断后代表“0”,反之代表“1”。特点:只能由用户烧写一次,适合小批量产品试制阶段,可缩短产品上市时间。

③ EPROM(Erasable PROM):可(紫外线)擦除、可(烧写)编程只读存储器。烧写过程也需要外加高电压(25V、21V或12.5V)。这种存储器的顶部都开有一个玻璃窗口,用专用的紫外光源产生的紫外线照射该窗口,可以擦除其内容。特点:这种存储器可以反复烧写或擦除多次,但是擦除过程用时较长,适合在软件定型之前产品的开发和研制阶段或小批量试生产阶段使用。

④ OTP EPROM(One Time Programmable EPROM):一次可(烧写)编程的EPROM。其实就是不开顶部窗口的EPROM,所以只能由用户烧写一次。特点与PROM基本相同,但是存储单元结构不是熔丝。另外,这种产品出厂合格率比PROM高,理由是厂家在芯片封装之前,可以进行反复擦写检验。

⑤ EEPROM(Electrical EPROM,也常记作E2PROM):电可擦除、可(烧写)编程只读存储器。这种存储器可以反复烧写或擦除多次,并且有的可以“在线”(也就是焊装到电路板上之后)进行。不仅适合在软件定型之前产品的开发和研制阶段使用,还可用于数据经常更改而掉电后数据又不丢失的电器设备中(比如遥控式电视机中用来存储频道、音量、亮度等可调参数的器件,就属于此类)。

⑥ Flash EEPROM:闪速电可擦除、可编程只读存储器。这种存储器可以反复烧写或擦除多次,并且可以在线进行,其擦/写速度基本同于EEPROM,但是其制造成本较低、芯片尺寸较小。适应于不仅要求内容可以修改而掉电后又不丢失,而又要求成本更低、存储容量更大的电器设备中。EEPROM存储器和FLASH存储器虽然都可以多次电擦和电写,但是前者比后者擅长的是读写次数(也叫做擦写周期)高出许多;而后者比前者擅长的是存储单元结构简单、造价更低、存储密度更高。


● 寄存器
(Register):是一种比RAM存储器功能更强的数字电路,不仅像RAM那样可以读、写和暂存数据,还可以进行左移位、右移位、置位、复位、位测试等多种操作。


● 输入/输出端口
(I/O Port):单片机与外界交换数据(或数据通信)的“门户”。端口按数据的传送格式分为并行端口和串行端口。


● 串行端口:
将一个数据字节的8个数据位,先由并行转换为串行,再一位一位地分为多次传递来实现数据通信。占用的线路数量较少。


● 并行端口:
将一个数据字节(对于8位单片机而言)的8个数据位作为一个整体,由一次传送完成数据通信。占用的线路数量较多。


● 串行端口分类:
按同步方式又可分为,同步串行端口和异步串行端口。同步串行端口按通信协议又可分为,I2C、SPI和MICROWIRE三种,它们分别是由飞利浦公司、摩托罗拉公司和美国国家半导体公司发明的,目前已被多种单片机所采纳。


● 总线(BUS):
传送指令和数据的公共通道,也是连接各个功能部件的信息通路。


● 哈佛(Harvard)体系结构:
把程序存储器和数据存储器各自独立编址,也就是两种存储器位于不同的逻辑空间里,符合这种架构的微控制器或微处理器,称为哈佛体系结构。比如最早在国内市场流行的单片机品种—INTEL公司开发生产的MCS-51系列单片机。


● 哈佛总线结构:
EM78系列单片机在架构上采用了与众不同的设计手法, EM78系列单片机不仅采用了哈佛体系结构,而且还采用了哈佛总线结构。就是在单片机芯片内部将数据总线和指令总线分离,并且是采用不同宽度的双总线结构。这样做的好处是,便于实现指令提取的“流水作业”,也就是在执行一条指令的同时对下一条指令进行取指操作;便于实现全部指令的编码长度的归一化和单周期化,从而有利于提高CPU执行指令的速度。如附图所示。


● 休眠模式:
在单片机进入休眠模式时,时钟振荡器停振,其内部除了数据存储器保持记忆外,其他大部分功能电路都退出工作状态,这是一种很好的节电方式。


● 程序加密:
一种保护开发者智力成果的技术手段,EM78系列单片机具备该项功能。


● 看门狗定时器:
一种将失控的单片机及时复位和恢复正常运行的功能部件。


● 外围设备模块:
以CPU为中心,把一些常用的计算机外部设备作为功能部件集成到单片机内部,就构成了外围设备模块。比如:输入/输出端口、定时器/计数器等。


● 中断(Interrupt)功能:
就是暂时停止CPU正在执行的程序,而转去执行为作出中断申请的外围设备服务的程序。中断是计算机理论和计算机技术中很重要的一个概念,是提高计算机工作效率的一项重要功能,是程序调度的一种有效方法。


● 中断源:
向CPU申请中断的信号来源,通常由硬件产生(称为硬件中断源),也可以由软件产生(称为软件中断源)。


● 硬件堆栈:
是一种专用的暂存器,其内容的存入和弹出符合“先进后出”操作规则。即最先进栈的数据最后出栈、最后进栈的数据最先出栈。就像往子弹匣中装子弹一样,后装入的子弹反而先被弹出,并且在装第2颗子弹时,第1颗子弹被向底部推动一步;在装第3颗子弹时,第2和第1颗子弹被依次向底部推动一步;依次类推。弹出的过程和顺序与装入恰好相反。


● 精简指令集计算机(RISC)技术:
是一种使得CPU的指令系统显著简化、指令条数大幅减少的技术,是相对于指令系统复杂、指令条数众多的复杂指令集计算机(CISC)技术而言的。


2.软件方面


● 字长(Word):
在计算机内部对于数据进行处理的基本单位,也是内部寄存器、数据存储器和数据总线的宽度。在不同的计算机中字长可以不同。


● 指令:
人们指定CPU或单片机执行某项具体操作的命令叫指令。通常,一条指令码(对于EM78P447S单片机,由13比特构成)中包含操作码和操作数两个部分。


● 指令字:
EM78P447S的指令系统中的全部指令采用统一的长度——13比特长的指令码,就称为指令字。


● 指令系统:
某种CPU或单片机所能识别和执行的全部指令的总体称作指令系统或指令集。EM78P447S的指令系统中具有58条指令。


● 伪指令:
是为汇编程序服务的一种指示性语句。它不要求CPU完成任何操作,也没有对应的机器代码,只是为汇编过程提供一些必要的信息。


● 机器语言:
用二进制表示的指令集合,能由机器立即识别和执行的一种语言形式称为机器语言(又称机器码或目标码)。机器语言不便于理解、记忆、阅读、修改、交流。


● 汇编语言:
为了提高可读性,汇编语言是采用一些指意性很强的英文缩写或符号,来代表一条指令的操作码、地址码或操作数的语言。指令和伪指令的总和就构成了汇编语言。


● 高级语言:
是一类通用性强,编程效率高,可读性强,方便交流,容易修改调试的语言。如C、BASIC、PASCAL、FORTRAN、JAVA、LOGO语言等。


● 程序(Program):
为了完成特定的任务或功能,将语句(指令、伪指令或高级语言语句)按一定的规则有序地组合在一起,就构成了程序。


● 源程序:
用程序设计语言(如汇编语言、高级语言等)编写的原始程序称为源程序。


● 目标程序:
由于计算机只能识别0和1组成的机器语言,所以用二进制表示的、能由机器立即识别和执行的机器语言程序称为目标程序。它是由源程序经过“翻译”得来的。


● 汇编(Assemble):
将汇编语言源程序“翻译”成目标程序的过程。


● 人工汇编:
汇编过程由人来完成,称为人工汇编。


● 汇编器(Assembler):
一种由机器执行来自动完成汇编过程的软件工具称为汇编程序或称汇编器。


● 交叉汇编:
在PC机上执行汇编器工具,去汇编单片机的汇编语言源程序,为单片机产生目标程序的这种汇编方式。


● 反汇编:
将机器语言“反向翻译”成汇编语言的过程,即汇编的反过程。


● 编译(Compile):
将高级语言源程序“翻译”成目标程序的过程,称为编译。


● 编译器(Compiler):
完成编译过程的工具软件称为编译器。


● 寻址方式:
所谓寻址方式,就是寻找操作数的方法,就是给操作数定位的过程。

下期我们将为大家介绍EM78P447S单片机的性能特点及硬件系统的相关知识。

有关EM78系列单片机开发工具的购买信息,读者可参见本期第66页相应广告。

(大海创作室)