第13章单片机系统的串行+扩展
项目 一 汽车单片机原理应用(任务五 MCS-51单片机系统扩展)

(3) MCS-51单片机系统地址空间的分配 系统空间分配:通过适当的地址线产生各外部扩展器件的片 选/使能等信号就是系统空间分配。
编址:编址就是利用系统提供的地址总线,通过适当的连接, 实现一个编址惟一地对应系统中的一个外围芯片的过程。编 址就是研究系统地址空间的分配问题。
片内寻址:若某芯片内部还有多个可寻址单元,则称为片内 寻址。
2)全地址译码法
利用译码器对系统地址总线中未被外扩芯片用到的高位 地址线进行译码,以译码器的输出作为外围芯片的片选信 号。常用的译码器有:74LS139,74LS138,74LS154等。 优点是存储器的每个存储单元只有惟一的一个系统空间地 址,不存在地址重叠现象;对存储空间的使用是连续的, 能有效地利用系统的存储空间。缺点是所需地址译码电路 较多,。全地址译码法是单片机应用系统设计中经常采用 的方法。
1。程序和数据之和不大于 存储器总容量。 2。程序必须存放在低地址,
数据存放在高地址。
三、并行I/O口扩展 MCS-51单片机具有四个并行8位I/O口原理均可用做双向并行 I/O接口,但在实际应用中,可提供给用户使用的I/O口只有P1 口和部分P3口线及作为数据总线用的P0口。在单片机的I/O口 线不够用的情况下,可以借助外部器件对I/O口进行扩展 (1)概述 1)单片机I/O口扩展方法 并行I/O口扩展的目的:为外围设备提供一个输入输出通道。 ①并行总线扩展的方法 ②串行口扩展方法(只介绍总线扩展方式下I/O接口扩展方法) ③I/O端口模拟串行方法
二、存储器的扩展 存储器是计算机系统中的记忆装置,用来存放要运行的程 序和程序运行所需要的数据。单片机系统扩展的存储器可分为 程序存储器和数据存储器两种类型。
(1)MCS-51单片机对外部存储器的扩展应考虑的问题
单片机的IO扩展

8.3 用51单片机的串行口扩展并行口
串口的方式0用于I/O扩展。方式0为同步移位寄存器工作方
式,波特率为fosc/12。数据由RXD端(P3.0)输入,同步移
位时钟由TXD端(P3.1)输出。
1. 用74LS165扩展并行输入口
如图8-13,用51单片机的串口扩展两个8位并行输入口。
• 74LS165是8位并行输入串行输出的寄存器。当74LS165的S/L#端由高到低 跳变,并行输入端的数据被置入寄存器;
MOVX @DPTR,A
;WR#为低,数据经74LS273口输出
第26页/共97页
【例8-1】 程序编写程序把按钮开关状态通过图8-12的发光二
极管显示出来。
程序如下:
DDIS: MOV DPTR,#0FEFFH ;输入口地址→DPTR
LP: MOVX A,@DPTR
;按钮开关状态读入A中
MOVX @DPTR,A
关状态。 • 当某条输入口线的按钮开关按下时,该输入口线为低电平,读入单片机后
,其相应位为“0”,然后再将口线的状态经74LS273输出,某位低电平时 二极管发光,从而显示出按下的按钮开关的位置。
第24页/共97页
【例8-1】 分析 该电路的工作原理如下
• 当P2.0=0,RD#=0(WR#=1)时,选中74LS244芯片,此时若无按钮开关按 下,输入全为高电平。当某开关按下时则对应位输入为“0”,74LS244的 输入端不全为“1”,其输入状态通过P0口数据线被读入AT89S51片内。
8.1 单片机的系统扩展概述
1. 系统扩展的含义
在单片机芯片外加相应的芯片、电路,使得有关功能得以扩 充,称为系统扩展。
系统扩展包括:外部存储器扩展,I/O接口扩展,总线扩展 等
单片机题库分章节答案(C语言)

