单片机原理及应用第8章课件.ppt

上传人(卖家):三亚风情 文档编号:3502559 上传时间:2022-09-08 格式:PPT 页数:36 大小:1.97MB
下载 相关 举报
单片机原理及应用第8章课件.ppt_第1页
第1页 / 共36页
单片机原理及应用第8章课件.ppt_第2页
第2页 / 共36页
单片机原理及应用第8章课件.ppt_第3页
第3页 / 共36页
单片机原理及应用第8章课件.ppt_第4页
第4页 / 共36页
单片机原理及应用第8章课件.ppt_第5页
第5页 / 共36页
点击查看更多>>
资源描述

1、本章要点n 单片机应用系统的外围功能器件品种繁多,而且新的器件不断推出,不可能也不必要一一加以介绍,本章只选择一些典型的常用芯片,介绍它的使用方法。根据这些方法就能了解功能器件的使用要点。n 使用功能器件主要是掌握它与单片机的连接,使用前的初始化,以及程序的编制方法,本章着重介绍串行扩展的程序的编制。第一节 概述 1.功能器件是指一些为实现某种功能而设计的专用集成电路。2.功能器件是为了解决片内功能的不足,需要在片外扩展,以满足单片机应用系统的功能需要。3.功能器件的扩展方法有并行扩展或串行扩展两种。串行扩展由于所占用的I/O口少。特别适用于小控制系统。并行扩展与串行扩展并行扩展与串行扩展 并

2、行扩展法并行扩展法 并行扩展法是利用单片机的三总线(地址总线、数据总线和控制总线)与被扩展的器件相连接,采用并行扩展法的接口应与存储器统一编址。串行扩展法串行扩展法 串行扩展法有一线制、两线制和三线制等方式,其中两线制的 总线、三线制的SPI总线比较常用。返回本章首页CI2第二节 实时时钟 配置实时时钟,便于按时钟所提供的时间按时操作或按时记录。时钟芯片有并行和串行两种形式。一、并行时钟一、并行时钟 1.并行时钟硬件结构并行时钟硬件结构 常用并行实时时钟芯片有 MC146818、DS12887、DS12887A等。它们都具有完备的时钟、闹钟及万年历功能。能实时提供年、月、日、时、分、秒,且可任

3、意选12或24小时制。图为DS12887A的引脚图。2.2.DS12887ADS12887A与单片机的连接方法与单片机的连接方法5V3.3.、DS12887ADS12887A内存单元的地址分配内存单元的地址分配4.4.DS12887DS12887中寄存器中寄存器A A各位定义各位定义5.DS128875.DS12887中寄存器中寄存器B B各位定义各位定义D7D6D5D4D3D2D1D0UIPDV2DV1DV0 RS3 RS2 RS1 RS0D7D6D5D4D3D2D1D0SETPIEAIE UIE SQWEDM24/12DSE6.6.DS12887DS12887中寄存器中寄存器C C各位定义

4、各位定义7.7.DS12887DS12887中寄存器中寄存器D D各位定义各位定义D7D6D5D4D3D2D1D0IRQFPFAFUF0000D7D6D5D4D3D2D1D0VRT00000008.8.初始化及写入程序初始化及写入程序 初始化是指时钟使用前根据使用要求对寄存器A、B进行设置,以决定时钟、日历的工作制式。以及通过程序对时钟、日历和闹钟当前时间进行初始化,俗称拨钟,以便将实时的秒、分、时和年、月、日值赋予00H-09H的10个时间单元。以DS12887A为例。初始化部分初始化部分 MOV DPTR,#7F0AH ;7F0AH为寄存器A的地 MOV A,#70H ;设置分频器复位 M

5、OVX DPTR,A INC DPTR ;指向寄存器B的地址 MOV A,#82H ;SET=1钟暂停,选BCD24小时制 MOV X,DPTR,A 设置当前时间设置当前时间MOVDPL,#00H;指向秒单元地址MOVA,#00H;拨成0秒MOVXDPTR,AMOVDPL,#02H;指向分单元地址MOVA,#00H;拨成0分MOVXDPTR,AMOVDPL,#04H;指向时单元地址MOVA,#08H;拨成8时MOVXDPTR,A MOVDPL,#07H;指向日单元地址MOVA,#15H;15日MOVXDPTR,A INCDPTR;指向月单元地址MOVA,#12H;12月MOVXDPTR,AIN

