单片机应用技术第7章
单片机原理及应用(李桂林)章 (7)
第 7 章 单片机并行扩展技术 图 7-1 8031 最小应用系统
第 7 章 单片机并行扩展技术
8031 芯片本身的连接除了 EA 必 须 接地 地外(选择外 部存储器),其他与 80C51 / 89C51 最小应用系统一样,也必须 有复位及时钟电路。
第 7 章 单片机并行扩展技术
7. 2 总线扩展及编址方法
第 7 章 单片机并行扩展技术
7. 1 单片机的最小系统
最小应用系统,是指能维持单片机运行的最简单配置的系 统。这种系统成本低廉、结构简单,常用来构成简单的控制系 统,如开关状态的输入/输出控制等。对于片内有ROM / EPROM 的单片机,其最小应用系统即为配有晶振、复位电路和电源的 单个单片机。对于片内无 ROM / EPROM 的单片机,其最小系统 除了外部配置晶振、复位电路和电源外,还应当外接 EPROM 或 E2 PROM作为程序存储器使用。
第 7 章 单片机并行扩展技术
图 7-3 所示为线选法应用实例。图中所扩展的芯片地址 范围如表 7 -1 所示,其中 ×可以取“0 ”,也可以取 “ 1 ”,用十六进制数表示的地址如下:
2764 ( 1 ): 4000H~5FFFH ,或 C000H~DFFFH ,有地址重 叠现象。
2764 ( 2 ): 2000H~3FFFH ,或 A000H~BFFFH ,有地址重 叠现象。
第 7 章 单片机并行扩展技术
当然,最小系统有可能无法满足应用系统的功能要求。比 如,有时即使有内部程序存储器,但由于程序很长,程序存储器 容量可能不够;对一些数据采集系统,内部数据存储器容量也可 能不够等,这就需要根据情况扩展 EPROM 、 RAM 、 I / O 口 及其他所需的外围芯片。
第 7 章 单片机并行扩展技术
《单片机原理及应用教程》第7章:单片机的串行通信及接口
《单片机原理与应用及上机指导》第7章:80C51单片机系统扩展
表7.4 常用SRAM芯片的主要性能
表7.6 80C51与6264的线路连接
7.2 并行I/O扩展
MCS-51系列单片机共有4个并行I/O口,分别是P0、P1、 P2和P3。其中P0口一般作地址线的低8位和数据线使用; P2口作地址线的高8位使用;P3口是一个双功能口,其第 二功能是一些很重要的控制信号,所以P3一般使用其第二 功能。这样供用户使用的I/O口就只剩下P1口了。另外,这 些I/O口没有状态寄存和命令寄存的功能,所以难以满足复 杂的I/O操作要求。因此,在大部分MCS-5l单片机应用系 统的设计中都不可避免地要进行I/O口的扩展。 7.2.1 并行I/O扩展原理 7.2.2 常用的并行I/O扩展芯片
线选法
若系统只扩展少量的RAM和I/O口芯片,可采用线选法。 线选法是把单片机高位地址分别与要扩展芯片的片选端相连,控制选 择各条线的电路以达到选片目的,其优点是接线简单,适用于扩展芯 片较少的场合,缺点是芯片的地址不连续,地址空间的利用率低。
图7.7 片外RAM的读时序
图7.8 片外RAM的写时序
4.数据存储器芯片及扩展电路
(1) 数据存储器 数据存储器扩展常使用随机存储器芯片,用得较多的是 Intel公司的6116(容量为2KB)和6264(容量为8KB), 其性能 如表7.4所示。 (2) 数据存储器扩展电路 80C51与6264的连接 如表7.6所示。
全地址译码法
利用译码器对系统地址总线中未被外扩芯片用到的高位地址线进行译 码,以译码器的输出作为外围芯片的片选信号。常用的译码器有 74LS139、74LS138、74LS154等。优点是存储器的每个存储单元只 有唯一的一个系统空间地址,不存在地址重叠现象;对存储空间的使 用是连续的,能有效地利用系统的存储空间。缺点是所需地址译码电 路较多,全地址译码法是单片机应用系统设计中经常采用的方法 。
《单片机原理与应用技术》第7章
单片机原理与应用技术( 单片机原理与应用技术(第2版)清华大学出版社
在程序中,函数有 种形态 函数定义,函数调用和函数说明. 种形态: 在程序中,函数有3种形态:函数定义,函数调用和函数说明. 函数定义相当于汇编中的一般子程序.函数调用相当于调用了程序 的CALL语句,要求有函数名和实参数表.函数说明是一个没有函数 体的函数定义.
C51中函数分为两大类:库函数和用户定义函数. 中函数分为两大类:库函数和用户定义函数. 中函数分为两大类 库函数是C51在库文件中已定义的函数,其函数说明在相关的头文 件中.用户函数是用户自己定义,自己调用的一类函数.
单片机原理与应用技术( 单片机原理与应用技术(第2版)清华大学出版社
7.3 C51的数据与运算
单片机原理与应用技术( 单片机原理与应用技术(第2版)清华大学出版社
7.2 C51的程序结构
C51程序的基本单位是函数.函数由函数说明和函数体两部分 组成.一个C源程序至少包含一个主函数,也可以是一个主函数和 若干其他函数.主函数是程序的入口;主函数中的所有语句执行完 毕,则程序结束. C51程序的一般格式如下: C51程序的一般格式如下: 程序的一般格式如下 类型 参数说明; 参数说明 { 数据说明部分; 数据说明部分 执行语句部分; 执行语句部分 } 函数名(参数表 函数名 参数表) 参数表
7.3.1 数据类型
单片机原理与应用技术( 单片机原理与应用技术(第2版)清华大学出版社
7.3.2 数据的存储
1,存储类型与存储空间 ,
单片机原理与应用技术( 单片机原理与应用技术(第2版)清华大学出版社
2,存储模式 ,
单片机原理与应用技术( 单片机原理与应用技术(第2版)清华大学出版社
单片机的C 7.4 单片机的C语言程序设计
单片机讲义第七章
一、中断的起因
什么可以引起中断? 生活中很多事件可以引起中断:有人 按了门铃了,电话铃响了,你的闹钟闹响 了,你烧的水开了….等等诸如此类的事件, 我们把可以引起中断的称之为中断源,单 片机中也有一些可以引起中断的事件, 8051中一共有5个:两个外部中断,两个 计数/定时器中断,一个串行口中断。
三、中断的响应过程
当有事件产生,进入中断之前我们必须先记住现 在看书的第几页了,或拿一个书签放在当前页的位置, 然后去处理不同的事情(因为处理完了,我们还要回 来继续看书):电话铃响我们要到放电话的地方去, 门铃响我们要到门那边去,也说是不同的中断,我们 要在不同的地点处理,而这个地点通常还是固定的。 89C51中也是采用的这种方法,五个中断源,每个 中断产生后都到一个固定的地方去找处理这个中断的 程序,当然在去之前首先要保存下面将执行的指令的 地址,以便处理完中断后回到原来的地方继续往下执 行程序。
二、中断的嵌套与优先级处理
设想一下,我们正在看书,电话铃响了,同时又 有人按了门铃,你该先做那样呢?如果你正是在等一 个很重要的电话,你一般不会去理会门铃的,而反之, 你正在等一个重要的客人,则可能就不会去理会电话 了。如果不是这两者(即不等电话,也不是等人上 门),你可能会按你通常的习惯去处理。总之这里存 在一个优先级的问题, 单片机中也是如此,也有优先级的问题。优先级 的问题不仅仅发生在两个中断同时产生的情况,也发 生在一个中断已产生,又有一个中断产生的情况,比 如你正接电话,有人按门铃的情况,或你正开门与人 交谈,又有电话响了情况。考虑一下我们会怎么办吧。
电平触发的外部中断的清除
对于电平触发的外部中断,CPU响应中断后, 虽然也是由硬件清除了相应的标志位,但是不 能对外部引脚上的电平进行处理,也就是说, 这时如果外部引脚上的低电平依然存在,会造 成重复中断,因此我们应该在电路上增加对外 部引起中断的信号进行处理。P148图7-5是一 个可行的方案之一。通过I/O口输出一个信号, 使得外部引脚上的中断请求信号变为高电平。
单片机原理与应用及C51程序设计第7章习题答案
第7章习题答案7-1 键抖动对单片机系统有何影响?有哪些消除抖动的方法?答:由于按键是机械开关结构,所以当用手按下其中一个键时,往往会出现所按键在闭合位置和断开位置之间发生跳几下后才会稳定到闭合状态的情况。
在释放一个键时,也会出现类似的情况,这就是键的抖动,抖动的持续时间不一,但通常不会大于10ms。
若抖动问题不解决,就会引起对闭合键的多次读入。
对于键抖动最方便的解决方法就是当发现有键按下后,不是立即进行扫描,而是延时大约10ms后再进行。
由于一个键按下的时间一般会持续上百毫秒,所以延迟10ms后再扫描处理并不迟。
另外一种办法就是使用硬件电路(如触发器)进行消抖。
7-3 自己设计一个3×3的矩阵键盘的硬件电路,试编制相应的键盘扫描程序。
(注:为结合开发板的情况),我以开发板上的4×4键盘为例进行说明:解:只考虑了键盘的处理,并没有考虑显示#include "regx52.h"#define uchar unsigned char#define uint unsigned intstatic const char c_keyCode[16]={0x01,0x02,0x03,0x0a, /*键盘1,2,3,A*/0x04,0x05,0x06,0x0b, /*键盘4,5,6,B*/0x07,0x08,0x09,0x0c, /*键盘7,8,9,C*/0x0e,0x00,0x0f,0x0d}; /*键盘*,0,#,D*/ uchar ScanKeys(void); /*扫描键盘模块*/void Delay (uchar value); /*10ms延时*/void main(void) /*主程序入口*/{while(1){ScanKeys();}}uchar ScanKeys(void) /*扫描键盘模块*/ {uchar scanV alue;P3_2 = 0;P3_3 = 0;P1=0xf0;if ((P1&0xf0)!=0xf0) /*有键按下*/{Delay(1); /*延时10ms以消除抖动*/P1=0xf0;if ((P1&0xf0)==0xf0) /*有键按下*/{return 0xee;}else{P1=0xfe;scanV alue=P1;switch (scanV alue){case 0xee: iScan=0x01;break; //键"a"case 0xde: iScan=0x02;break; //键"1"case 0xbe: iScan=0x03;break; //键"2"case 0x7e: iScan=0x0a;break; //键"3"}P1=0xfd;scanV alue=P1;switch (scanV alue){case 0xed: iScan=0x04;break; // 键"4case 0xdd: iScan=0x05;break; // 键"5case 0xbd: iScan=0x06;break; // 键"6case 0x7d: iScan=0x0b;break; // 键"b}P1=0xfb;scanV alue=P1;switch (scanV alue){case 0xeb: iScan=0x07;break; // 键"7case 0xdb: iScan=0x08;break; // 键"8case 0xbb: iScan=0x09;break; // 键"9case 0x7b: iScan=0x0c;break; // 键"c}P1=0xf7;scanV alue=P1;switch (scanV alue){case 0xe7: iScan=0x00;break; // 键"0case 0xd7: iScan=0x0d;break; // 键"dcase 0xb7: iScan=0x0e;break; // 键"ecase 0x77: iScan=0x0f;break; // 键"f}}// P1=0xf0;while ((P1&0xf0)!=0xf0);//防止键按住不放return iScan;}return 0xee;}void Delay (uchar value) /*10ms延时*/{uchar i,j;while (value--){for(j=20; j>0;j--)for(i=250;i>0;i--);}}7-4 结合开发板的情况,在6个数码管上从右到左依次显示一个“3”,直到出现6个“3”为止,延时时间设为1秒。
单片机应用技术第七章
特点:传输线少, 成本低,可以利用 电话网等现成的设 备;
但数据的传送控制 比并行通信复杂。
图7-2 串行通信示意图
7.1.1 串行通信基本方式
1、通信协议:对于串行通信,数据信息、控制信息要 按位在一条线上依次传送,为了对数据和控制信息进 行区分,收发双方要事先约定共同遵守的通信协议。 2、通信协议约定的内容:包括数据格式、同步方式、 传输速率、校验方式等。 3、依发送和接收设备时钟的配置情况串行通信可以分 为异步通信和同步通信。多数情况下使用异步通信。
4、异步通信 ( 1 )定义:指通信的发送和接收设备使用各自的时钟 控制数据的发送和接收过程。
*为使双方的收发协调,要求发送和接收设备的时钟尽 可能一致。
图7-3 异步通信示意图
( 2 )异步通信的优缺点 优点:不要求收发双方时钟的严格一致,要求发送 数据和接收数据双方约定相同的数据格式和速率, 实现容易,设备开销小;
7.2.3 串行接口的工作方式
1. 方式0:同步移位寄存器的输入输出方式。 主要用于扩展并行输入或输出接口,数据由RXD(P3.3)
引脚输入或输出,同步移位脉冲由TXD(3.1)引脚输出, 发送和接收均为8位数据,低位在先,高位在后。帧 格式如下: … D0 D1 D2 D3 D4 D5 D6 D7 …
1)SM0和SM1: 串行口工作方式 选择位,共4种 工作方式
2)SM2:多机通信控制位,主要用于方式2和方式3。由于方 式0和方式1不是多机通信的方式,所以要置SM2=0。 3)REN:允许串行接收位。 由软件置REN=1,则启动串行接口数据;若软件置REN=0, 则禁止接收。
单片机原理与应用技术第7章
E12系列 : 10 % 1 1.2 1.5 1.8 2.2 2.7 3.3 3.9 4.7 5.6 6.8 8.2
E24系列 : 5 % 1.0 1.1 1.2 1.3 1.5 1.6 1.8 2.0 2.2 2.4 2.7 3.0 3.3 3.6 3.9 4.3 4.7 5.1 5.6 6.2 6.8 7.5 8.2 9.1
4
(2)碳膜电阻(代号RT).在瓷柱体外层喷涂碳 膜而成(初期产品有扁形引脚),热噪声小,耐功 耗较高,性能和价格也提升,20世纪六七十年代 以来在晶体管收音机及电子仪器中一直常用.
(3)金属膜电阻(代号RJ).在瓷柱体外层喷涂 金属膜而成(初期产品表面多为红色)精度稳定 ,耐功耗高,体积相对小,价贵,常作为精密和高 稳定性电阻, 被广泛应用于诸如示波器等精密 电子仪器和设备.
典型薄膜电容的特性简介如下:
1)聚酯电容(代号CL):体积小,容量大,绝缘电 阻高,耐热耐湿,成本较低,一般容量范围 100pF~10μF、额定电压63~630V,具正温度系 数,温度范围-55~+100℃,损耗随频率升高而 增加较大,稳定性较差.
*不宜用于高频电路,被广泛用于对稳定性和损 耗要求不高的直流和中频、低频电路.
* 标称值表示电阻生产是按10倍阻值递增的,
17
例如:数字1.5表示阻值有 1.5 、15 、150 、 1.5k 、15k、150k 、1.5M 等,其余可类推. * 应用中如果标称值中没有所需的阻值,可通 过串-并联方法组构. 电阻值可用数字万用表 或指针式万用表来测量,前者读数较准确方便.
3)聚苯乙烯电容(代号CB):介电损耗极低,较 之聚丙烯电容要稳定,绝缘电阻很高,电参数 随温度和频率变化很小,电容量精度高,一般
单片机第7章习题答案
第7章习题答案1.通常8031给用户提供的I/O口有哪几个?为什么?答案:MCS-51系列单片机虽然有4个8位I/O口P0、P1、P2、P3,但4个I/O口实际应用时,并不能全部留给用户作系统的I/O口。
因为当单片机在外部扩展了程序存储器、数据存储器时,就要用P0和P2口作为地址/数据总线,而留给用户使用的I/O口只有P1口和一部分P3口。
(不做系统扩展,都可以用作I/O口)2.在MCS-51单片机应用系统中,外接程序存储器和数据存储器的地址空间允许重叠而不会发生冲突,为什么?外部I/O接口地址是否允许与存储器地址重叠?为什么?答案:因为单片机访问外部程序存储器与访问外部数据存储器(包括外部I/O口)时,会分别产生PSEN与RD/WR两类不同的控制信号,因此外接程序存储器和数据存储器的地址空间允许重叠而不会发生冲突。
外部扩展I/O口占用数据存储器地址空间,与外部数据存储器统一编址,单片机用访问外部数据存储器的指令来访问外部扩展I/O口。
因此外部I/O接口地址是否允许与程序存储器地址重叠不允许与数据数据存储器地址重叠。
3.在通过MOVX指令访问外部数据存储器时,通过I/O口的哪些位产生哪些控制信号?答案:MCS-51对外部数据存储器的访问指令有以下4条:1)MOVX A, @Ri2)MOVX @Ri, A3)MOVX A, @DPTR4)MOVX @DPTR, A访问外部数据存储器指令在执行前,必须把需要访问的存储单元地址存放在寄存器Ri (R0或R1)或DPTR中。
CPU在执行1)、2)指令时,作为外部地址总线的P2口输出P2锁存器的内容、P0口输出R0或R1的内容;在执行3)、4)指令时,P2口输出DPH内容,P0口输出DPL内容。
写时(/WR P3.6)有效;读时(/RD P3.7)有效。
4.外部存储器的片选方式有几种?各有哪些特点?答案:外部存储器的片选方式有线选法和译码法两种。
线选法的特点是连接简单,不必专门设计逻辑电路,但是各个扩展芯片占有的空间地址不连续,因而地址空间利用率低。
《单片机原理及应用》教学课件 第7章-单片机C语言编程基础知识
7.1.2 C51 数据类型
3. sfr16
sfr16也是一种扩充数据类型,它定义的变量占用两个 内存单元。sfr16和sfr一样用于操作特殊功能存放器,不同 的是,sfr16定义的变量可访问16位特殊功能存放器,sfr16 类型变量的取值范围为0~65535。
该数据类型的定义格式如下: sfr16 变量名=变量地址; 此处的变量地址为16位地址中的低8位地址。通过sfr16 类型变量访问16位特殊功能存放器时,先读低字节数据,后 读高字节数据;对特殊功能存放器写入数据时,先写入高字 节地址,再写入低字节地址。
要在数字后面加上字母L,如104L,034L,7850L等。
〔2〕浮点型常量
浮点型常量可分为十进制和指数两种表示形式。
① 十进制浮点型常量由数字和小数点组成,整数或小数局部为0时可以省略,
但必须要保存小数点,如,,,.25,300.等。
② 指数浮点型常量表示形式为:[±]数字[.数字]e[±]数字。[]中的内容为可选
C语言程序本身不依赖于硬件开发平台,程序不做修改或做少量修改就可以移植到 不同的单片机中。目前,使用C语言进行程序设计已经成为单片机软件开发的主流。
基于单片机的C语言又称为C51语 言。和标准C语言所不同的是,C51语 言运行于单片机平台上,并根据单片 机的硬件特点扩展了局部关键字。以 下关于C语言的描述都是基于单片机的, 后面不再强调这一点。
项,如125e3,7e9,−3.0e−3等。
15
7.1.3 常量与变量
〔3〕字符型常量 将单个字符放在单引号内的常量就是字符型常量,如'a''d'等。有一类字符型常量专 门用来表示控制字符,如回车符、换行符等,它们被称为转义字符,其表示方式为在字 符前面加上一个反斜杠“\〞,如'\n'。常用转义字符如表7-3所示。
《单片机原理及应用》第7章 51及定时器计数器应用基础
中断,并在中断服务程序中对P1.0和P1.1取反。由于 采用了6MHz晶振,因此单片机的机器周期为2μs。因 此可计算TL0的初值X=156=9CH,TH0的初值X=56=38H。
【例7-3】P1.1输出周期1s的方波
• 由于定时时间较长,一个定时器不能直接实现(一个 定时器最长定时时间为65536us),可以有以下两种方 法。
• 方法1:硬件定时*软件计数 • 如硬件定时50ms,软件计数器设定为20即可。
方法2:硬件定时器*硬件计数器
• (1)T0定时器,定时器50ms,定时时间到,P1.0取反 ;
• (2)T1计数器, • 计数脉冲位P1.0, • 计数10次; • (3)计数次数到 • P1.1取反。
【例7-4】不同占空比的输出)
• 7.1.1 结构 • 7.1.2 控制寄存器 •
7.1.1 结构
• 计数功能:
• 是指对外部事件进行计数:计数信号来自T0(P3.4)、 T1(P3.5)引脚。
• 定时功能:
• 也是通过计数器的计数功能来完成的,不过此时的计 数脉冲来自单片机内部:机器周期。
7.1.2 控制寄存器
• 与定时器/计数器应用有关的控制寄存器有2个,分别 为TCON、TMOD、TH、TL。
• 1、计数器控制寄存器(TCON)
2、工作方式控制寄存器(TMOD)
• 3、TH、TL • 4、如果是中断方式,还与IE、IP寄存器有关。
7.1.3 串行通信的检错与纠错
• 1、奇偶校验 • 2、代码和校验 • 3、循环冗余校验(CRC校验)
总结:
• 7.1.4(1串)并行行接与口串芯行片;UART和USART
《单片机原理及应用技术》(第3版 李全利)习题答案:xt7
章7 80C51单片机的系统扩展1.以80C31为主机,用2片27C256扩展64K EPROM,试画出接口电路。
答:2.以80C31为主机,用1片27C512扩展64K EPROM,试画出接口电路。
答:3.以80C31为主机,用1片27C256扩展32K RAM,同时要扩展8K的RAM,试画出接口电路。
答:4.当单片机应用系统中数据存储器RAM地址和程序存储器EPROM地址重叠时,它们内容的读取是否会发生冲突,为什么?答:不会。
由于80C51对ROM的读操作由PSEN控制,指令用MOVC类;对RAM读操作用RD控制,指令用MOVX。
所以,尽管ROM与RAM的逻辑地址是重叠的,它们内容的读取也不会发生冲突。
5.根据图7.14电路,编程完成对81C55的操作:a、读81C55的80H单元。
b、将立即数88H写入81C55的30H单元。
答:a、MOV DPTR,#7E80HMOVX A,@DPTRb、MOV A,#88HMOV DPTR,#7E30HMOVX A,@DPTR6.I2C总线的特点是什么?答:a、二线制传输。
器件引脚少,器件间连接简单,电路板体积减小,可靠性提高。
b、传输速率高标准模式传输速率为100Kb/s,快速模式为400Kb/s,高速模式为3.4Mb/s。
c、支持主/从和多主两种工作方式7、I2C总线的起始信号和终止信号是如何定义的?答:SCL线为高电平期间,SDA线由高电平向低电平的变化表示起始信号;SCL线为高电平期间,SDA 线由低电平向高电平的变化表示终止信号。
起始和终止信号如图所示。
起始信号 S终止信号 P8、I2C总线的数据传送方向如何控制?答:在主机发出起始信号后要再传输1个控制字节:7位从器件地址,1位传输方向控制位(用“0”表示主机发送数据,“1”表示主机接收数据)。
9、具备I2C总线接口的E2PROM芯片有哪几种型号?容量如何?答:典型产品如A TMEL公司的AT24C系列:型号容量AT24C01A 128AT24C02 256AT24C04 512AT24C08A 1KAT24C16A 2KAT24C32A 4KAT24C64A 8KAT24C128B 16KAT24C256B 32KAT24C512B 64K10、A T24C系列芯片的读写格式如何?答:a、写操作过程对A T24C02写入时,单片机发出起始信号之后再发送的是控制字节,然后释放SDA线并在SCL线上产生第9个时钟信号。
CC2530单片机技术与应用 第2版 第7章CC2530看门狗应用
MODE:该位用于启动WDT处于看门狗模式还是定时器模式。当处于定时器模式,设置这些位为IDLE将停 止定时器。注意:当运行在定时器模式时要转换到看门狗模式,首先停止WDT,然后启动WDT处于看 门狗模式。当运行在看门狗模式,写这些位没有影响。
INT:注意间隔只能在WDT处于IDLE时改变,这样间隔必须在定时器启动的同时设置。
描述
7:4 CLR[3:0] 0000 R0/W 清除定时器。当0xA跟随0x5写到这些位,定时器被清除(即加载0)。
模式选择。
3:2
MODE[1: 0]
00
1:0 INT[1:0] 00
00:IDLE(idle空闲的意思)
R/W
01:IDLE(未使用,等于00设置)
10:看门狗模式
11: 定时器模式
定时器间隔选择。这些位选择定时器间隔定义为32 kHz振荡器周期的规
定数。00: 定时周期×32,768 (~1 s)当运行在32 kHz XOSC
R/W
01: 定时周期×8192 (~0.25 s)
10: 定时周期×512 (~15.625 ms)
11: 定时周期×64 (~1.9 ms)
CLR:注意定时器仅写入0xA后,在1个看门狗时钟周期内写入0x5时被清除。当看门狗定时器是IDLE为时写 这些位没有影响。当运行在定时器模式,定时器可以通过写1到CLR[0](不管其他3位)被清除为 0x0000(但是不停止)
3、开发实验
开始实验。。。。。。
3、开发实验
3、开发实验
开始实验。。。。。。
4、拓展题
题1:
实验要求:我们在主函数中把喂狗函数FeedWD注释掉,请把该函 数加入系统,然后重新编译下载至实验板运行,观察现象。LED1还 闪烁吗?为什么?
精品课件-单片机应用技术基础-第7章
模块7 综 合 应 用
sbit RS= P2^2;
//LCD1602控制位
sbit RW= P2^1;
sbit E= P2^0;
void LCD_cmd(uchar cmd);
void LCD_dat(uchar dat) ;
void Display(unsigned char x, unsigned char y,
模块7 综 合 应 用 模块7 综 合 应 用
任务14 多点温度测量系统设计
模块7 综 合 应 用 任务14 多点温度测量系统设计
模块7 综 合 应 用
1. 任务目的 培养利用温度传感器、液晶显示器、串行通信等多种外围器 件进行综合应用的能力。 2. 任务要求 下位机利用一线总线技术使用多个DS18B20温度传感器进行 多点温度测量,利用串行数据通信的方式将多点温度信号传送 至上位机,并在LCD1602液晶显示器上显示出所测 温度。 3. 硬件设计 五片DS18B20采集五个不同点的温度,利用单总线技术将测 量结果通过下位机的P1.3输入。下位机和上位机采用串行通信 方式,将双方的RXD(P3.0)和TXD(P3.1)交叉互连,下位机采集 到的温度数据传送到上位机。上位机通过液晶显示器LCD1602
模块7 综 合 应 用
模块7 综 合 应 用
4. 程序设计
程序分为两个大部分,上位机程序和下位机程序。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
单向总线扩展
除扩展双向数据总线P0口外,若需要扩展P2口(高8位地址 总线,单向)或WR、RD、PSEN、ALE等单向控制总线,就不必 用74245,可用74244。 (1)74LS244芯片介绍 74244是8同相三态缓冲/驱动器。片内有2组三态缓冲器,每 组4个,分别由一个门控端控制。门控端低电平有效时,输入端信 号从输出端输出,门控端信号无效时,输出端呈高阻态。
(2)典型应用电路 控制DIR可用RD或WR,片选端CE直接接地,始终有效。 图7-20a用RD控制DIR,A0-A7接P0口,B0-B7接外RAM 或外设。当RD有效时,DIR=0,数据从BA;RD无效时, DIR=1,数据从AB。 图7-20b用WR控制DIR,B0-B7接P0口,A0-A7接外RAM 或外设。当WR有效时,DIR=0,数据从BA;WR无效时, DIR=1,数据从AB。
7.4.3 扩展总线驱动能力
当P0口总线负载达到或超出P0口最大负载能力8个 TTL门时,必须接入总线驱动器。因P0口传送数据是双 向的,因此要扩展的数据总线驱动器也必须具有双向三 态功能。
双向总线扩展
(1)74245芯片介绍 74245是8同相三态双向总线收发器,可双向传输,当片选 端CE低电平有效时,DIR=1,信号从AB;DIR=0,信号从 BA,当CE为高电平时,A、B端均成高阻态。
译码法与线选法比较,硬件电路稍复杂,需要使用译码器,但可 充分利用存储空间,全译码时还可避免地址重叠现象,局部译码 因还有部分高位地址线未参与译码,因此仍存在地址重叠现象。 译码法的另一个优点是若译码器输出端留有剩余端线未用时,便 于继续扩展存储器或I/O口接口电路。 译码法和线选法不仅适用于扩展存储器(包括外RAM和外ROM), 还适用于扩展I/O口(包括各种外围设备和接口芯片)。
7.4.2 74377扩展输出口
74377芯片介绍
74377为带有输出允许控制的8D触发器。D0-D7为8个D触 发器的D输入端,Q0-Q7是8个D触发器的Q输出端。时钟脉冲输 入端CLK,上升沿触发,8D共用。OE为输出允许端,低电平有效。 当OE端为低电平,且CLK端有正脉冲时,在正脉冲的上升沿,D 端信号被锁存,从相应的Q端输出。
典型应用电路
G接高电平,门控始终有效;从D0~D7输入的信号能直达 Q0~Q7输出缓冲器待命;由80C51的RD和P2.7(一般用 P2.0~P2.7为宜)经过或门与74373 OE端相连。
例7-4
按图7-16,试编制程序,从373外部每隔1秒读入一个数据, 共16个数据,存入以30H为首址的内RAM。 解:编程如下: IND: MOV DPTR,#7FFFH ;置373口地址 MOV R0,#30H ;置内RAM数据存储区首址 IND0: MOVX A,@DPTR ;输入数据 MOV @R0,A ;存数据 INC R0 ;指向下一存储单元 LCALL DLY1s ;调用1s延时子程序 CJNE R0,#40H,IND0 ;判16个数据读完否?未完继续 RET ;
7.4 用74系列芯片并行扩展I/O口
扩展I/O口分类:并行扩展和串行扩展;可编程和不可编程。 80C51并行扩展I/O口是将I/O口看作外RAM的一个存储单元,与 外RAM统一编址,操作时执行MOVX指令和使用RD﹑WR控制信 号。从理论上讲,扩展I/O口最多可扩展64000个I/O口。 与80C51最适配的是74HC系列,74HC系列是一种高速CMOS芯 片,其输入和电源电压规范同CMOS 4000系列,输出驱动能力和 速度与74LS系列相当。 构成输出口时,接口芯片应具有锁存功能; 构成输入口时,接口芯片应具有三态缓冲和锁存功能。
译码法
通过译码器将高位地址线转换为片选信号。2条地址线能译成4种片选 信号,3条地址线能译成8种片选信号。
表7-3 译码法三片存储器芯片地址分配表
二进制表示 无关位 A15 芯 片 Ⅰ 芯 片 Ⅱ 芯 片 Ⅲ 1 . 1 1 . 1 1 . 1 0 . 0 0 . 0 0 . 0 片外地址线 A14 A13 A12 A11 0 . 0 0 . 0 0 . 0 0 . 0 0 . 0 1 . 1 . 0 . 1 0 . 0 1 0 0 . 1 0 . 1 0 . 1 0 . 1 0 . 1 0 . 1 0 . 1 0 . 1 0 . 1 0 . 1 0 . 1 0 . 1 片内地址线 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 0 . 1 0 . 1 0 . 1 0 . 1 0 . 1 0 . 1 0 . 1 0 . 1 0 . 1 0 . 1 0 . 1 0 . 1 0 . 1 0 . 1 0 . 1 0 . 1 0 . 1 0 . 1 0 . 1 0 . 1 0 . 1 8000H ~ 87FFH 8800H ~ 8FFFH 9000H ~ 97FFH 16进制表示
7.4.1 74373扩展输入口
74373芯片介绍
74373是8D三态同相锁存器,内部有8个相同的D触发器。 D0-D7为其D输入端,Q0-Q7为其Q输出端。G为门控端,OE为 输出允许端。 当G高电平,且OE低电平时,D0-D7的信号进入D触发器, 从相应的输出端Q0-Q7输出。当G为低电平时,Q保持不变;当 OE为高电平时,Q是高阻态。
线选法
高位地址线直接连到存储器芯片的片选端。
低位地址线A0~A10实现片内寻址。高位地址线A11~A13 实现片选,均为低电平有效(A11~A13中只允许有一根为低电平, 另二根必须为高电平,否则出错)。无关位A14、A15可任取, 一般取“1”。
表7-1 线选法三片存储器芯片地ห้องสมุดไป่ตู้分配表
二进制表示 无关位 片外地址线 片内地址线 16进制表示 0 0 0 0 F000H ~ F7FFH E800H ~ EFFFH D800H ~ DFFFH
7.1 并行扩展概述
7.1.1并行扩展连接方式
并行扩展总线组成
⑴ 数据传送:由数据总线DB(D0~D7)完成; D0~D7由P0口提供。 ⑵ 单元寻址:由地址总线AB(A0~A15)完成; 低8位地址线A0~A7由P0口提供, 高8位地址线A8~A15由P2口提供。 ⑶ 交互握手:由控制总线CB完成。 控制线有PSEN、WR、RD、ALE、EA
A15
芯 片 Ⅰ 芯 片 Ⅱ 芯 片 Ⅲ 1
A14
1
A13 A12 A11
1 1 0
A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0
0 0 0 0 0 0 0
.
1 1 .
.
1 1 .
.
1 1 .
.
1 0 .
.
0 1 .
.
1 0 .
.
1 0 .
.
1 0 .
.
1 0 .
.
1 0 .
.
1 0 .
(2)典型应用电路 地址信号或控制信号是单向传输,且不允许锁存,1G、2G接 地始终有效。
综上所述,扩展输入口时,用74373为宜;扩展 输出口时,用74377为宜;扩展双向总线时,用 74245为宜;扩展单向总线时,用74244为宜,推荐 采用74HC系列芯片。
第七章
80C51并行扩展技术
本章要点
并行扩展总线组成(地址、数据、控制总线) 并行扩展寻址方式(线选法、译码法) 用74系列芯片并行扩展I/O口 扩展总线驱动能力
80C51系列单片机有很强的外部扩展能力。外部扩展可分为 并行扩展和串行扩展两大形式。 早期的单片机应用系统以采用并行扩展为多,近期的单片机 应用系统以采用串行扩展为多。 外部扩展的器件可以有ROM、RAM、I/O口和其他一些功能 器件,扩展器件大多是一些常规芯片,有典型的扩展应用电路, 可根据规范化电路来构成能满足要求的应用系统。
80C51控制总线,有以下几条:
① ALE:输出,用于锁存P0口输出的低8位地址信号,一般与地址锁 存器门控端G连接。 ② PSEN:输出,用于外ROM读选通控制,一般与外ROM输出允许端 OE连接。 ③ EA:输入,用于选择读内/外ROM。EA=1,读内ROM;EA=0, 读外ROM。一般情况下,有并且使用内ROM时,EA接Vcc;无内 ROM或仅使用外ROM时,EA接地。 ④ RD:输出,用于读外RAM选通,执行MOVX读指令时,RD会自动 有效,一般与外RAM读允许端OE连接。 ⑤ WR:输出,用于写外RAM选通,执行MOVX写指令时,WR会自 动有效,与外RAM写允许端WE连接。 ⑥ P2.X:并行扩展外RAM和I/O时,通常需要片选控制,一般由P2口 高位地址线担任。
.
1 0 .
.
1 0 .
.
1 0 .
.
1 0 .
.
1 0 .
1
1 . 1
1
1 . 1
1
0 . 0
0
1 . 1
1
1 . 1
1
0 . 1
1
0 . 1
1
0 . 1
1
0 . 1
1
0 . 1
1
0 . 1
1
0 . 1
1
0 . 1
1
0 . 1
1
0 . 1
1
0 . 1
线选法优点:连接简单; 缺点:①芯片的地址空间不连续; ②存在地址重叠现象。 适用于扩展存储容量较小的场合。 产生地址空间不连续的原因是用作片选信号高位地址线可组 成的信号状态未得到充分利用。A13、A12、A11三根地址线的信 号状态有8种:000-111,只使用了其中3种:110、101和011, 这3种信号状态本身不连续,从而导致存储器地址空间不连续。 所谓“地址重叠”,是指一个存储器芯片占有多个额定地址 空间,一个存储单元具有多个地址,或者说不同的地址会选通同 一存储单元。产生“地址重叠”的原因是高位地址线中有无关位, 且无关位可组成多种状态,与存储器芯片的地址组合后可组成多 个地址空间。