第1部分单片机概述及数学基础一、填空题1、十进制255的二进制是11111111,十六进制是FF 。
2、单片机是将CPU、存储器、特殊功能寄存器、定时/计数器和输入/输出接口电路、以及相互连接的总线等集成在一块芯片上。
3、十进制127的二进制是1111111,十六进制是7F。
4、+59的原码是00111011,-59的补码是11000101。
5、十进制数100转换为二进制数是1100100;十六进制数100转换为十进制数是256。
6、十进制数40转换为二进制数是101000;二进制数10.10转换为十进制数是 2. 5。
7、十进制99的二进制是1100 011,十六进制是63。
二、判断题(×)1、AT89S51是一种高性能的16位单片机。
8位机(×)2、有符号正数的符号位是用1表示的。
三、选择题()1、计算机中最常用的字符信息编码是(A)A. ASCIIB.BCD码C. 余3码D. 循环码四、简答题1、何谓单片机?单片机与一般微型计算机相比,具有哪些特点?第2部分51单片机硬件结构、存储系统及I/O接口一、填空题1、AT89S51单片机共有 4 个8位的并行I/O口,其中既可用作地址/数据口,又可用作一般的I/O口的是P0。
2、若采用12MHz的晶振,则MCS-51单片机的振荡周期为__ 1/12 μS __ ,机器周期为____1μS __。
3、AT89S51单片机字长是___8___位,有___40根引脚。
4.89S51单片机是8位单片机,其PC计数器是16位。
5.若单片机使用的晶振频率是6MHz,那么一个振荡周期是1/6µS,一个机器周期是2μSµS。
6.89S51单片机是+5 V供电的。
4.0-5.5V7.堆栈是内部数据RAM区中,数据按先进后出的原则出入栈的。
8.MSC-51系列单片机具有 4 个并行输入/输出端口,其中_P0_口是一个两用接口,它可分时输出外部存储器的低八位地址和传送数据,而_P1__口是一个专供用户使用的I/O口,常用于第二功能的是P3 口。
51系列单片机教程(共15章) 第8章

在大多数应用的场合,还是并行扩展占主导地位。
8.3 读写控制、地址空间分配和外部地址锁存器 8.3.1 存储器扩展的读写控制 RAM芯片:读写控制引脚,记为OE*和WE* ,与MCS-51 的RD*和WR*相连。 EPROM芯片:只能读出,故只有读出引脚,记为OE* , 该引脚与MCS-51的PSEN*相连。 8.3.2 存储器地址空间分配
口部件的扩展下一章介绍。
系统扩展结构如下图:
MCS-51单片机外部存储器结构:哈佛结构 。 MCS-96单片机的存储器结构:普林斯顿结构。 MCS-51数据存储器和程序存储器的最大扩展空间各为 64KB。 系统扩展首先要构造系统总线。 8.2 系统总线及总线构造 8.2.1 系统总线 按其功能通常把系统总线分为三组: 1.地址总线(Adress Bus,简写AB) 2.数据总线(Data Bus,简写DB) 3.控制总线(Control Bus,简写CB) 8.2.2 构造系统总线
地址锁存器一般采用74LS373,采用74LS373的地址总 线的扩展电路如下图(图8-3)。
1.以P0口作为低8位地址/数据总线。 2.以P2口的口线作高位地址线。 3.控制信号线。 *使用ALE信号作为低8位地址的锁存控制信号。 *以PSEN*信号作为扩展程序存储器的读选通信号。 *以EA*信号作为内外程序存储器的选择控制信号。 *由RD*和WR*信号作为扩展数据存储器和I/O口的 读选通、写选通信号。 尽管MCS-51有4个并行I/O口,共32条口线,但由于系 统扩展需要,真正作为数据I/O使用的,就剩下P1 口和P3口的部分口线。 8.2.3 单片机系统的串行扩展技术
8.3.3 外部地址锁存器
常用的地址锁存器芯片有: 74LS373、8282、74LS573 等。 1. 锁存器74LS373 带有三态门的8D锁存器,其引脚其内部结构如下图。
IO接口电路及其扩展