6、CDPTR;指向年单元地址MOVA,#05H;2005年MOVXDPTR,A 读出当前时间读出当前时间INCINCDPTRDPTR ;寄存器寄存器A A的地址的地址MOVMOVA,#20HA,#20H ;频率为频率为32.768kHz32.768kHzMOVXMOVXDPTR,ADPTR,AINCINCDPTRDPTR ;寄存器寄存器B B的地址的地址MOVMOVA,#02HA,#02H;SET=0;SET=0MOVXMOVXDPTR,ADPTR,A;开始走钟开始走钟;以下为实时时间读出程序,读出值存入以下为实时时间读出程序,读出值存入31H-33H31H-33HMOVMOVDPTRDPTR,

7、#7F0AH#7F0AH;指向寄存器指向寄存器A A的地址的地址TEST:TEST:MOVMOVA,DPTRA,DPTRJBJBACC.7,TESTACC.7,TEST MOV MOVDPL,#00HDPL,#00H;取秒取秒MOVXMOVXA,DPTRA,DPTRMOVMOV31H,A31H,AMOVMOVDPL,#02HDPL,#02H;取分取分MOVXMOVXA,DPTRA,DPTRMOVMOV32H,A32H,AMOVMOVDPL,#04HDPL,#04H;取小时取小时MOVXMOVXA,DPTRA,DPTRMOVMOV33H,A33H,A 二、串行实时时钟二、串行实时时钟 1.1.硬

8、件结构硬件结构 串行时钟只需要一根数据线来读出或写入数据。DS1302的引脚图DS1302与单片机的连接 2.2.读写程序读写程序 DS1302的读写步骤 1将RST置高。2写入带有地址和命令的控制字,控制字共8位。D7必须为1,如果为0,不能写入。D6即RAM/CK,0为存取日历时钟数据,1表示存取RAM数据。D5至D1用来表示操作地址,7个日历、时钟寄存器的地址分别为0000000110。D0即RD/WR,若为0表示进行写操作,为1表示读操作。控制字的值所代表的意义,可参看教材表8-6。D7D6D5D4D3D2D1D01RAM/CKA4A3A2A1A0RD/WR 3 3输入或输出数据时序输

9、入或输出数据时序 输入时,跟在写地址和命令控制字节的8个SCLK周期之后,在下8个SCLK周期的上升沿写入数据字节。数据输入从低到高,要求采用BCD码。输出读操作时,跟随在输入写地址和命令控制字节的8个SCLK周期之后,在下8个SCLK周期的下降沿读出该地址数据。数据读出同样从低到高。传送结束,将RST置低,所有传送停止。返回本章首页串行实时时钟的串行实时时钟的读写子程序(读写时可通过读写子程序(读写时可通过调用子程序)调用子程序)(1 1)启动子程序)启动子程序 ST02:CLR P1.0;SCLK置低 CLR P1.2 NOP SETB P1.2;RST置高 RET(2 2)写入控制字为)

10、写入控制字为BFBF的子程序的子程序 WR02:MOV R7,#08H MOV A,#0BFH ;一次性写入控制字0BFH LP02:CLR P1.0;SCLK置低 RRC A MOV P1.1,C;写入一位 NOP SETB P1.0;SCLK置高 NOP DJNZ R7,LP02;未写完8位继续 RET(3.)串行实时时钟)串行实时时钟读出一个字节子程序读出一个字节子程序RD02:MOVR7,#08HLP021:CLRP1.0;SCLK置低 NOP MOV C,P1.1;读出一位 RRC A SETBP1.0;SCLK置高 NOP DJNZR7,LP021;未读完8位继续 RET (4 4

