东南大学 单片机实验 解答
- 格式:docx
- 大小:29.76 KB
- 文档页数:29
第一章习题参考答案1-1:何谓单片机?与通用微机相比,两者在结构上有何异同?答:将构成计算机的基本单元电路如微处理器(CPU)、存储器、I/O接口电路和相应实时控制器件等电路集成在一块芯片上,称其为单片微型计算机,简称单片机。
单片机与通用微机相比在结构上的异同:(1)两者都有CPU,但通用微机的CPU主要面向数据处理,其发展主要围绕数据处理功能、计算速度和精度的进一步提高。
例如,现今微机的CPU都支持浮点运算,采用流水线作业,并行处理、多级高速缓冲(Cache)技术等。
CPU的主频达到数百兆赫兹(MHz),字长普遍达到32位。
单片机主要面向控制,控制中的数据类型及数据处理相对简单,所以单片机的数据处理功能比通用微机相对要弱一些,计算速度和精度也相对要低一些。
例如,现在的单片机产品的CPU大多不支持浮点运算,CPU还采用串行工作方式,其振荡频率大多在百兆赫兹范围内;在一些简单应用系统中采用4位字长的CPU,在中、小规模应用场合广泛采用8位字长单片机,在一些复杂的中、大规模的应用系统中才采用16位字长单片机,32位单片机产品目前应用得还不多。
(2) 两者都有存储器,但通用微机中存储器组织结构主要针对增大存储容量和CPU 对数据的存取速度。
现今微机的内存容量达到了数百兆字节(MB),存储体系采用多体、并读技术和段、页等多种管理模式。
单片机中存储器的组织结构比较简单,存储器芯片直接挂接在单片机的总线上,CPU对存储器的读写按直接物理地址来寻址存储器单元,存储器的寻址空间一般都为64 KB。
(3) 两者都有I/O接口,但通用微机中I/O接口主要考虑标准外设(如CRT、标准键盘、鼠标、打印机、硬盘、光盘等)。
用户通过标准总线连接外设,能达到即插即用。
单片机应用系统的外设都是非标准的,且千差万别,种类很多。
单片机的I/O 接口实际上是向用户提供的与外设连接的物理界面。
用户对外设的连接要设计具体的接口电路,需有熟练的接口电路设计技术。
单⽚机课后习题答案单⽚机课后习题答案1.89C51单⽚机内包含哪些主要逻辑功能部件?答:80C51系列单⽚机在⽚内集成了以下主要逻辑功能部件:(l)CPU(中央处理器):8位(2)⽚内RAM:128B(3)特殊功能寄存器:21个(4)程序存储器:4KB (5)并⾏I/O⼝:8位,4个(6)串⾏接⼝:全双⼯,1个(7)定时器/计数器:16位,2个(8)⽚内时钟电路:1个2.89C51的EA端有何⽤途?答:/EA端接⾼电平时,CPU只访问⽚内flash Rom并执⾏内部程序,存储器。
/EA端接低电平时,CPU只访问外部ROM,并执⾏⽚外程序存储器中的指令。
/EA端保持⾼电平时,CPU执⾏内部存储器中的指令。
3.89C51的存储器分哪⼏个空间?如何区别不同空间的寻址?答:ROM(⽚内ROM和⽚外ROM统⼀编址)(使⽤MOVC)(数据传送指令)(16bits地址)(64KB)⽚外RAM(MOVX)(16bits地址)(64KB)⽚内RAM (MOV)(8bits地址)(256B)4.简述89C51⽚内RAM的空间分配。
答:⽚内RAM有256B,低128B是真正的RAM区,⾼128B是SFR(特殊功能寄存器)区。
5.简述布尔处理存储器的空间分配,⽚内RAM中包含哪些可位寻址单元。
答:⽚内RAM区从00H~FFH(256B)其中20H~2FH(字节地址)是位寻址区对应的位地址是00H~7FH6. 如何简捷地判断89C51正在⼯作?答:⽤⽰波器观察8051的XTAL2端是否有脉冲信号输出(判断震荡电路⼯作是否正常?)ALE(地址锁存允许)(Address Latch Enable)输出是fosc的6分频⽤⽰波器观察ALE是否有脉冲输出(判断8051芯⽚的好坏?)观察PSEN(判断8051能够到EPROM 或ROM中读取指令码?)因为/PSEN接外部EPROM(ROM)的/OE端⼦OE=Output Enable(输出允许)7. 89C51如何确定和改变当前⼯作寄存器组?答:PSW(程序状态字)(Program Status Word)中的RS1和RS0 可以给出4中组合,⽤来从4组⼯作寄存器组中进⾏选择PSW属于SFR(Special Function Register)(特殊功能寄存器)9.读端⼝锁存器和“读引脚”有何不同?各使⽤哪种指令?答:读锁存器(ANLP0,A)就是相当于从存储器中拿数据,⽽读引脚是从外部拿数据(如MOV A,P1这条指令就是读引脚的,意思就是把端⼝p1输⼊数据送给A)传送类MOV,判位转移JB、JNB、这些都属于读引脚,平时实验时经常⽤这些指令于外部通信,判断外部键盘等;字节交换XCH、XCHD算术及逻辑运算ORL、CPL、ANL、ADD、ADDC、SUBB、INC、DEC控制转移CJNE、DJNZ都属于读锁存器。
单片机课后习题解答练习练习练习第二章单片机结构及原理1、mcs-51单片机内部涵盖哪些主要功能部件?它们的促进作用就是什么?请问:(1)一个8bitcpu就是微处理器的核心,就是运算和逻辑排序的中心。
(2)片内震荡器及时钟电路:提供标准时钟信号,所有动作都依据此进行。
(3)4krom程序存贮器:存贮程序及常用表格。
(4)128bram数据存贮器:暂存一些中间变量和常数等。
(5)两个16bit定时器/计数器:全然硬件定时器(6)32根可编程i/o口线:标准8位双向(4个)i/o接口,每一条i/o线都能独立地作输入或输出。
(7)一个可编程全双工串行口。
(8)五个中断源。
2、什么是指令?什么是程序?请问:指令就是规定计算机继续执行某种操作方式的命令。
程序是根据任务要求有序编排指令的集合。
3、如何重新认识89s51/52存储器空间在物理结构上可以分割为4个空间,而在逻辑上又可以分割为3个空间?答:89s51/52存储器空间在物理结构上设有4个存储器空间:片内程序存储器、片外程序存储器、片内数据存储器、片外数据存储器。
在逻辑上有3个存储器地址空间:片内、片外统一的64kb程序存储器地址空间,片内256b数据存储器地址空间,片外64kb的数据存储器地址空间。
4、开机复位后,cpu使用的是哪组工作寄存器?他们的地址是多少?cpu如何确定和改变当前工作寄存器组?请问:开机登位后,cpu采用的就是第0组与工作寄存器,地址为00h~07h,cpu通过发生改变状态字寄存器psw中的rs0和rs1去确认工作寄存器组。
5、什么是堆栈?堆栈有何作用?在程序设计时,有时为什么要对堆栈指针sp重新赋值?如果cpu在操作中要使用两组工作寄存器,sp应该多大?请问:堆栈就是一个特定的存储区,主要功能就是暂时存放数据和地址,通常用以维护断点和现场。
堆栈指针sp登位后指向07h单元,00h~1fh为工作寄存器区,20h~2fh为十一位串行区,这些单元存有其他功能,因此在程序设计时,须要对sp再次赋值。
单片机课后习题答案第一章单片机的概述1、除了单片机这一名称外,单片机还可称为(微控制器)和(嵌入式控制器)。
2、单片机与普通微型计算机的不同之处在于其将(CPU)、(存储器)和(I/O口)三部分,通过内部(总线)连接在一起,集成于一块芯片上。
3、在家用电器中使用单片机应属于微型计算机的(B)。
A、辅助设计应用B、测量、控制应用C、数值计算应用D、数据处理应用4、微处理器、微计算机、微处理机、CPU、单片机、嵌入式处理器它们之间有何区别?答:微处理器、微处理机和CPU它们都是中央处理器的不同称谓,微处理器芯片本身不是计算机。
而微计算机、单片机它们都是一个完整的计算机系统,单片机是集成在一个芯片上的用于测控目的的单片微计算机。
嵌入式处理器一般意义上讲,是指嵌入系统的单片机、DSP、嵌入式微处理器。
目前多把嵌入式处理器多指嵌入式微处理器,例如ARM7、ARM9等。
嵌入式微处理器相当于通用计算机中的CPU。
与单片机相比,单片机本身(或稍加扩展)就是一个小的计算机系统,可独立运行,具有完整的功能。
而嵌入式微处理器仅仅相当于单片机中的中央处理器。
为了满足嵌入式应用的特殊要求,嵌入式微处理器虽然在功能上和标准微处理器基本是一样的,但在工作温度、抗电磁干扰、可靠性等方面一般都做了各种增强。
5、MCS-51系列单片机的基本型芯片分别为哪几种?它们的差别是什么?答:MCS-51系列单片机的基本型芯片分别为:8031、8051和8751。
它们的差别是在片内程序存储器上。
8031无片内程序存储器、8051片内有4K字节的程序存储器ROM,而8751片内有集成有4K 字节的程序存储器EPROM。
6、为什么不应当把8051单片机称为MCS-51系列单片机?答:因为MCS-51系列单片机中的“MCS”是Intel公司生产的单片机的系列符号,而51系列单片机是指世界各个厂家生产的所有与8051的内核结构、指令系统兼容的单片机。
[单片机原理及应用课后答案]单片机原理及应用技术篇一: 单片机原理及应用技术_课后答案章1 绪论1.第一台计算机的问世有何意义?答:第一台电子数字计算机ENIAC问世,标志着计算机时代的到来。
[)与现代的计算机相比,ENIAC有许多不足,但它的问世开创了计算机科学技术的新纪元,对人类的生产和生活方式产生了巨大的影响。
2.计算机由哪几部分组成?答:由运算器、控制器、存储器、输入设备和输出设备组成,运算器与控制器合称为CPU。
3.微型计算机由哪几部分构成?答:微型计算机由微处理器、存储器和I/O接口电路构成。
各部分通过地址总线、数据总线和控制总线相连。
4.微处理器与微型计算机有何区别?答:微处理器集成了运算器和控制器;而微型计算机包含微处理器、存储器和I/O接口电路等。
5.什么叫单片机?其主要特点有哪些?答:在一片集成电路芯片上集成微处理器、存储器、I/O接口电路,从而构成了单芯片微型计算机,即单片机。
单片机主要特点有:控制性能和可靠性高;体积小、价格低、易于产品化;具有良好的性能价格比。
6.微型计算机有哪些应用形式?各适于什么场合?答:微型计算机有三种应用形式:多板机、单板机和单片机。
多板机,通常作为办公或家庭的事务处理及科学计算,属于通用计算机。
单板机,I/O设备简单,软件资源少,使用不方便。
早期主要用于微型计算机原理的教学及简单的测控系统,现在已很少使用。
单片机,单片机体积小、价格低、可靠性高,其非凡的嵌入式应用形态对于满足嵌入式应用需求具有独特的优势。
目前,单片机应用技术已经成为电子应用系统设计的最为常用技术手段。
7.当前单片机的主要产品有哪些?各有何特点?答:多年来的应用实践已经证明,80C51的系统结构合理、技术成熟。
因此,许多单片机芯片生产厂商倾力于提高80C51单片机产品的综合功能,从而形成了80C51的主流产品地位,近年来推出的与80C51兼容的主要产品有:? A TMEL公司融入Flash存储器技术推出的A T89系列单片机;? Philips公司推出的? 华邦公司推出的- 74 -? ADI公司推出的ADμC8xx系列高精度ADC单片机;? LG公司推出的GMS90/97系列低压高速单片机;? Maxim公司推出的DS89C420高速单片机;? Cygnal公司推出的C8051F系列高速SOC单片机等。
单片机思考题与作业答案单片机思考题与作业答案第一课思考问题和家庭作业思考:1.什么是单片机?主要目的是什么?列出你对SCM的了解?答:随着微电子技术的不断发展,微处理器芯片及其外围芯片的集成度越来越高,已经可以将cpu和外围芯片,如程序存储器、数据储存器、并行、串行i/o口、定时器/计数器、中断控制器及其他控制部件集成在一个芯片之中,制成单片机。
微控制器目前以功能命名,因为用计算机的逻辑功能比用通讯功能更容易解决简单的控制问题,应用也更广泛;嵌入式系统soc(systemonchip或embeddedsystem)是当前又由结构命名。
嵌入式系统主要由嵌入式处理器、相关支撑硬件、嵌入式操作系统及应用软件系统等组成,它是可独立工作的系统及应用软件系统等组成,它是可独立工作的“器件”。
2.51核单片机代表了当前单片机的先进水平?51核单片机不是代表当前先进水平的单片机,它是目前在中国大陆最流行的单片机系列。
操作:1-1,51-1.说明mcs-51有哪些产品,它们有何区别?答:MCS-51是英特尔1980年推出的一系列产品,主要包括8031、8051和8751;8032、8052、8752;80C31、80C51和87C51。
它们之间的区别在于,末端是“1”,内部ROM(如果有)是4K字节,内部RAM是128字节,并且有t0和T1计数器。
末端为“2”,带有8K字节的内部ROM(如果有)和256字节的内部RAM。
有T0、T1和T2计数器。
倒数第二位是“5”的内部ROM和“3”的非内部ROM。
第二位是“7”。
内部部分是EPROM。
“0”的ROM必须有制造商一次编写代码。
带有“0”的ROM必须有制造商一次编写代码。
至于其他制造商生产的51增强型核心系列,它是MCS-51的扩展,通常不再称为MCS-51。
1-5.解释rom、otprom、eprom、eeprom、flash、ram的意义。
答:rom-只读存储器,一般由厂家编程烧录;otprom是一次性可编程只读存储器,用户可以自己编程烧录;eprom是紫外光可擦可编程只读存储器,用户可以自行编程和刻录;EEPROM是一种电可擦除可编程只读存储器,用户可以编程和刻录;闪存是使用闪存技术的存储器,可以高速读/写烧坏的存储器;Ram是一种读写存储器。
单片机课后习题答案单片机原理及接口技术课后答案_(第三版)第一章1.单片机的特点是什么(1)片内存储容量越来越大。
(2抗干扰性好,可靠性高。
(3)芯片引线齐全,容易扩展。
(4)运行速度高,控制功能强。
(5)单片机内部的数据信息存储时间很长,有些芯片可以达到100年以上。
2.89C51单片机的主要逻辑功能部件是什么?答:80c51系列单片机在片内集成了以下主要逻辑功能部件:(l)cpu(中央处理器):8位(2)片内ram:128b(3)特殊功能寄存器:21(4)程序存储器:4KB(5)并行i/o口:8位,4个(6)串行接口:全双工,1个(7)定时器/计数器:16位,2个(8)片内时钟电路:1个3.什么是微处理器(CPU)、微型计算机和单片机?答:微处理器本身不是计算机,但它是小型计算机或微机的控制和处理部分。
微机则是具有完整运算及控制功能的计算机,除了微处理器外还包括存储器、接口适配器以及输入输出设备等。
单片机是将微处理器、ram、具有一定容量的ROM、I/O口、定时器等电路集成在一块芯片上的单片微机。
4.微型计算机怎样执行一个程序?答:通过CPU指令,它在内存中被提及,然后一个接一个地执行。
5.什么是嵌入式系统?他有哪些类型?为什么说单片机是典型的嵌入式系统?答;嵌入式系统是将先进的计算机技术、半导体技术和电子技术和各个行业的具体应用相结合后的产物,这一点就决定了它必然是一个技术密集、资金密集、高度分散、不断创新的知识集成系统。
它有嵌入式微处理器、嵌入式微控制器、嵌入式DSP处理器、嵌入式片上系统等。
嵌入式系统的出现最初是基于单片机的。
从体系结构到指令系统,它是根据嵌入式应用的特点专门设计的,最能满足控制对象、运输系统的嵌入式、现场可靠运行和卓越控制质量的要求。
因此,它是一个典型的嵌入式系统。
第二章1.89c51单片机内包含哪些主要逻辑功能部件?A:80C51系列单片机集成了以下主要逻辑功能部件:(1)CPU(中央处理器):8位(2)片上RAM:128B(3)特殊功能寄存器:21个(4)程序存储器:4kb(5)并行I/O端口:8位,4(6)个串行接口:全双工,1(7)定时器/计数器:16位,2个(8)片内时钟电路:1个2.89c51的EA端的用途是什么?3.89c51的存储器分哪几个空间?如何区别不同空间的寻址?答:rom(片内rom和片外rom统一编址)(使用movc)(数据传送指令)(16bits地址)(64kb)片外RAM(MOVX)(16位地址)(64KB)片内RAM(MOV)(8位地址)(256b)4本文简要介绍了89C51片内RAM的空间分配。
单片机原理及应用》习题答案第一章计算机基础知识1- 1 微型计算机主要由哪几部分组成?各部分有何功能?答:一台微型计算机由中央处理单元(CPU)、存储器、I/O 接口及I/O 设备等组成,相互之间通过三组总线(Bus):即地址总线AB、数据总线DB和控制总线CB 来连接。
CPU由运算器和控制器组成,运算器能够完成各种算术运算和逻辑运算操作,控制器用于控制计算机进行各种操作。
存储器是计算机系统中的“记忆”装置,其功能是存放程序和数据。
按其功能可分为RAM和ROM。
输入/ 输出(I/O )接口是CPU与外部设备进行信息交换的部件。
总线是将CPU、存储器和I/O 接口等相对独立的功能部件连接起来,并传送信息的公共通道。
1-3什么叫单片机?其主要由哪几部分组成?答:单片机(Single Chip Microcomputer )是指把CPU、RAM、ROM、定时器/ 计数器以及I/O 接口电路等主要部件集成在一块半导体芯片上的微型计算机。
1- 4 在各种系列的单片机中,片内ROM的配置有几种形式?用户应根据什么原则来选用?答:单片机片内ROM的配置状态可分四种:(1)片内掩膜(Mask)ROM型单片机(如8051),适合于定型大批量应用产品的生产;(2)片内EPROM型单片机(如8751),适合于研制产品样机;(3)片内无ROM型单片机(如8031),需外接EPRO,M单片机扩展灵活,适用于研制新产品;(4)EEPRO(M或Flash ROM)型单片机(如89C51),内部程序存储器电可擦除,使用更方便。
1-5 写出下列各数的另两种数制的表达形式(二、十、十六进制)1- 6 写出下列各数的BCD参与:59:01011001,1996:0001100110010110,4859.2:0100100001011001.0010389.41 :001110001001.01000001第二章MCS-51 单片机的硬件结构2-1 8052 单片机片内包含哪些主要逻辑功能部件?答:8052 单片机片内包括:①8位中央处理器CPU一个②片内振荡器及时钟电路③256B 数据存储器RAM。
第一章习题参考答案1-1:何谓单片机?与通用微机相比,两者在结构上有何异同?答:将构成计算机的基本单元电路如微处理器(CPU)、存储器、I/O接口电路和相应实时控制器件等电路集成在一块芯片上,称其为单片微型计算机,简称单片机。
单片机与通用微机相比在结构上的异同:(1)两者都有CPU,但通用微机的CPU主要面向数据处理,其发展主要围绕数据处理功能、计算速度和精度的进一步提高。
例如,现今微机的CPU都支持浮点运算,采用流水线作业,并行处理、多级高速缓冲(Cache)技术等。
CPU的主频达到数百兆赫兹(MHz),字长普遍达到32位。
单片机主要面向控制,控制中的数据类型及数据处理相对简单,所以单片机的数据处理功能比通用微机相对要弱一些,计算速度和精度也相对要低一些。
例如,现在的单片机产品的CPU大多不支持浮点运算,CPU还采用串行工作方式,其振荡频率大多在百兆赫兹范围内;在一些简单应用系统中采用4位字长的CPU,在中、小规模应用场合广泛采用8位字长单片机,在一些复杂的中、大规模的应用系统中才采用16位字长单片机,32位单片机产品目前应用得还不多。
(2) 两者都有存储器,但通用微机中存储器组织结构主要针对增大存储容量和CPU对数据的存取速度。
现今微机的内存容量达到了数百兆字节(MB),存储体系采用多体、并读技术和段、页等多种管理模式。
单片机中存储器的组织结构比较简单,存储器芯片直接挂接在单片机的总线上,CPU对存储器的读写按直接物理地址来寻址存储器单元,存储器的寻址空间一般都为64 KB。
(3) 两者都有I/O接口,但通用微机中I/O接口主要考虑标准外设(如CRT、标准键盘、鼠标、打印机、硬盘、光盘等)。
用户通过标准总线连接外设,能达到即插即用。
单片机应用系统的外设都是非标准的,且千差万别,种类很多。
单片机的I/O接口实际上是向用户提供的与外设连接的物理界面。
用户对外设的连接要设计具体的接口电路,需有熟练的接口电路设计技术。
实验一 #include sbit Led1=P1^0; sbit Led2=P1^1; void Delay1s(void) { unsigned char h,i,j,k; for(h=10;h>0;h--) for(i=4;i>0;i--) for(j=116;j>0;j--) for(k=214;k>0;k--); } void main() { while(1) { Led1=1; Led2=0; Delay1s(); Led1=0; Led2=1; Delay1s(); } }
实验二 #include #include sbit Led1=P1^0; sbit Led2=P1^1; unsigned char flag, sdata; void Led1Invert(void) { if(Led1==0) { Led1=1; } else { Led1=0; } } voidInitSerial() { SCON=0x50;//将串口设置为方式1,8位数据 PCON=0x00;//不进行2分频 TMOD=0x20;//定时器1设为模式2 TL1=0xfd;//设置波特率为19200=22118400/(32*12*(256-0xfd)) TH1=0xfd;//设置波特率 TR1=1;//启动定时器1 ES=1;//允许串口中断 } voidSen(unsigned char ch) { ES=0; TI=0; SBUF=ch; while(!TI){}//等待发送结束信号 TI=0; ES=1; } void Ser_ISR() interrupt 4 //串口中断号为4 { ES=0; if(RI) { flag=1; sdata=SBUF; RI=0; } ES=1; } void main() { unsigned char temp,state; InitSerial(); EA=1; //允许系统中断 Led1=0; //点亮Led1 temp=XBYTE[0x8000];//读输入状态 Sen(temp); //将状态号码通过串口发送 while(1) { if(flag) { Led1Flush(); Sen(sdata+1); //将收到的数据加一后回送 flag=0; } state=XBYTE[0x8000]; //访问按键状态 if(state!=temp) //按键和拨码状态改变 { temp=state; Sen(temp); } } }
实验三 #include #include
sbit SCK=P1^7; sbit RCK=P1^6; sbit SER=P1^5; unsigned char num[]={0x41,0xf9,0x83,0xa1,0x39,0x25,0x05,0xf1,0x01,0x21,0x11,0x0d,0x47,0x89,0x07,0x17,0xff}; //先移低位 unsigned char flag, sdata; voidInitSerial() { SCON=0x50;//将串口设置为方式1,8 位数据 PCON=0x00;//不进行2 分频 TMOD=0x20;//定时器1 设为模式2, TL1=0xfa;//设置波特率为9600 19200=22118400/(32*12*(256-0xfd)) TH1=0xfa; TR1=1;//启动定时器1 ES=1;//允许串口中断 } void Ser_ISR() interrupt 4 //串口中断服务程序//串口中断号为4 { ES=0; if(RI) { flag=1; sdata=SBUF; RI=0; } ES=1; } void delay() //延时0.5秒 { inti,j; for(i=0;i<500;i++) for(j=0;j<230;j++); } voidmove_in(unsigned char a) { unsigned char i; for(i=0;i<8;i++) { SCK=0; SER=(num[a]>>i)&(0x01); SCK=1; } } void main() { unsigned char state,i,j; InitSerial(); //初始化串口 EA=1; //允许系统中断 while(1) { state=XBYTE[0x8000]; if(state==0xff) //显示第一种模式 { for(i=0;i<16;i++) { for(j=0;j<4;j++) move_in(i); RCK=0; RCK=1; delay(); } } else { if(flag) { for(i=0;i<4;i++) move_in(16); //清除当前显示 RCK=0; RCK=1; move_in(sdata&(0x0f)); move_in((sdata>>4)&(0x0f)); RCK=0; RCK=1; flag=1; } } } } 实验四 #include #include sbit SCK=P1^7; sbit RCK=P1^6; sbit SER=P1^5; sbit Led1=P1^0; sbit Led2=P1^1; unsigned char num[]={0x41,0xf9,0x83,0xa1,0x39,0x25,0x05,0xf1,0x01,0x21,0x11,0x0d,0x47,0x89,0x07,0x17,0xff}; //先移低位 unsigned char flag, sdata; voidInitSerial() { SCON=0x50;//将串口设置为方式1,8 位数据 PCON=0x00;//不进行2 分频 TMOD=0x20;//定时器1 设为模式2, TL1=0xfa;//设置波特率为9600 19200=22118400/(32*12*(256-0xfd)) TH1=0xfa; TR1=1;//启动定时器1 ES=1;//允许串口中断 } void Led1Invert() { if(Led1==0) Led1=1; else Led1=0; } void Ser_ISR() interrupt 4 //串口中断服务程序//串口中断号为4 { ES=0; if(RI) { flag=1; sdata=SBUF; RI=0; } ES=1; } void delay() //延时1秒 { inti,j; for(i=0;i<1000;i++) for(j=0;j<230;j++); } voidmove_in(unsigned char a) { unsigned char i; for(i=0;i<8;i++) { SCK=0; SER=(num[a]>>i)&(0x01); SCK=1; } } void main() { unsignedinti,j; unsigned char state,temp,addr=0; InitSerial(); //初始化串口 EA=1; //允许系统中断 for(i=0;i<32768;i++) XBYTE[i]=0; //初始化RAM while(1) { state=XBYTE[0x8000]; if(state==0xff) //显示第一种模式 { Led2=1; addr=0; for(i=0;i<10;i++) { Led1Invert(); for(j=0;j<4;j++) move_in(16); //清除当前显示 RCK=0; RCK=1;
temp=XBYTE[0x100+i]; //从RAM中读数据并显示 move_in(temp&(0x0f)); move_in((temp>>4)&(0x0f)); RCK=0; RCK=1; delay(); } }