;写控制字
LD:
;最左边灯亮 ;指向B口 ;取显示数据
;查数据编码 ;写B口 ;延时
39
MB DB DB DB DB DB DB DB MOV MOV DJNZ DJNZ
A, R3
A R3, A LD 3FH 06H 5BH 4FH 66H 6DH 7DH 07H 7FH R7, #02H R6, #FFH R6, LOOP R7, DELAY
6
+5V
P0.0 P0.1 P0.2 P0.3 P0.4 P0.5 P0.6 P0.7
1Y1 1Y2 1Y3 1Y4 1Y5 1Y6 1Y7 1Y8 1G 2G 7 4 L S 2 4 4 1A1 1A2 1A3 1A4 1A5 1A6 1A7 1A8
MCS-51
P2.0 P2.1 P2.2 P2.3 P2.4 P2.5 P2.6 P2.7 RD WR
MOV DPTR, #0FEFFH MOVX A,@DPTR ;确定扩展芯片地址 ;将扩展输入口内容读入累加器A
当与74LS244相连的按键都没有按下时,输入全为 8 1,若按下某键,则所在线输入为0。
典型芯片—74LS245
9
图13-3 74LS244构成的简单输入端口(b)
10
13.1.3 简单的并行口输出
CS:片选信号线,低电平有效。
RD:读信号,控制8255A将数据或状 态信息送给CPU。 WR:写信号,控制CPU将数据或控制 信息到8255A。
A1,A2:地址线,这两个引脚上的信 号组合绝对对8255A内部的哪一个口或 寄存器进行操作。
22
8255的操作表
表13-1 8255的操作
/CS 0 0 0 0 A1 A0 00 01 10 11 WR 0 0 0 0 RD 1 1 1 1 操作 总线=>端口A 总线=>端口B 总线=>端口C 总线=>命令控制字
单片机概述