11、)结束子程序)结束子程序STOP:CLR P1.2;置高 NOP RET (5 5)读出秒分时日月周日年全部)读出秒分时日月周日年全部7 7个字节个字节LCALLST02 ;启动MOVA,#0BFHLCALLWR02 ;写入控制字MOVR6,#07HMOVR0,#49H LP:LCALLRD02;读入一个字节MOVR0,AINCR0DJNZR6,LP;7个字节未完继续LCALLSTOPRET第三节 串行方式的LED显示器接口 最简单的LED显示器串行扩展方式是利用单片机的串口,通过串入并出移位寄存器,接到LED数码显示器如图所示。现在则多采用串行接口芯片如PS7219。一、一、PS7219PS

12、7219的引脚及与单片机的连接的引脚及与单片机的连接 二、二、PS7219PS7219内部的控制寄存器内部的控制寄存器 PS7219内部的控制寄存器共15个,其中01H08HC存放待显示的数据,09H 0FH为控制寄存器。1 1译码方式寄存器(地址译码方式寄存器(地址0909H H)共8位,每一位与一个LED数码显示器相对应。每个数码显示器可设为BCD译码(置“1”);或设为非代码操作(置“0”),此时存于01H到 08H寄存器的显示数据必须是七段码。2 2亮度寄存器(地址亮度寄存器(地址0 0AHAH)此寄存器的值对应数码管的亮度,它们之间的关系见教材的表8-8。3 3数据个数扫描界线寄存器

13、(地址数据个数扫描界线寄存器(地址0 0BHBH)用来设置所要接的数码管个数,最多接8个 4 4掉电控制寄存器(地址掉电控制寄存器(地址0 0CHCH)置“1”时,芯片正常工作;置“0”时,工作于掉电模式,显示器不显示,但数据保持不变。5 5闪烁控制寄存器(地址闪烁控制寄存器(地址0 0DHDH)共8位,某位置“1”时,该位对应的数码显示器处于闪烁状态,否则为正常显示。6 6显示测试寄存器(地址显示测试寄存器(地址0 0FHFH)控制两种工作方式,当其D0位为“0”,选择工作于正常显示方式;D0位为“1”,选择工作于测试显示方式。三、三、PS7219PS7219中串行数据传送中串行数据传送 显

14、示时必须分别向以上15个寄存器传送数据,每一个寄存器都要送16位数据,数据的格式如表:数据从PS7219 的DIN端输入,高位在前低位在后,可以用一个子程序来完成。传送数据的通信时序见图8-10。D15 D14D13 D12 D11D10 D9D8D7D6D5D4D3D2 D1D0目标寄存器地址传送给寄存器的数据无关位 四、显示程序举例四、显示程序举例 设连接如上图,要显示的8个数码以BCD码的形式存放在单片机的50H-53H存储单元,试编程显示。主程序主程序:ADDR DATA 30H;30H存地址DBUF DATA 31H;31H存数据LOAD EQU P2.0DO EQU P2.1CLK

15、 EQU P2.2 ORG 0000H AJMP MAIN ORG 0100H MAIN:ACALL DISPLAY ACALL MS300 AJMP MAIN 显示子程序显示子程序:在显示子程序中应先送控制字在显示子程序中应先送控制字DISPLAY:CLR LOADMOV ADDR,#09H;设置译码方式MOV DBUF,#0FFHACALL SEND16MOV ADDR,#0AH;设置亮度MOV DBUF,#0FHACALL SEND16MOV ADDR,#0BH;设置扫描界限MOV DBUF,#07HACALL SEND16MOV ADDR,#0CH;设置掉电控制MOV DBUF,#01

16、HACALL SEND16 MOV ADDR,#0FH;设置是否测试 MOV DBUF,#00HACALL SEND16 ACALL MS2续上续上MOVR7,#04H ;控制字后送4个字节MOVR1,#50HMOVADDR,#00H ;待显示数码送的01H-08HDIS1:INCADDR ;取PS7219地址MOVA,R1ANLA,#0F0HSWAPAMOVDBUF,AACALLSEND16INCADDRMOVA,R1ANLA,#0FHMOVDBUF,AACALLSEND16INCR1DJNZR7,DIS1RET串行通信子程序串行通信子程序:入口条件为发送数据存于DBUF,发送到PS7219

17、的地址存于ADDRMOVR7,#08H;送数据MOVA,DBUFSEND2:SETBCLKRLCAMOVDO,CACALLMS2CLRCLKDJNZR7,SEND2SETBLOADSETBCLKACALLMS2RETSEND16:CLRLOAD NOP MOVR7,#08H;送地址 MOVA,ADDRSEND1:SETBCLK RLCA MOVDO,C ACALL MS2 CLR CLK ACALL MS2 DJNZ R7,SEND1 ACALL MS2延时子程序延时子程序:MS2:MOV R2,#20HM1:DJNZ R2,M1 RETMS300:MOV R3,#20HM2:MOV R2,#

18、0FHM3:DJNZ R2,M3 DJNZ R3,M2 RET返回本章首页第四节 A/D与D/A转换接口一、一、A/DA/D转换接口转换接口ADC0809ADC0809 1.ADC0809 1.ADC0809 结构结构 ADC0809是采用逐次逼近式并行输电的芯片。通过逐次比较使产生出的等价数字量,最接近于被测模拟量,转换速度高。2.2.ADC0809ADC0809的引脚的引脚 从引脚D0D7输出的数字量与输入电压及参考电压有关。为输入模拟电压为参考电压与其中inrefrefrefrefrefinVVVVVVVN 256)()()()()(3.3.ADC0809ADC0809应用实例应用实例

19、利用单片机测量炉温的系统如图所示,设温度传感器信号接IN3,利用单片机P2,7作为地址线选的高位线,将0809的地址定在7FF0H7FF7H.。4.测量炉温的测量炉温的A/D转换程序转换程序 MOV R0,#30H MOV DPTR,#7FF3H MOVX DPTR,A SETB P1.0LOOP:JNB P1.0,LOOP ;读转换结束标志 MOVX A,DPTR ;EOC为1读结果 MOV R0,A RET 二、二、8 8位串行位串行D/AD/A转换接口转换接口MAX518MAX518 1.1.内部结构内部结构 MAX518是两线串行接口的8位数-模转换器,两路转换器可分别将两个8位数字量

20、转换为两路模拟量从OUT0、OUT1输出。电源电压同时作为参考电压,当数字量为FFH时,最大的输出模拟电压约等于5V。2.MAX5182.MAX518与与AT89C51AT89C51的连接的连接与引脚排列与引脚排列P1.6和P1.7分别虚拟SCL和SDA引脚排列连接电路 3.3.MAX518MAX518转换程序转换程序 按上图连接,若置AD1=0、AD0=0写操作时的从地址为58H。若R2=0、R1=0、R0=0、RST=0、PD=0、A0=0、00H则写操作指令为00H,也可用01H。A/D转换子程序如下。入口条件:待转换模拟量的数据置于B。MOV A,B ;取出数据LCALL WRB ;完

21、成转换LCALL STOPRETADDR EQU 58H ;从地址值DAC0 EQU 00H ;写操作指令OUT0:LCALL START MOV A,#ADDR LCALL WRB MOV A,#DAC0 LCALL WRB返回本章首页程序中使用的子程序START、STOP、WRB参看第四章第五节第五节 看门狗电路 看门狗定时器简称看门狗或WDT(Wacth Dog Timer),它是监视程序正常运行的一种定时器。一、内置看门狗电路一、内置看门狗电路 某些单片机片内有内置看门狗电路,例如AT89S51,但使用必须先激活,或称为初始化。激活方法是向地址为0A6H的看门狗寄存器WDTRST写入1EH,再写入0E1H。激活以后,看门狗即开始计时,在正常程序中,要在16ms内插入一个喂狗指令。喂狗指令也是向地址0A6H寄存器写入1EH,再写入0E1H。如果程序跑飞,到时没有喂狗指令,系统就会马上复位。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(单片机原理及应用第8章课件.ppt)为本站会员(三亚风情)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|