版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1单片机原理及应用单片机原理及应用 MCS-51单片机单片机I/O口结构及应用,独立式键盘和矩阵口结构及应用,独立式键盘和矩阵式键盘接口技术,式键盘接口技术,LED数码管显示器接口技术,模数换数码管显示器接口技术,模数换器(器(ADC)和数模转换器()和数模转换器(DAC)接口技术。)接口技术。7.1 I/O口直接应用口直接应用7.2 键盘和显示器接口技术键盘和显示器接口技术7.3 A/D、D/A转换接口技术转换接口技术2v直接做输出口直接做输出口 v直接做输入口直接做输入口 在没有外扩任何芯片时,在没有外扩任何芯片时,MCS-51单片机内部单片机内部并行口可以作为输出口,直接与输出外设连接。
2、并行口可以作为输出口,直接与输出外设连接。常用的输出外设是发光二极管常用的输出外设是发光二极管。 MCS-51单片机单片机内部并行口也可以作为输入口,直接与输入外设内部并行口也可以作为输入口,直接与输入外设连接,连接,常用的输入外设是开关常用的输入外设是开关。 例例1例例2例例1例例27.1 I/O口直接应用口直接应用3v直接做输出口直接做输出口P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.789C51+5V例例1:用:用89C51的的P1口驱动口驱动8个发光二极管,使个发光二极管,使8个发光二极管由左向右轮个发光二极管由左向右轮流点亮。试画出连接图,编制驱动程序。流点亮。试画
3、出连接图,编制驱动程序。解:解:1、画电路图、画电路图2、编程、编程MOV A, #0FEHUP:MOV P1, ALCALL DLRL ASJMP UPDL:MOV R7, #2DL1:MOV R6, #250DJNZ R6, $DJNZ R7, DL1RET 电阻的作用是当流过发光二极管的电流过大电阻的作用是当流过发光二极管的电流过大时,它就会被烧坏。这个电阻可以限制流过发光时,它就会被烧坏。这个电阻可以限制流过发光二极管的电流,因此这个电阻叫作限流电阻。限二极管的电流,因此这个电阻叫作限流电阻。限流电阻阻值的计算方法:流电阻阻值的计算方法:R=(5-1.75)/Id, Id 是流是流过发
4、光二极管的电流,一般从过发光二极管的电流,一般从8mA到到20mA,其值,其值越大,发光二极管越亮,但不能太大,当流过发越大,发光二极管越亮,但不能太大,当流过发光二极管的电流超过光二极管的电流超过20mA时,容易烧坏发光二极时,容易烧坏发光二极管。管。4v 如果用如果用P0口驱动发光二极管,则如何修改?口驱动发光二极管,则如何修改?v如果使如果使8个发光二极管由右向左轮流点亮,则如何修改?个发光二极管由右向左轮流点亮,则如何修改?v如果使如果使8个发光二极管闪亮,则如何修改?个发光二极管闪亮,则如何修改?v如果使如果使8个发光二极管由内向外轮流点亮,则如何修改?个发光二极管由内向外轮流点亮,
5、则如何修改?v如果使如果使8个发光二极管由右向左依次点亮,则如何修改?个发光二极管由右向左依次点亮,则如何修改?v如果使延时时间延长或缩短,会出现什么现象?如果使延时时间延长或缩短,会出现什么现象?预习实验并思考:预习实验并思考:v熟悉实验板上与发光二极管有关的电路。熟悉实验板上与发光二极管有关的电路。v编制驱动程序,实现如下操作:编制驱动程序,实现如下操作: 由左向右轮流点亮由左向右轮流点亮 由外向里轮流点亮由外向里轮流点亮 由右向左依次点亮由右向左依次点亮 闪亮闪亮51 1、直接做输出口、直接做输出口P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.789C51+5V例例2:用
6、:用8051的的P1口驱动口驱动1个数码管,制成个数码管,制成1位秒表位秒表.试画出连接图,编制驱动程序。试画出连接图,编制驱动程序。 解:解:1、画电路图、画电路图2、编程、编程思考思考abcdefgDpabcdefgDpUP0: MOVR7, #10 MOVR2, #00H MOVDPTR, #TABUP:MOVA, R2MOVCA, A+DPTRMOVP1, ALCALL D1SINCR2DJNZR7, UPSJMPUP0TAB: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,98H6v如果制成如果制成0.1S的表,则如何修改?的表,则如何修改?
7、72 2、直接做输入口、直接做输入口P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.789C51+5V例例1:用:用89C51的的P1口传送口传送8个开关状态,用个开关状态,用P2口显示口显示8个开关个开关状态,若开关合则对应灯亮,试画出连接图,编制驱动程序。状态,若开关合则对应灯亮,试画出连接图,编制驱动程序。解:解:(1)画电路图)画电路图 MOV P1, #0FFHUP: MOV A, P1 MOV P2, A SJMP UPP2.0P2.1P2.2P2.3P2.4P2.5P2.6P2.7+5V开关处的电阻称为上拉电阻上拉电阻,它的作用是当开关断开时,使P3口的电压上拉为准
8、确的高电平,避免悬空状态。 (2)编程)编程强调:强调:8051内部并行口直接作为输入口时,内部并行口直接作为输入口时,必须先将口锁存器置必须先将口锁存器置1。8P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.789C51P2.0P2.1P2.2P2.3P2.4P2.5P2.6P2.7+5V如果将发光二极管反接,则如何修改程序?如果将发光二极管反接,则如何修改程序? MOV P1, #0FFHUP: MOV A, P1 CPL A MOV P2, A SJMP UP92 2、直接做输入口、直接做输入口89C51+5V例例2:用:用8051的的P1口驱动口驱动8个发光二极管,个发光
9、二极管,P3.4接一个开关接一个开关K1,当开关按下,当开关按下时,时,8个发光二极管由左向右轮流点亮;开关断开时,个发光二极管由左向右轮流点亮;开关断开时,8个发光二极管不亮。个发光二极管不亮。试画出连接图,编制驱动程序。试画出连接图,编制驱动程序。 解:解:(1)画电路图)画电路图P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7(2)编程)编程+5VP3.4MOVP3, #0FFHUP: MOVA, #0FEHUP1:JBP3.4, UP1 MOVP1, ALCALL DLRLASJMPUP1DL:MOVR7, #2DL1: MOVR6, #250DJNZR6, $DJNZ
10、R7, DL1RET 10v在上述程序中,开关必须一直按着,灯才能轮流点亮,当开关断开时,在上述程序中,开关必须一直按着,灯才能轮流点亮,当开关断开时,停留在某个灯点亮状态。如果当开关断开时,灯全灭,如何修改程序?停留在某个灯点亮状态。如果当开关断开时,灯全灭,如何修改程序?v如果开关作为启动开关,开关按下并抬起时,灯才开始轮流点亮,则如果开关作为启动开关,开关按下并抬起时,灯才开始轮流点亮,则如何编程?如何编程?预习实验预习实验v熟悉实验板上与发光二极管和开关有关的电路。熟悉实验板上与发光二极管和开关有关的电路。v编制驱动程序,实现如下操作:编制驱动程序,实现如下操作:(1)读入)读入4个按
11、键并使对应的个按键并使对应的LED点亮。点亮。(2)K1按下按下LED每每2个为一组由右向左依次点亮。个为一组由右向左依次点亮。(3)K2按下并抬起时,按下并抬起时,LED由内向外轮流点亮。由内向外轮流点亮。P3.2P3.3P3.4P3.5+5V117.2 7.2 键盘和显示器接口技术键盘和显示器接口技术7.2.1 键盘接口技术键盘接口技术7.2.2 显示器接口技术显示器接口技术12v 一、一、键盘类型键盘类型 v 二、二、非编码键盘与单片机的接口非编码键盘与单片机的接口v 三、矩阵非编码键盘与单片机的接口三、矩阵非编码键盘与单片机的接口 键盘是单片机控制系统最常用、最简单的输键盘是单片机控制
12、系统最常用、最简单的输入设备。用户可以通过键盘输入数据或命令,实入设备。用户可以通过键盘输入数据或命令,实 现简单的人机通信。现简单的人机通信。 7.2.17.2.1 键盘接口技术键盘接口技术13一、键盘类型一、键盘类型 单片机控制系统键盘有编码键盘和非编码键盘两种。单片机控制系统键盘有编码键盘和非编码键盘两种。v1、编码键盘除了键开关外,还有专门的硬件电路,用于识、编码键盘除了键开关外,还有专门的硬件电路,用于识别闭合键并产生键代码。不仅如此,编码键盘一般还有去别闭合键并产生键代码。不仅如此,编码键盘一般还有去键抖动电路和防串键保护电路等。这种键盘的优点是所需键抖动电路和防串键保护电路等。这
13、种键盘的优点是所需软 件 简 短 , 但 硬 件 电 路 较 复 杂 , 价 格 较 贵 。软 件 简 短 , 但 硬 件 电 路 较 复 杂 , 价 格 较 贵 。 目前在单片机控制系统中使用不多。目前在单片机控制系统中使用不多。v2、非编码键盘仅由键开关组成,其它工作如键识别、键代、非编码键盘仅由键开关组成,其它工作如键识别、键代码的产生、去抖动等,不是由硬件完成而是由软件完成的。码的产生、去抖动等,不是由硬件完成而是由软件完成的。为 了 简 化 硬 件 电 路 , 降 低 成 本 , 目 前 单 片 机 控为 了 简 化 硬 件 电 路 , 降 低 成 本 , 目 前 单 片 机 控 制
14、系统中大多数采用非编码键盘。制系统中大多数采用非编码键盘。 非编码键盘的键开关可以排列成非编码键盘的键开关可以排列成线性形式线性形式或或矩阵形式矩阵形式,因此非编码键盘有线性非编码键盘和矩阵非编码键因此非编码键盘有线性非编码键盘和矩阵非编码键 盘两种。盘两种。线性形式14 单片机控制系统所用的键盘有编码键盘和非编码键盘两种。单片机控制系统所用的键盘有编码键盘和非编码键盘两种。1、编码键盘除了键开关外,还有专门的硬件电路,用于识别闭合键、编码键盘除了键开关外,还有专门的硬件电路,用于识别闭合键并产生键代码。不仅如此,编码键盘一般还有去键抖动电路和防串键并产生键代码。不仅如此,编码键盘一般还有去键
15、抖动电路和防串键保护电路等。这种键盘的优点是所需软件简短,但硬件电路较复杂,保护电路等。这种键盘的优点是所需软件简短,但硬件电路较复杂,价格较昂贵。目前在单片机控制系统中使用不多。价格较昂贵。目前在单片机控制系统中使用不多。2、非编码键盘仅由键开关组成,其它工作如键识别、键代码的产生、非编码键盘仅由键开关组成,其它工作如键识别、键代码的产生、去抖动等,不是由硬件完成而是由软件完成的。为了简化硬件电路,去抖动等,不是由硬件完成而是由软件完成的。为了简化硬件电路,降低成本,目前单片机控制系统中大多数采用非编码键盘。降低成本,目前单片机控制系统中大多数采用非编码键盘。 非编码键盘的键开关可以排列成非
16、编码键盘的键开关可以排列成线性形式线性形式或或矩阵形式矩阵形式,因此非编,因此非编码键盘有线性非编码键盘和矩阵非编码键盘两种。码键盘有线性非编码键盘和矩阵非编码键盘两种。一、键盘类型一、键盘类型矩阵形式15二、非编码键盘与单片机的接口二、非编码键盘与单片机的接口 线性非编码键盘的键开关排成一行或一列的形式,它与线性非编码键盘的键开关排成一行或一列的形式,它与单片机的接口电路如图所示:单片机的接口电路如图所示:K1K2K3K4P1.1P1.0P1.2P1.389C51+5V键处理程序如下:键处理程序如下:MOV P1, #0FFHUP1: MOV A, P1 ;读读I/O口状态口状态 ANL A
17、, #0FH ;屏蔽无用位屏蔽无用位 CJNE A, #0FH, NEXT1;有闭合键?有闭合键? SJMP UP1 NEXT1:LCALL D10ms ;延时延时10ms去抖动去抖动 MOV A, P1 ;再读再读I/O口状态口状态 ANL A, #0FH CJNE A, #0FH, NEXT2;有闭合键?有闭合键? SJMP UP1NEXT2:JB P1.0, NEXT3 ;K1按下?按下? LCALL K1 ;K1键处理程序键处理程序NEXT3:JB P1.1, NEXT4 ;K2按下?按下? LCALL K2 ;K2键处理程序键处理程序NEXT4:JB P1.2, NEXT5 ;K3按
18、下?按下? LCALL K3 ;K3键处理程序键处理程序NEXT5:JB P1.3, UP1 ;K4按下?按下? LCALL K4 ;K4键处理程序键处理程序 LJMP UP1 线性非编码键盘的工作原理:当键线性非编码键盘的工作原理:当键未被按下时,与此键相连的未被按下时,与此键相连的I/O线获得高线获得高电平;当键被按下时,与此键相连的电平;当键被按下时,与此键相连的I/O线获得低电平,单片机只要读取线获得低电平,单片机只要读取I/O口状口状态,就可以获取按键信息,识别有态,就可以获取按键信息,识别有无键按下和哪个键被按下。无键按下和哪个键被按下。16例:某单片机控制系统,例:某单片机控制系
19、统,P1口接有口接有8发光二极管,发光二极管,P3.0、P3.1、P3.2、P3.3接有接有4个开关个开关K1、K2、K3、K4,试画出接口电路,并编程使得当,试画出接口电路,并编程使得当K1按下时按下时8个发光二极管全亮;当个发光二极管全亮;当K2按下时按下时8个发光二极管闪亮;当个发光二极管闪亮;当K3按下时按下时8个发光二极管由左向右点亮;当个发光二极管由左向右点亮;当K4按下时按下时8个发光二极管全灭。个发光二极管全灭。K1K2K3K4P3.1P3.0P3.2P3.389C51+5VP1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7程程 序序17 MOV B, #01H
20、MOV P3, #0FFH MOV P1, #00H UP1: MOV A, P3 ANL A, #0FH CJNE A, #0FH, NEXT1 SJMP UP1 NEXT1: LCALL D10ms MOV A, P3 ANL A, #0FH CJNE A, #0FH, NEXT2 SJMP UP1NEXT2: JB P3.0, NEXT3 LCALL K1 NEXT3: JB P3.1, NEXT4 LCALL K2 NEXT4: JB P3.2, NEXT5 LCALL K3 NEXT5: JB P3.3, UP1 LCALL K4 LJMP UP1子程序子程序K1: MOV P1,#
21、0FFH RETK2: MOV P1,#0FFH LCALL D2S MOV P1,#00H LCALL D2S RETK3: MOV P1,B LCALL D2S MOV A,B RL A MOV B,A RETK4: MOV P1,#00H RET18三、矩阵非编码键盘与单片机的接口三、矩阵非编码键盘与单片机的接口 1、矩阵键盘结构、矩阵键盘结构 P1.3 P1.2 P1.1 P1.7 P1.6 P1.5 P1.4 P1.000H04H08H0CH各行首键值各行首键值00H01H02H03H各列序号各列序号192、矩阵键盘工作原理、矩阵键盘工作原理 v行线行线P1.4 P1.7为输入,列线
22、为输入,列线P1.0 P1.3为输出。为输出。vCPU先使第一列(先使第一列( P1.0)为)为“0”,其余行为,其余行为“1”。v读输入口读输入口P1.4 P1.7的状态,若输入缓冲器的状态全的状态,若输入缓冲器的状态全部为部为“1”,则表示所在行无键按下;若输入缓冲器不,则表示所在行无键按下;若输入缓冲器不全为全为“1”,说明所在行有键按下,说明所在行有键按下,CPU停止当前行线停止当前行线扫描,转入到列线扫描,行线扫描,转入到列线扫描,行线P1.4 P1.7为为“0”状态状态的列表示对应列有键按下。这样,行线与列数交叉键的列表示对应列有键按下。这样,行线与列数交叉键就是扫描到的按键。就是
23、扫描到的按键。203、键盘扫描方式、键盘扫描方式 v程控扫描方式:程控扫描方式:CPU从执行程序就开始了键盘的扫描,从执行程序就开始了键盘的扫描,等待来是键盘的命令。等待来是键盘的命令。v 定时扫描方式:定时扫描方式:在程序初始化时,先对定时在程序初始化时,先对定时/计数器进计数器进行设置,使其每行设置,使其每10ms中断一次,每次中断,中断一次,每次中断,CPU将去将去扫描一次键盘,若两次中断扫描到有键按下(这里考虑扫描一次键盘,若两次中断扫描到有键按下(这里考虑了消抖动),了消抖动),CPU将对键作相应的处理。将对键作相应的处理。v中断扫描方式:中断扫描方式:采用中断扫描方式必需有外部中断
24、接口,采用中断扫描方式必需有外部中断接口,当有键按下时,产生中断请请求,当有键按下时,产生中断请请求,CPU响应中断,在中响应中断,在中断服务程序扫描键盘,作相应处理。这是多任务应用系断服务程序扫描键盘,作相应处理。这是多任务应用系统常用的一种方式。统常用的一种方式。214、键盘扫描过程、键盘扫描过程 v判断键盘上有无键按下:判断键盘上有无键按下:先对行进行扫描,当扫描先对行进行扫描,当扫描到行线有键按下时,再对列线进行扫描,行线、列到行线有键按下时,再对列线进行扫描,行线、列线均为线均为“0”状态的键就是当前的按键。状态的键就是当前的按键。v去除键的抖动:去除键的抖动:当扫描到有按键时,软件
25、延时当扫描到有按键时,软件延时10ms再判该键是否仍是按键,如是则确认该键是当前的再判该键是否仍是按键,如是则确认该键是当前的按键,若不是,则把它当成是误操作处理。按键,若不是,则把它当成是误操作处理。v 取键值:取键值:根据行号、列号建立一个键值数据表,采根据行号、列号建立一个键值数据表,采用用MOVC A,A+DPTR查表指令。键值存于:查表指令。键值存于: 闭闭合键的键码值合键的键码值=以(以(TAB(数据表首地址)(数据表首地址)+行号行号+列列号)为地址单元中的内容。号)为地址单元中的内容。225、键盘扫描编程、键盘扫描编程 ORG 0000H LJMP START ORG 2000
26、HSTART:MOV P1, #0F0H ; P1口高四位为输入(可省)口高四位为输入(可省) MOV R2,#0FEH ; 扫描初值(扫描初值(P1.0=0) MOV R3,#04H ;每次列扫描数每次列扫描数 M0V R0,#00H ;列值计数器列值计数器R0清零清零 KEY: MOV A,R2 ;开始扫描开始扫描 MOV P1,A RL A MOV R2, A ;列扫描值左移一位列扫描值左移一位 MOV A,P1 ;读读P1状态状态 ANL A, #0F0H ;屏蔽低四位屏蔽低四位 下面以下面以44键盘为例来说明程序扫描键盘程序的编写:键盘为例来说明程序扫描键盘程序的编写:23 CJNE
27、 A, #0F0H, JS ;若被按键在本列,则转若被按键在本列,则转JS INC R0 ;若被按键不在本列,则加若被按键不在本列,则加1DJNZ R3,KEY ;4列未扫描完,则循环列未扫描完,则循环EXIE: MOV A, #0FFH SJMP DONE ;没有按键按下,没有按键按下,(A)=0FFHJS: JB ACC.4, JS1 ;被按键不在被按键不在L0行,则转行,则转JS1 MOV A, #00H ;被按键在被按键在L0行,则行首键号行,则行首键号00H送送A AJMP JS4JS1: JB ACC.5, JS2 ;被按键不在被按键不在L1行,则转行,则转JS2 MOV A, #
28、04H ;被按键在被按键在L1行,则行首键号行,则行首键号04H送送A AJMP JS4JS2: JB ACC.6, JS3 ;被按键不在被按键不在L2行,则转行,则转JS3 MOV A, #08H ;被按键在被按键在L2行,则行首键号行,则行首键号08H送送A AJMP JS424 JS3: JB ACC.7, JS1 ;被按键不在被按键不在L3行,则转行,则转JS4 MOV A, #0CH ;被按键在被按键在L3行,则行首键号行,则行首键号0CH送送A AJMP JS4JS4: ADD A, R0 ;(;(A)=行首键号行首键号+列值列值 MOV DPTR, #TAB MOVC A, A+
29、DPTR; 查表得键值查表得键值DONE: RETTAB: DB 01H,02H,03H,0AH DB 04H,05H,06H,0BH DB 07H,08H,09H,0CH DB 0EH,00H,0FH,0DH (不查表行不行?)(不查表行不行?)25v一、一、数码管简介数码管简介 v二、二、单个七段单个七段LED数码管的接口数码管的接口v三、三、多个七段多个七段LED数码管的接口数码管的接口 在单片机控制系统中显示器是必不可少的外设。在单片机控制系统中显示器是必不可少的外设。常用的显示器有发光二极管,数码管和液晶显示器。常用的显示器有发光二极管,数码管和液晶显示器。本节介绍数码管接口。本节介
30、绍数码管接口。7.2.2 显示器接口技术显示器接口技术26一、数码管简介一、数码管简介v组成:LED数码管由7段或8段发光二极管组成 , 在 平 面 上 排 成 8字型。v分类:分类:有共阴极和共 阳极两种。COMabcdefgDpCOMabcdefgDp显示原理:显示原理:使某些段点亮而另一些段不亮就可以显示使某些段点亮而另一些段不亮就可以显示0-9,A-F等字型。等字型。使某段点亮必须具备使某段点亮必须具备2个条件个条件:共阴极管的公共端接地和共阳极管的公共端接电源。共阴极管的公共端接地和共阳极管的公共端接电源。共阴极管的控制端接电源和共阳极管的控制端接地。共阴极管的控制端接电源和共阳极管
31、的控制端接地。共阳极共阳极 共阴极共阴极abcdefgDp27二、单个七段二、单个七段LED数码管的接口数码管的接口 v1、软译码连接法、软译码连接法v2、硬译码连接法、硬译码连接法 单个七段单个七段LED数码管与单片机的连接方法有数码管与单片机的连接方法有2种:种:281、软译码连接法、软译码连接法 在软译码连接法下,在软译码连接法下,LED数码管数码管与单片机的连接图与单片机的连接图 :abcdefgDpP1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.789C51+5VabcdefgDp(1)欲使)欲使LED数码管显示数码管显示2,试编程。,试编程。 MOV P1,#0101
32、1011B(2)编程让)编程让LED数码管显示数码管显示30H单元单元的内容(的内容(30H单元的内容在单元的内容在09之之间)。间)。 UP: MOV A,30HMOV DPTR, #TABMOVC A, A+DPTRMOV P1, ASJMP UPTAB : DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,98H共阳极共阳极LED292、硬译码连接法、硬译码连接法 在硬译码连接法下,在硬译码连接法下,LED数码管数码管与单片机的连接图与单片机的连接图 :abcdefgDpP1.0P1.1P1.2P1.3ABCD89C51 利用利用BCD码码七段码译码
33、七段码译码器实现字形到字形码的转换。器实现字形到字形码的转换。常用的常用的BCD码码七段码译码器七段码译码器有有74LS48和和74LS47。 编程让编程让LED数码管显示数码管显示30H单元的内容(单元的内容(30H单元的单元的内容在内容在09之间)。之间)。 MOV P1, 30HLTRBORBIabcdefgP1.4P1.5P1.6P1.7COMabcdefg74LS48共阴极共阴极LED+5V注意:注意:在硬译码连接法下,直接送欲显示的数即可,字形到字形码的转换在硬译码连接法下,直接送欲显示的数即可,字形到字形码的转换是用硬件实现的。是用硬件实现的。30三、多个七段三、多个七段LED数
34、码管的接口数码管的接口 多个数码管与多个数码管与CPU的连接方法有的连接方法有4种:种:v1、静态软译码连接法、静态软译码连接法v2、静态硬译码连接法、静态硬译码连接法v3、动态硬译码连接法、动态硬译码连接法v4、动态软译码连接法、动态软译码连接法311、静态软译码连接法、静态软译码连接法 在静态软译码连接法下,在静态软译码连接法下,4个个LED数码管数码管与单片机的连接图与单片机的连接图 :abcdefgDpDpP0.0P0.1P0.2P0.389C51P0.4P0.5P0.6P0.7COMabcdefg共阴极共阴极LEDDpP2.0P2.1P2.2P2.3P2.4P2.5P2.6P2.7C
35、OMabcdefgDpP1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7COMabcdefgDpP3.0P3.1P3.2P3.3P3.4P3.5P3.6P3.7COMabcdefg1、编程在、编程在4个七段个七段LED数数码管上显示码管上显示1234。 MOV P0,#06HMOV P1,#5BHMOV P2,#4FHMOV P3,#66HSJMP $32DpP0.0P0.1P0.2P0.389C51P0.4P0.5P0.6P0.7COMabcdefg共阴极共阴极LEDDpP2.0P2.1P2.2P2.3P2.4P2.5P2.6P2.7COMabcdefgDpP1.0P1.1P1
36、.2P1.3P1.4P1.5P1.6P1.7COMabcdefgDpP3.0P3.1P3.2P3.3P3.4P3.5P3.6P3.7COMabcdefg MOV DPTR, #TAB UP0: MOV A, 30H MOVC A, A+DPTR MOV P0, A MOV A, 31H MOVC A, A+DPTR MOV P1, A MOV A, 32H MOVC A, A+DPTR MOV P2, A MOV A, 33H MOVC A, A+DPTR MOV P3, A SJMP UP0TAB: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH 1、编
37、程在、编程在4个七段个七段LED数码管上显示数码管上显示30H,31H,32H,33H单元中存放的单元中存放的1位位BCD码的内容码的内容 。 33DpP0.0P0.1P0.2P0.389C51P0.4P0.5P0.6P0.7COMabcdefg共阴极共阴极LEDDpP2.0P2.1P2.2P2.3P2.4P2.5P2.6P2.7COMabcdefgDpP1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7COMabcdefgDpP3.0P3.1P3.2P3.3P3.4P3.5P3.6P3.7COMabcdefg MOV DPTR, #TAB UP0: MOV A, 30H ANL
38、A, #0FH MOVC A, A+DPTR MOV P0, A MOV A, 30H SWAP A ANL A, #0FH MOVC A, A+DPTR MOV P1, A MOV A, 31H ANL A, #0FH MOVC A, A+DPTR MOV P2, A MOV A, 31H SWAP A ANL A, #0FH MOVC A, A+DPTR MOV P3, A SJMP UP0TAB: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH2、编程在、编程在4个七段个七段LED数码管上显示数码管上显示30H,31H单元中的内容。单元中的内容。(3
39、0H,31H单元中分别存有单元中分别存有2位位BCD码)码)342、静态硬译码连接法、静态硬译码连接法在静态硬译码连接法下,在静态硬译码连接法下,4个个LED数码管与单片机连接图数码管与单片机连接图 :P2.0P2.1P2.2P2.389C51DpP2.4P2.5P2.6P2.7COMabcdefgDpP1.0P1.1P1.2P1.3COMabcdefgP1.4P1.5P1.6P1.7ABCDLTRBORBIabcdefg74LS47+5VDpCOMabcdefgABCDLTRBORBIabcdefg74LS47+5VABCDLTRBORBIabcdefg74LS47+5VDpCOMabcde
40、fgABCDLTRBORBIabcdefg74LS47+5V+5V+5V+5V+5V35P2.0P2.1P2.2P2.389C51DpP2.4P2.5P2.6P2.7COMabcdefgDpP1.0P1.1P1.2P1.3COMabcdefgP1.4P1.5P1.6P1.7ABCDLTRBORBIabcdefg74LS47+5VDpCOMabcdefgABCDLTRBORBIabcdefg74LS47+5VABCDLTRBORBIabcdefg74LS47+5VDpCOMabcdefgABCDLTRBORBIabcdefg74LS47+5V例例1:编程在:编程在4个七段个七段LED数码管上显示
41、数码管上显示30H,31H单元中的内单元中的内容。容。(30H30H,31H31H单元中分别存有单元中分别存有2 2位位BCDBCD码)码) UP: MOV P1,30H MOV P2,31H SJMP UP +5V+5V+5V+5V36例例2:编程在:编程在4个七段个七段LED数码管上显示数码管上显示30H,31H,32H,33H单元中存放的单元中存放的1位位BCD码的内容码的内容 。 UP: MOV A, 31H SWAP A ORL A, 30H MOV P1, A MOV A,33H SWAP A ORL A,32H MOV P2,A SJMP UPP2.0P2.1P2.2P2.389
42、C51DpP2.4P2.5P2.6P2.7COMabcdefgDpP1.0P1.1P1.2P1.3COMabcdefgP1.4P1.5P1.6P1.7ABCDLTRBORBIabcdefg74LS47+5VDpCOMabcdefgABCDLTRBORBIabcdefg74LS47+5VABCDLTRBORBIabcdefg74LS47+5VDpCOMabcdefgABCDLTRBORBIabcdefg74LS47+5V+5V+5V+5V+5V373、动态硬译码连接法、动态硬译码连接法v在动态硬译码连接法下,在动态硬译码连接法下,4个个LED数码管与单片机的连接图数码管与单片机的连接图 : 在动
43、态连接法下,数码管公共端均受控。驱动程序的编制充分利用了人眼的视觉滞留效应,在动态连接法下,数码管公共端均受控。驱动程序的编制充分利用了人眼的视觉滞留效应,循环扫描各数码管,使各数码管不是连续显示,但给人的视觉印象是连续地在显示。每个数码管循环扫描各数码管,使各数码管不是连续显示,但给人的视觉印象是连续地在显示。每个数码管的显示时间不得低于的显示时间不得低于1ms,不亮的时间不能超过,不亮的时间不能超过20 ms。 利用人眼的视觉滞留现象,实现让利用人眼的视觉滞留现象,实现让4个七段个七段LED数码管上不同时显示数码管上不同时显示1234,但人眼看到的效果,但人眼看到的效果却是同时显示却是同时
44、显示1234。 P2.0P2.1P2.2P2.389C51P2.4P2.5P2.6P2.7COMab cd e fgABCDLTRBORBIabcdefg74LS48+5VCOMab cd e fgCOMab cde fgCOMab cd e fg123438P2.0P2.1P2.2P2.389C51P2.4P2.5P2.6P2.7COMab cd e fgABCDLTRBORBIabcdefg74LS48+5VCOMab cd e fgCOMab cde fgCOMab cd e fg例:例: 编程在编程在4个七段个七段LED数码管上显示数码管上显示1234。1234START: MOV P
45、2, #11100001B LCALL D2MS MOV P2, #11010010B LCALL D2MS MOV P2, #10110011B LCALL D2MS MOV P2, #01110100B LCALL D2MS SJMP START39编程在编程在4个七段个七段LED数码管上显示数码管上显示30H,31H, 32H,33H单元中的内容。单元中的内容。 P2.0P2.1P2.2P2.389C51P2.4P2.5P2.6P2.7COMab cd e fgABCDLTRBORBIabcdefg74LS48+5VCOMab cd e fgCOMab cde fgCOMab cd e
46、fg1234START: MOV R0, #30H MOV R7, #4 MOV R2, #0E0H UP: MOV A, R0 ORL A, R2 MOV P2, A LCALL D2MS INC R0 MOV A, R2 RL A MOV R2, A DJNZ R7, UP SJMP START404、动态软译码连接法、动态软译码连接法在动态软译码连接法下,在动态软译码连接法下,4个个LED数码管与单片机的连接图数码管与单片机的连接图 :驱驱动动器器P2.0P2.1P2.2P2.389C51P3.0P3.1P3.2P3.3COMab cd e fgCOMab cd e fgCOMab cd
47、e fgCOMab cd e fg1234P2.4P2.5P2.6P2.741例例1: 编程在编程在4个七段个七段LED数码管上显示数码管上显示1234。驱驱动动器器P1.0P1.1P1.2P1.389C51P2.4P2.5P2.6P2.7COMab cd e fgCOMab cd e fgCOMab cde fgCOMab cd e fg1234P1.4P1.5P1.6P1.7UP: MOV P1, #06H MOV P2, #0FEH LCALL D2Ms MOV P1, #5BH MOV P2, #0FDH LCALL D2MS MOV P1, #4FH MOV P2, #0FBH LC
48、ALL D2MS MOV P1, #66H MOV P2, #0F7H LCALL D2MS SJMP UP42例例2:编程在:编程在4个七段个七段LED数码管上显示数码管上显示30H,31H,32H,33H单元中的内容。单元中的内容。驱驱动动器器P1.0P1.1P1.2P1.389C51P3.0P3.1P3.2P3.3COMab cd e fgCOMab cd e fgCOMab cde fgCOMab cd e fg1234P1.4P1.5P1.6P1.7START: MOV R0,#30H MOV R7,#4 MOV R2,#0FEH MOV DPTR,#TAB UP: MOV A,R0
49、 MOVC A,A+DPTR MOV P1,A MOV P3,R2 LCALL D2MS INC R0 MOV A,R2 RL A MOV R2,A DJNZ R7,UP SJMP START TAB : DB 3FH,06H,5BH,4FH DB 66H,6DH,7DH,07H DB 7FH,6FH返返 回回43 7.3.1 模拟接口概述模拟接口概述 7.3.2 DAC及其接口及其接口 7.3.3 ADC及其接口及其接口 7.3 A/D7.3 A/D、D/AD/A转换接口技术转换接口技术44 单片机的外部设备不一定都是数字式的,也经常会和模拟单片机的外部设备不一定都是数字式的,也经常会和模拟
50、式的设备连接。式的设备连接。 例如单片机来控制温度、压力时,温度和压力都是连续例如单片机来控制温度、压力时,温度和压力都是连续变化的,都是模拟量,在单片机与外部环境通信的时候,就变化的,都是模拟量,在单片机与外部环境通信的时候,就需要有一种转换器来把模拟信号变为数字信号,以便能够输需要有一种转换器来把模拟信号变为数字信号,以便能够输送给单片机进行处理。而单片机送出的控制信号,也必须经送给单片机进行处理。而单片机送出的控制信号,也必须经过变换器变成模拟信号,才能为控制电路所接受。这种变换过变换器变成模拟信号,才能为控制电路所接受。这种变换器就称为数模器就称为数模(D/A)转换器和模数转换器和模数
51、(A/D)转换器。转换器。 CPU与模拟外设之间的接口电路称为模拟接口。与模拟外设之间的接口电路称为模拟接口。 在这一节里将介绍单片机与在这一节里将介绍单片机与 A/D及及D/A转换器接口,以及有转换器接口,以及有关的应用。关的应用。 7.3.1 7.3.1 模拟接口概述模拟接口概述45一、一、DAC介绍介绍1DAC结构:结构:DAC芯片上集成有芯片上集成有D/A转换电路和辅助电路。转换电路和辅助电路。2DAC的参数:描述的参数:描述DA转换器性能的参数很多,主要有以下几个:转换器性能的参数很多,主要有以下几个:(1) 分辨率分辨率(Resolution) (2) 偏移误差偏移误差(Offse
52、tError) (3) 线性度线性度(Linearity) (4) 精度精度(Accuracy) (5) 转换速度转换速度(ConvemionRate) (6) 温度灵敏度温度灵敏度(TemperatureSensitivity) 7.3.2 DAC7.3.2 DAC及其接口及其接口DAC0832 集成化的集成化的D/A转换器有两类不同的芯转换器有两类不同的芯片:一类是不便和微处理器微计算机片:一类是不便和微处理器微计算机接口的,这类芯片只有数字输入、模拟接口的,这类芯片只有数字输入、模拟输出等端子,不带使能端及其他控制输出等端子,不带使能端及其他控制端。端。 另一类另一类D/A芯片是为微机系
53、统设计的,芯片是为微机系统设计的,因 而 带 有 使 能 端 等 控 制 输 入 , 以 便因 而 带 有 使 能 端 等 控 制 输 入 , 以 便和微机接口。和微机接口。 能与微机接口的能与微机接口的D/A芯片也有许多种,芯片也有许多种,其中有的是不带数据锁存器的,这类其中有的是不带数据锁存器的,这类D/A转器与微机连接时不够方便。也有的是转器与微机连接时不够方便。也有的是带有数据锁存器的,目前应用较广泛,带有数据锁存器的,目前应用较广泛,下 面 通 过下 面 通 过 典 型 芯 片 来 介 绍 单 片 机典 型 芯 片 来 介 绍 单 片 机与这类与这类DA转换器的接口。转换器的接口。4
54、6一、一、DAC介绍介绍1DAC结构:结构:DAC芯片上集成有芯片上集成有D/A转换电路和辅助电路。转换电路和辅助电路。2DAC的参数:描述的参数:描述DA转换器性能的参数很多,主要有以下几个:转换器性能的参数很多,主要有以下几个:(1) 分辨率分辨率(Resolution) (2) 偏移误差偏移误差(OffsetError) (3) 线性度线性度(Linearity) (4) 精度精度(Accuracy) (5) 转换速度转换速度(ConvemionRate) (6) 温度灵敏度温度灵敏度(TemperatureSensitivity) 分辨率反映了数字量在最低位上变化分辨率反映了数字量在最
55、低位上变化1位位时输出模拟量的最小变化。时输出模拟量的最小变化。 一般用相对值表示。对于一般用相对值表示。对于8位位D/A转换器转换器来说,分辨率为最大输出幅度的来说,分辨率为最大输出幅度的0.39,即为,即为1/256。而对于。而对于10位位D/A转换器来说,分辨率转换器来说,分辨率可以提高到可以提高到0.1,即,即1/1024。 7.3.2 DAC7.3.2 DAC及其接口及其接口47一、一、DAC介绍介绍1DAC结构:结构:DAC芯片上集成有芯片上集成有D/A转换电路和辅助电路。转换电路和辅助电路。2DAC的参数:描述的参数:描述DA转换器性能的参数很多,主要有以下几个:转换器性能的参数
56、很多,主要有以下几个:(1) 分辨率分辨率(Resolution) (2) 偏移误差偏移误差(OffsetError) (3) 线性度线性度(Linearity) (4) 精度精度(Accuracy) (5) 转换速度转换速度(ConvemionRate) (6) 温度灵敏度温度灵敏度(TemperatureSensitivity) 偏移误差是指输入数字量为偏移误差是指输入数字量为0时,输出模拟时,输出模拟量对量对0的偏移值。这种误差一般可在的偏移值。这种误差一般可在D/A转换器转换器外部用电位器调节到最小。外部用电位器调节到最小。7.3.2 DAC7.3.2 DAC及其接口及其接口48一、一
57、、DAC介绍介绍1DAC结构:结构:DAC芯片上集成有芯片上集成有D/A转换电路和辅助电路。转换电路和辅助电路。2DAC的参数:描述的参数:描述DA转换器性能的参数很多,主要有以下几个:转换器性能的参数很多,主要有以下几个:(1) 分辨率分辨率(Resolution) (2) 偏移误差偏移误差(OffsetError) (3) 线性度线性度(Linearity) (4) 精度精度(Accuracy) (5) 转换速度转换速度(ConvemionRate) (6) 温度灵敏度温度灵敏度(TemperatureSensitivity) 线性度是指线性度是指D/A转换器的实际转移特性与转换器的实际转
58、移特性与理想直线之间的最大误差,或最大偏移。一般理想直线之间的最大误差,或最大偏移。一般情况下,偏差值应小于情况下,偏差值应小于0.5LSB。这里。这里LSB是是指最低一位数字量变化所带来的幅度变化。指最低一位数字量变化所带来的幅度变化。7.3.2 DAC7.3.2 DAC及其接口及其接口49一、一、DAC介绍介绍1DAC结构:结构:DAC芯片上集成有芯片上集成有D/A转换电路和辅助电路。转换电路和辅助电路。2DAC的参数:描述的参数:描述DA转换器性能的参数很多,主要有以下几个:转换器性能的参数很多,主要有以下几个:(1) 分辨率分辨率(Resolution) (2) 偏移误差偏移误差(Of
59、fsetError) (3) 线性度线性度(Linearity) (4) 精度精度(Accuracy) (5) 转换速度转换速度(ConvemionRate) (6) 温度灵敏度温度灵敏度(TemperatureSensitivity) 精度为实际模拟输出与理想模拟输出之间精度为实际模拟输出与理想模拟输出之间的最大偏差。除了线性度不好会影响精度之外,的最大偏差。除了线性度不好会影响精度之外,参考电源的波动等因素都会影响精度。可以理参考电源的波动等因素都会影响精度。可以理解为线性度是在一定测试条件下得到的解为线性度是在一定测试条件下得到的D/A转换转换器的误差,而精度是指在实际工作时的器的误差,
60、而精度是指在实际工作时的DA转转换器的误差,一般质量的换器的误差,一般质量的D/A转换器的精度为满转换器的精度为满量程的量程的0.21LSB。7.3.2 DAC7.3.2 DAC及其接口及其接口50一、一、DAC介绍介绍1DAC结构:结构:DAC芯片上集成有芯片上集成有D/A转换电路和辅助电路。转换电路和辅助电路。2DAC的参数:描述的参数:描述DA转换器性能的参数很多,主要有以下几个:转换器性能的参数很多,主要有以下几个:(1) 分辨率分辨率(Resolution) (2) 偏移误差偏移误差(OffsetError) (3) 线性度线性度(Linearity) (4) 精度精度(Accura
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年农产品追溯体系建设与实践
- 2026年中国高温超导产业链全景图及重点企业竞争力对比
- 2026年国家人工智能产业投资基金降低AI创新创业成本申请指引
- 2026年合成生物学替代蛋白与未来食品制造
- 2026年钙钛矿发光材料效率国际领先产业化应用基础
- 2026年新污染物去除技术装备揭榜挂帅任务攻关进展
- 2026年失能失智老年人照护服务体系实施方案
- 2025年公务员(养老服务体系构建)试题及答案
- 2026江西工业职业技术学院图书管理员岗位招聘1人备考题库【含答案详解】
- 2026海南省烟草专卖局(公司)招聘34人备考题库及答案详解(夺冠系列)
- 军用靶场设计方案
- 管理会计学 第10版 课件 第3章 本-量-利分析
- Unit 3 Zhong Nanshan- Part B(小学英语教学)闽教版英语五年级下册
- 消防维保方案(消防维保服务)(技术标)
- 车辆交通危险点分析预控措施
- QC成果提高SBS防水卷材铺贴质量一次合格率
- 大舜号海难事故案例分析
- TGRM 057.1-2023 非煤岩岩爆倾向性评价规范 第1部分:室内指标测定及等级分类
- 2023年安徽新闻出版职业技术学院单招考试职业技能考试模拟试题及答案解析
- LY/T 2271-2014造林树种与造林模式数据库结构规范
- GB/T 6554-2003电气绝缘用树脂基反应复合物第2部分:试验方法电气用涂敷粉末方法
评论
0/150
提交评论