◆单板机 CPU芯片 存储器芯片、I/O接口芯片 芯片、 将CPU芯片、存储器芯片、I/O接口芯片 和简单的I/O设备 小键盘、LED显示器 设备( 显示器) 和简单的I/O设备(小键盘、LED显示器)等 装配在一块印刷电路板上, 装配在一块印刷电路板上,再配上监控程序 固化在ROM中),就构成了一台单板微型 (固化在ROM中),就构成了一台单板微型 计算机(简称单板机)。 计算机(简称单板机)。
2010-122010-12-2 12
1.3.2 单片机产品近况
◆ 80C51系列单片机产品繁多,主流地位已 80C51系列单片机产品繁多 系列单片机产品繁多,
经形成,近年来推出的与80C51兼容的主要产 80C51兼容的主要产 经形成,近年来推出的与80C51 品有: 品有:
﹡ATMEL公司融入Flash存储器技术的AT89系列; ATMEL公司融入Flash存储器技术的AT89系列; 公司融入Flash存储器技术的AT89系列 Philips公司的80C51、80C552系列 公司的80C51 系列; ﹡Philips公司的80C51、80C552系列; 华邦公司的W78C51 W77C51高速低价系列 W78C51、 高速低价系列; ﹡华邦公司的W78C51、W77C51高速低价系列; ADI公司的ADμC8xx高精度ADC系列 公司的ADμC8xx高精度ADC系列; ﹡ADI公司的ADμC8xx高精度ADC系列; LG公司的GMS90/97低压高速系列 公司的GMS90/97低压高速系列; ﹡LG公司的GMS90/97低压高速系列; Maxim公司的DS89C420高速 50MIPS)系列; 公司的DS89C420高速( ﹡Maxim公司的DS89C420高速(50MIPS)系列; Cygnal公司的C8051F系列高速SOC单片机 公司的C8051F系列高速SOC单片机。 ﹡Cygnal公司的C8051F系列高速SOC单片机。
《单片机原理与应用设计》总结

单片机原理与应用设计第一章单片机概述在一块半导体硅片上集成了中央处理单元(CPU)、存储器(RAM/ROM)、和各种I/O接口的集成电路芯片由于其具有一台微型计算机的属性,因而被称为单片微型计算机,简称单片机。
单片机主要应用于测试和控制领域。
单片机的发展历史分为四个阶段。
1974—1976年是单片机初级阶段,1976—1978年是低性能单片机阶段,1978—1983年是高性能单片机阶段,期间各公司的8位单片机迅速发展。
1983至现在是8位单片机巩固发展及16位、32位单片机推出阶段。
单片机的发展趋势将向大容量、高性能、外围电路内装化等方面发展。
单片机的发展非常迅速,其中MCS-51系列单片机应用非常广泛,而在众多的MCS-51单片机及其各种增强型、扩展型的兼容机中,AT89C5x系列,尤其是AT89C51单片机成为8位单片机的主流芯片之一。
第二章89C51单片机的硬件结构89C51单片机的功能部件组成如下:8位微处理器,128B数据存储器片外最多可外扩64KB,4KB程序存储器,中断系统包括5个中断源,片内2个16位定时器计数器且具有4种工作方式。
1个全双工串行口,具有四种工作方式。
4个8位并行I/O口及特殊功能寄存器。
89C51单片机的引脚分为电源及时钟引脚、控制引脚及I/O口。
电源为5V 供电,P0口为8位漏极开路双向I/O口,字节地址80H,位地址80H—87H。
可作为地址/数据复用口,用作与外部存储器的连接,输出低8位地址和输出/输入8位数据,也可作为通用I/O口,需外接上拉电阻。
P1、P2、P3为8位准双向I/O 口,具有内部上拉,字节地址分别为90H,A0H,B0H。
其中P0、P2口可作为系统的地址总线和数据总线口,P2口作为地址输出线使用时可输出外部存储器的的高8位地址,与P0口输出的低8位地址一起构成16位地址线。
P1是供用户使用的普通I/O口,P3口是双向功能端口,第二功能很重要。
MCS51单片机应用教程谭浩强主编清华大学第1章.ppt

(3) 单片机在实时控制中的应用 单片机被广泛地应用于各种实时控制系统中。例如 对工业生产过程中温度、湿度、流量和压力等参数 的测量和控制等。 (4) 单片机在分布式测控系统中的应用 分布式测控系统的主要特点是系统中有多个处理单 元,各自完成特定的任务,可通过网络通信相互联 系、协调工作,具有功能强、可靠性高的特点。单 片机可作为一个处理单元应用于分布式测控系统中。
(下载源码就到源码网:)
总 目 录
第8章 MCS-51单片机外部中断的应用 第9章 定时器/计数器的应用 第10章 串行口的应用 第11章 A/D、D/A转换器的应用 第12章 步进电动机的单片机控制 第13章 单片机的综合应用 第14章 单片机系统抗干扰技术
第1章 MCS-51单片机系统结构
(3) 高性能这是单片机发展所追求的一个目标, 更高的性能将会使单片机应用系统设计变得更加简 单、可靠。 (4) 低功耗这将是未来单片机发展所追求的一个 目标,随着单片机集成度的不断提高,由单片机构 成的系统体积越来越小,低功耗将是设计单片机产 品时首先考虑的指标。
1.1.3 单片机系列产品介绍
1.1 概述
单片机是大规模集成电路技术发展的产物,它将中 央处理器(CPU)、存储器(ROM/RAM)、输入 输出接口、定时器/计数器等主要计算机部件集成 在一片芯片上,因此单片机被称为单片微型计算机 (Single Chip Microcomputer)。目前单片机是计 算机家族中重要的一员。单片机配上适当的外围设 备和软件,便可构成一个单片机应用系统。单片机 具有功能强、体积小、价格低和抗干扰能力强等特 点,被广泛应用于工农业生产、国防、科研及日常 生活等各个领域。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
13.1.1 单总线扩展的典型应用-DS18B20的温度测量系统 2. DS18B20的工作时序
2. DS18B20的工作时序
13.1.1 单总线扩展的典型应用-DS18B20的温度测量系统 2. DS18B20的工作时序
03 当总线控制器把数据线从高电平拉到低电平时,读时序开始,数据
OPTION 线必须至少保持1us,然后总线被释放。DS18B20 通过拉高或拉低总 线上来传输”1”或”0”。当传输逻辑”0”结束后,总线将被释 放,通过上拉电阻回到上升沿状态。从DS18B20输出的数据在读时 序的下降沿出现后15us 内有效。因此,总线控制器在读时序开始后 必须停止把I/O口驱动为低电15us,以读取I/O口状态。
13.1.2 设计案例:单总线DS18B20温度测量系统
void main(void) {
//主函数
uchar i,temp;
delay5(1300);
while(1) {
temp=retemp();
for(i=0;i<13;i++) { //连续扫描数码管13次
out=(temp/13)&0x0f;
▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲
13.1.1 单总线扩展的典型应用-DS18B20的温度测量系统
1. 单总线温度传感器DS18B20简介
DS18B20的一种封装形式见图13-2。除DS18B20 外,在该数字温度传感器系列中还有DS1820、 DS18S20、DS1822等其他型号,工作原理与特性基本 相同。
▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲ ▲
13.1.1 单总线扩展的典型应用-DS18B20的温度测量系统 1. 单总线温度传感器DS18B20简介 信配置寄存器各位的定义如下:
其中,TM位出厂时已被写入0,用户不能改变;低5位 都为1;R1和R0用来设置分辨率。表13-1列出了R1、R0与 分辨率和转换时间的关系。用户可通过修改R1、R0位的编 码,获得合适的分辨率。
smg1=0;
smg2=1;
delay5(1000);
//延时5ms
out=(temp%13)&0x0f;
smg1=1;
smg2=0;
delay5(1000); } }
//延时5ms
}
13.1.2 设计案例:单总线DS18B20温度测量系统
图13-4 读工作时序
13.1.1 单总线扩展的典型应用-DS18B20的温度测量系统 2. DS18B20的工作时序
2. DS18B20的工作时序
13.1.1 单总线扩展的典型应用-DS18B20的温度测量系统 3. DS18B20的命令
DS18B20片内都有唯一的64位光刻ROM编码,出厂 时已刻好。它是DS18B20的地址序列码,目的是使每个 DS18B20的地址都不相同,这样就可实现在一根总线上挂 接多个DS18B20的目的。64位光刻ROM的各位定义如下:
单总线(也称1-Wire bus)由美国DALLAS公司推出的 外围串行扩展总线。只有一条数据输入/输出线DQ,总线上 所有器件都挂在DQ上,电源也通过这条信号线供给。
13.1 单总线串行扩展
图13-1 单总线芯片内部结构示意图
13.1.1 单总线扩展的典型应用-DS18B20的温度测量系统
1. 单总线温度传感器DS18B20简介
电路中74LS47是BCD-7段译码器/驱动器,用于将单 片机P0口输出欲显示的BCD码转化成相应的数字显示的段 码,并直接驱动LED数码管显示。
13.1.2 设计案例:单总线DS18B20温度测量系统
图13-5 单总线DS18B20温度测量与显示系统
13.1.2 设计案例:单总线DS18B20温度测量系统
如果主机只对一个DS18B20进行操作,就不需要读取 ROM编码以及匹配ROM编码,只要用跳过ROM(CCH) 命令,就可按表13-3执行如下温度转换和读取命令。
13.1.1 单总线扩展的典型应用-DS18B20的温度测量系统 3. DS18B20的命令
13.1.2 设计案例:单总线DS18B20温度测量系统
第13章
AT89S51单片机系统的串行扩展
单片机原理及接口技术(C51编程)(第2版)
13.1 单总线串行扩展
CONTENTS
目
13.2 SPI总线串行扩展
录
13.3 I2C总线的串行扩展
13.1 单总线串行扩展
常见的串行总线接口有:单总线、SPI(四线)串行外 设接口和I2C(二线)总线串行,以及SCI(异步三线)总线 接口。
图13-4 写工作时序
13.1.1 单总线扩展的典型应用-DS18B20的温度测量系统 2. DS18B20的工作时序
2. DS18B20的工作时序
总线拉低后等待15us,就开始由低到高发送数据。 在主机产生写时隙后,DS18B20会在其后的15~60us的 一个时间段内采样单总线(DQ)。在采样的时间窗口内, 如果总线为高电平,主机会向DS18B20写入1;如果总线为 低电平,主机会向DS18B20写入0。
DS18B20是美国DALLAS公司生产的数字温度传感 器,体积小、低功耗、抗干扰能力强。可直接将温度转 化成数字信号传送给单片机处理,因而可省去传统的信 号放大、A/D转换等外围电路。
DS18B20测量温度范围-55~+128℃,在-13~+ 85℃范围内,测量精度可达±0.5℃,非常适合于恶劣环 境的现场温度测量,也可用于各种狭小空间内设备的测 温,如环境控制、过程监测过程监测、测温类消费电子 产品以及多点温度测控系统。
注意,负号则需对采集的温度进行判断后,再予以显示。
13.1.1 单总线扩展的典型应用-DS18B20的温度测量系统 2. DS18B20的工作时序
DS18B20对工作时序要求严格,延时时间需准确,否 则容易出错。DS18B20的工作时序包括初始化时序、写时 序和读时序。
01
OPTION
图13-3 初始化时序
DS18B20每芯片都有唯一64位光刻ROM编码,它 是DS18B20地址序列码,目的使每个DS18B20地址都不 相同,这样可实现在一根总线上挂接多个DS18B20的目 的。
13.1.1 单总线扩展的典型应用-DS18B20的温度测量系统 1. 单总线温度传感器DS18B20简介
片内有9个字节的高速暂存器RAM单元,9个字节具体 分布如下:
13.1.1 单总线扩展的典型应用-DS18B20的温度测量系统 1. 单总线温度传感器DS18B20简介
当DS18B20采集的温度为-55℃时,输出为0xfc90, 由于是补码,则先将11位数据取反加1得0x0370,注意符 号位不变,也不参加运算,则
实际温度=(0x0370)/16= (0×163+3×162+7×161+0×160) /16=55℃
参考程序如下: #include "reg51.h" #include "intrins.h" #define uchar unsigned char #define uint unsigned int #define out P0 sbit smg1=out^4;//数码管位选定义 sbit smg2=out^5; sbit DQ=P3^7; void delay5(uchar); void init_ds18b20(void); uchar readbyte(void); void writebyte(uchar); uchar retemp(void);
1B20的工作时序
1.在初始化序列期间,总线控制器拉低总线并保持480us (改延时可以在480~960us之间,但需要在480us以内释放 总线)以发出一个复位脉冲。 2.然后数据线进入接收状态(等待DS18B20应答)。总线 释放后,单总线由上拉电阻拉到高电平。 3.当DS18B20探测到I/O引脚上的上升沿后,等待15-60us, 然后其以拉低总线60-240us的方式发出存在脉冲。至此, 初始化时序完毕。
▲▲▲
13.1.1 单总线扩展的典型应用-DS18B20的温度测量系统 1. 单总线温度传感器DS18B20简介
图13-2 单总线构成的分布式温度监测系统
13.1.1 单总线扩展的典型应用-DS18B20的温度测量系统 1. 单总线温度传感器DS18B20简介
图13-2为单片机与多个带有单总线接口的数字温度 传感器DS18B20芯片的分布式温度监测系统,图13-2中 多个DS18B20都挂在单片机的1根I/O口线(即DQ线) 上。单片机对每个DS18B20通过总线DQ寻址。DQ为漏 极开路,须加上拉电阻。
13.1.1 单总线扩展的典型应用-DS18B20的温度测量系统 1. 单总线温度传感器DS18B20简介
13.1.1 单总线扩展的典型应用-DS18B20的温度测量系统 1. 单总线温度传感器DS18B20简介
由表13-1,DS18B20转换时间与分辨率有关。 当设定为9位时,转换时间为93.75ms;设定13位时, 转换时间为187.5 ms;当设定11位时,转换时间为 375ms;当设定为12位时,转换时间为750ms。
13.1.1 单总线扩展的典型应用-DS18B20的温度测量系统
13.1.1 单总线扩展的典型应用-DS18B20的温度测量系统 2. DS18B20的工作时序
02 主机在写时隙向DS18B20写入数据,其中分为写”0”时隙,和
OPTION 写”1”时隙。总线主机使用写“1”时间隙向DS18B20写入逻 辑1,使用写“0”时间隙向DS18B20写入逻辑0.所有的写时隙必 须有最少60us的持续时间,相邻两个写时隙必须要有最少1us的 恢复时间。
13.1.1 单总线扩展的典型应用-DS18B20的温度测量系统