《单片机原理与应用实验指导书.doc》由会员分享,可在线阅读,更多相关《单片机原理与应用实验指导书.doc(47页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、单片机原理与应用实验指导书周国运 鲁庆宾 编计算机硬件教研室对学生实验的要求1、实验前要认真阅读实验指导书,复习与实验有关的理论知识,明确每次的实验目的,了解实验内容和方法。2、实验前要按照指导书上提供的流程图,编写实验程序。3、实验中要按照指导书中的要求进行接线和操作,经检查无误后再开电源。4、在实验中要注意观察运行现象和结果,记录下有关现象和数据,认真思考分析,尽可能自己排除各种错误,有解决不了的问题向老师提问,使每次实验都成功,并且理解掌握,能够举一反三。实验经过指导教师检查同意后,方能结束实验。5、实验后关好计算机,实验箱断电,整理好实验仪器设备及连接线等,将实验箱盖子盖好,摆放整齐,
2、并把凳子摆放整齐。6、实验结束后要认真填写实验记录,经指导教师检查后方可离开。7、每个班级都要分好卫生打扫组,实验结束后,按照实验教师的要求,打扫好地面和桌面卫生。8、认真写实验报告,按照规定格式画流程图和电路图(用尺子画),写出各个部分内容,字迹要清楚,简要、明确。9、爱护实验设备,遵守实验室规定。43- -目 录第一章 Wave单片机实验平台介绍 1 1.1 实验模块 1 1.2 数码管示意 6 1.3 字形表 6 1.4 数码管显示 7 1.5 键盘 7 1.6 键值表 8 1.7 硬件空间分配 8 1.8 插座定义 8 1.9 自由实验区 81.10 程序空间分配 9第二章 Wave单
3、片机仿真器介绍 102.1 伟福E2000系列仿真器硬件特点 102.2 伟福E2000系列仿真器软件特点 10第三章 TOP851编程器介绍 113.1 价廉物美的TOP(托普)851编程器 113.1.0 概述3.1.1 特性3.1.2 TOP851所支持器件3.2 TOP851编程器使用简介 12第四章 Wave单片机实验平台/仿真器使用介绍 134.1 伟福单片机仿真调试软件简介 134.2 软件模拟调试方法 13 4.1.1 软件模拟调试一般方法 4.1.2 定时器/计数器程序调试 4.1.3 中断程序调试 4.1.4 串行通信程序调试 4.3 用Wave单片机实验平台/仿真器实验方
4、法 16 4.3.1 硬件安装4.3.1 调试程序4.3.2 脱机运行 4.4 用仿真器对目标板的调试方法 19第五章 MCS-51系列单片机实验内容 20 第一节 “验证式”实验 20 实验一 拆字实验 20 实验二 拼字实验 21 实验三 数据区间数据传递实验 21 实验四 数据排序实验 22 实验五 查找相同数个数实验 23 实验六 无符号双字节数快速相乘实验 24 实验七 P1口亮灯实验 25 实验八 脉冲计数(定时/计数器)实验 27 实验九 8279控制键盘、显示器实验 28 实验十 RAM扩展实验 29 实验十一 A/D转换实验 29 实验十二 D/A转换实验 30 实验十三 电
5、子音响实验 31 实验十四 继电器控制实验 32 第二节 “模仿式”实验 33 实验一 P1口控制转弯灯实验 33 实验二 P3. 3口输入、P1口输出实验 34 实验三 工业顺序控制(INT0、INT1)实验 35 实验四 定时计数(定时与计数综合)实验 36 实验五 步进电机控制实验 37 实验六 双机通信实验 38 实验七 EPROM固化及脱机运行实验 39 实验八 模拟交通灯实验 40 实验九 设计时钟实验 41附录:几个延时子程序 43第一章 Wave单片机实验平台介绍Wave(伟福)实验/仿真系统采用“仿真式”设计方法,仿真与实验平台分离,采用“仿真”方式进行实验,同时,允许进行脱
6、机运行工作,所以,实验过程是与实际开发过程完全一致。仿真器使用的是双“CUP”架构方式,100%资源出让,100%实时,100%无条件硬件断点,可满足学生毕业设计,参加电子竞争,教师科研所需。1.1 实验模块1.5.0 数字键0-F为数字键。1.5.1 键 地址减一键刚在地址位上输入地址时,数据位显示数码管未发光,此时,第一次按键数据显示数码管开始显示数据,再按时,则地址值自动减1,地址值所对应的数据同时更换。1.5.2 +键 地址加1键刚在地址位上输入地址时,数据位显示数码管未发光,此时,第一次按+键数据显示数码管开始显示数据,再按时,则地址值自动加1,地址值所对应的数据同时更换。1.5.3
7、 GO 连续执行键当在数据地址位上输入地址后,再按GO键,则连续实时招待该地址开始的程序1.5.4 RST 复位键按此键,系统被初始化 1.6 键值表键号键值键号键值键号键值00170AE13108811F1B209919-23310A1A+22418B03GO21500C0B602D12扩展模块资 源 分 配27C2560000H7FFFH62648000H9FFFH82790A000H0AFFFH备用0B000H0BFFFH备用0C000H0CFFFH备用0D000H0DFFFH备用0E000H0EFFFH1.7 硬件空间分配1.10 程序空间分配G2000上的27C256EPROM芯片中
8、,包含了所有实验例程的程序代码,各程序具体占用空间如下:“验证式”实验一、 拆字程序 1000H-1013H实验二、 拼字程度 1015H-1028H实验三 数据区传递程序 1030H-1053H实验四 数据排序实验 1060H-1083H实验五 查找相同数个数 1085H-109BH实验六 无符号双字节快速乘法程序 17C0H-17EAH实验七 P1口亮灯实验 10B0H-10C6H实验八 脉冲计数(定时/计数器实验) 10D0H-11EH实验九 8279键盘、显示实验 1160H-11EFH实验十 6264RAM扩展实验 1200H-123CH实验十一 A/D0809转换实验 1240H-
9、12AFH实验十二 D/A0832转换实验 12B0H-134BH实验十三 电子音响 1350H-13BEH实验十四 继电器控制13C0H-13D8H“模仿式”实验一 P1口转变灯实验 13E0H-1460H实验二 P3.3口输入,P1口输出 1465H-149DH实验三 工业顺序控制(INT0、INT1综合实验) 14A0H-151DH实验四 脉冲计数/秒(定时/计数器综合实验) 1520H-1535H实验五 步进电机控制 15F0H-1637H实验六 双机通讯实验 甲机:163AH-1687H 乙机:1690H-1783H实验七 EPROM固化及脱机运行实验第二章 Wave单片机仿真器介绍
10、Wave伟福单片机万用实验/仿真系统所配套的实验手册,均针对由南京伟福实业有限公司所生产的GX、EX系列仿真器编写。南京伟福实业有限公司在过去的十年中先后推出了C3、C5、C6、ICEXplorer 系列仿真器。现在,伟福公司已成为Microchip、PHILIPS、TI,WINBOND等知名单片机生产商的签约合作伙伴,为他们的单片机提供仿真器支持。最新推出的“E2000”名列仿真器采用了超大规模定制芯片及专用仿真技术制造,集仿真器、逻辑分析仪、跟踪器、逻辑笔、波形发生器影子存储器、记时器、程序时效分析、数据时效分析、事件触发器于一体的通用仿真器,将仿真器软、硬件提高到前了所未有的水平。2.1
11、 伟福E2000系列仿真器硬件特点通用仿真器:配置不同的仿真头,可以仿真各种1-16位单片机。仿真CPU外置:直接位于用户板上方,提高仿真频率及降低噪声。跟踪器:32K深度,最高跟踪速度高达50ns,配合事件触发器,可以进行条件跟踪。波形发生器:8通道,每通道32K深度,20M频率。逻辑笔:测量高、低逻辑电平,脉冲记数/频率。影子存储器:在用户程序运行时,可以观察存贮器内容的变化。程序时效分析:统计每个函数,每条指令的运行时间占整个程度运行时间的百分比。数据时效分析:统计每个变量,每个存贮单元的访问次数占整个程序访问次数的百分比。硬件测试仪:可以静态地设置数据总线,地址总线及ALE、PSEN、
12、BHE、RD、WR等总线控制信号。事件触发器:可以设置地址条件、数据条件、控制条件、外部信号条件以及他们的任意组合。事件触发器可以控制仿真器的运行,同时也可以控制逻辑分析仪、跟踪器的起停。无条件硬点:可在任意地点、设置任意个硬件断点,并支持地址、数据、外部信号、事件等断点,程序区间断点及其各种方式组合。计时器:统计指定程序的运行时间,精度为50ns支持仿真CPU种类多:Intel公司的MCS-51系列、96系列;华邦公司的51系列;ATMEL公司的51系列;Microchip公司的PCI系列;Philips 公司的51系列等。2.2 伟福E2000系列仿真器软件特点Windows及DOS双平台
13、。中/英文在线可选。真正的集成调试环境,集成编辑器、编译器、调试器、逻辑分析仪、跟踪器、逻辑笔、波形发生器、影子存储器、记时器、程序时效分析、数据时效分析、硬件测试仪、事件触发器。所有类型的单片机集成在一个调试环境下,支持汇编ASM、C、PL/M源程序混合调试,错误指令定位支持软件的模拟调试支持项目管理支持点屏功能:直接点击屏幕就可以观察变理的值功能强大的观察窗口,支持所有的类型,树状结构第三章 TOP851编程器介绍编程器也称烧录器,是用来把调试成功的目标代码固化入程序存储器之中(EPROM,E2PROM、FLASH ROM、串行ROM)或CPU之中或PLD之中去的工具。是进行脱机运行实验所
14、必备的实验工具。由于南京伟福实业有限公司的仿真所产生的目标代码其格式可为BIN(二进制)。HEK(十六进制)、OBJ三种格式,所以,可以选用市场上任一款编程器。3.1 价廉物美的TOP(托普)851编程器3.1.0 概述MEP100是利用计算机串行口进行读写的编程器,可编程各家半导体公司的多种类型芯片,包括EPROM、EEPROM、FLASH、PLD、单片机等,具有高性能、低价格,可靠性高以及软件界面友好,简单易学,便于携带的特点。3.1.1 特性可与IBMPC及兼容机的标准串行口连接,适用于台式机、便携机、笔记本等各种机型,进行高速数据通讯。体积小、重量轻、便于携带,适用工业现场及固定场合使
15、用。可编程EPROM、EEPROM、MCU、PLD、FLASH、单片机等多种器件。软件用户界面简单易学,使用方便,具有下拉菜单、弹出式对话窗口、热健命令、在线帮助等功能,支持鼠标。支持多种文件格式,包括BIN、HEX和JED等。3.1.2 TOP851所支持器件EPROM:各厂家的27系列EEPROM:各厂家的28、29、39、48、49系列Flash和EEPROMMPU/MCU:51系列(Intel、Philips、Atmel、LG、Winbond)PLD:16v8x、20v8x、22v10A等。3.2 TOP851编程器使用简介TOP851具有Windows的界面,如下图所示。其使用方法为
16、:1、连好电源和通信线;2、将烧录的芯片正确插入烧录器的插座中,并锁紧;3、运行TOP51程序,进入TOP851操作界面;4、装载所要烧录的目标文件;5、选择器件类型;6、选择器件厂家;7、双击选择器件型号;8、点击“读写”按钮,打开烧录操作界面;9、进行烧录,其次序为:擦除、检查空片、写器件、校对、加密等。10、退出。第四章 Wave单片机实验平台/仿真器使用介绍以下叙述都以读者对仿真器、编程器、实验平台的基本操作熟知为前提。Wave伟福单片机万用实验/仿真系统具有三种使用方法:(1)无实验仪,无仿真器,仅在系统机上采用软件模拟方法进行仿真实验;(2)无系统机,仅用实验仪进行实验;(3)用系
17、统机,仿真器,ICESlabG2000实验平台进行仿真和实验。无论实验还是开发,这三者的有机结合都会有利于提高效率。4.1 伟福单片机仿真调试软件简介伟福单片机仿真调试软件,其功能、操作界面基本上与富兰克林仿真软件相同,具有多种语言(M51汇编语言、C语言、PLM语言等)的编辑、编译、连接、软硬件仿真运行调试等功能,并且文件较小(仅2.2M,富兰克林仿真软件约13M),操作方便。是目前最好的单片机仿真软件之一。 对于伟福仿真调试软件的操作界面如上图所示。其调试操作一般有三种操作方式:(1)使用快捷键;(2)点击工具栏中的按钮;(3)通过菜单操作。工具栏的按钮自左向右分别为:仿真器设置、打开文件
18、、保存文件、新建文件、打开项目、保存所有文件、编译、剪切、复制、粘贴、复位(程序计数器PC、各特殊功能寄存器为初始状态)、暂停、全速运行、跟踪(进入子程序)、单步(一步执行完所调用的子程序)、项目窗口、信息窗口、观察窗口、CPU窗口、数据窗口等。4.2 软件模拟器的调试方法及实例4.2.0 使用Wave软件模拟器调试的方法(1)运行Wave仿真系统,进入软件模拟调试环境;(2)选择使用伟福软件模拟器:其方法为点击仿真器设置按钮,在仿真器页中选择(此设置为缺省方式);(3)新建文件编辑源程序,需要时可建立项目;(4)编译程序;(5)若有错误,要进行修改再编译;(6)运行调试程序,可采用跟踪、单步
19、、设置断点(运行到断点停止)、全速运行到光标处、实时运行等方法;(7)从引脚输入信号,如脉冲、高电平或低电平等(如下面的定时/计数器程序调试、中断程序调试);(8)观察数据,如下面的定时/计数器程序调试中的观察或查看数据区。具体参考下面几例。4.2.1 顺序程序调试4.2.1.0 运行Wave程序,进入WINDOWS调试环境,其界面如上图所示。4.2.1.1 用鼠标左键点击打开文件按钮或按F3键,即进入编辑环境,请输入以下程序ORG 0000HMOV RO,#00HMOVX DPTR,#2000H ;空间首地址送DPTRLOOP: MOV A ,#00hMOV DPTR,A ;清零INC DP
20、TR ;DPTR加1INC RO ;字节数加1CJNE RO,#00H,LOOP ;连续清256个字节LOOP1: SJMP LOOP1此程序是把2000-20FFH空间清零。(QINGLING.ASM)4.2.1.2 保存文件:用鼠标左键点击保存文件按钮或按F2键,输入文件名将程序存盘。4.2.1.3 编译文件:用鼠标左键点击编译按钮或按9键进入编辑状态。弹出一个“信息窗口”:“行:3错,错误331:操作数错”,“行:5错,错误331:操作数错”,这说明程序中某语句有提示中的错误,用鼠标左键双击,则光标定位于出错处。把3行的“MOVX”改成“MOV”、把5行的“MOV”改成“MOVX”后,便
21、可编译通过。4.2.1.4 调试运行:用鼠标左键点击单步或跟踪按钮,或者按F8、F7键,可以看到R0、DPTR随着单步运行而变化,同时,光带亦在移动。4.2.1.5 观察数据:观察片外数据区XDATA数据的变化,方法为打开窗口数据窗口XDATA,拉竖向滚动条,使得XDATA窗口从2000H开始显示。继续按F8或F7键,观察变化。把光标移至LOOP1语句上,按F4键,再来观察XDATA窗口。4.2.2 定时/计数器程序调试4.2.20 输入以下程序:ORG 0000hMOV TMOD,#05hMOV THO,#00HMOV TLO,#00HSETB TRO SETB EA SJMP $该程序:计
22、数器0对外部输入的脉冲计数。(TOTEST. ASM)4.1.2.1 编辑观察项:用鼠标左键点击执行编辑观察项,或按Ctrl+F5键打开编辑观察项窗口,分别输入:TH0,1和TL0,1作为观察项。4.1.2.2 全速运行:按Ctrl+F9,实时运行程序。4.1.2.3 从TO脚输入脉冲:用鼠标左键点击CPU窗口按钮,点击P3、再点击T0,连续输入若干组0、1(0使TO脚置低电平,1使TO脚置高电平,便对T0输入了脉冲),记下重复组数。4.1.2.4 观察T0计数值:按Ctrl+C键中止程序运行,用鼠标左键点击观察窗口按钮,检查观察项的值是否与4.1.1.3中重复组数一样。4.2.3 中断程序调
23、试4.2.3.0 输入以下程序:ORG 0000HSJMP MAINORG 0013HLJMP INTER1MAIN: ORL IE,#84HORL IP,#04HSJMP $INTER1: NOPNOPRETI该程序:中断1,为电平触发。(INT1TEST. ASM)4.2.3.1 设置断点:把光标移至INTER1处,按Ctrl+8键设置断点,或者用鼠标左键双击标号INTER1的左边设置断点。4.2.3.2 全速运行:按Ctrl+F9键,实时运行程序。4.2.3.3 执行中断服务程序:用鼠标左键点击CPU窗口,点击P3、再点击INT1,输入0,使INT1脚为低电平,响应中断,执行中断服务程序
24、,运行到断点停止运行,表明中断被响应。4.2.4 串行口程序调试4.2.4.0 输入以下程序ORG 0000HMOV TMOD,#20HMOV TH1,#0F3HMOV TL1,#OF3HMOV SCON ,#50HMOV PCON,#80HSETB TR1SETB EXOSETB EADD: JBC RI,DD1SJMP DDDD1: MOV A,SBUFNOPNOPSJMP $该程序:串行通信,接收。(COMTEST.ASM)4.2.4.1 使程序全速运行到光标处:把光标移至SJMP $ 处,按F4键。4.2.4.2 模拟串行输入:用鼠标左键点击CPU窗口,点击SBUF,输入3C;再点击S
25、CON、RI,输入1,则程序运行到光标处停止,已经将SBUF中的数据传送给了累加器A。4.2.4.3 查看累加器A中的数据:用鼠标左键点击CPU窗口进行观察,累加器A中值是否为3CH。4.3 利用Wave实验平台、仿真器连接PC机实验方法这才是完整的实验方法,它能满足不同要求的实验方案和方式。4.3.0 硬件安装4.3.0.0 连接CPR板(LAB)在实验仪的右下角有三个插座,是用来安装实验CPU板(LAB)的。(1)选用LAB8051CPU板:仿真调试MCS-51系列实验。其上的跳线器是用来选择CPR为8031/32或是89C51/52的(2)选用LAB80C196CPR板,仿真调试MCS-
26、96系列实验。4.3.0.1 仿真器与实验平台、实验/仿真系统与PC机的连接(1)将仿真头(POD)用随机配带的扁平电缆与仿真器连接起来。(2)将LAB板的CPU芯片拔下,将仿真头(POD)插入LAB板的CPU座子中,仿真头上的CPU方向应与LAB板的CPU座子一致。(3)用随机配带的DC电源线,从实验平台接线柱上提供电源给仿真器,白线接红柱(+5V)、黑线接黑柱(地)。(4)用随机配带的串口通讯电缆,将仿真器与计算机连接起来,串口1、串口2均可。但务必注意所选用的串口未被设置成它用,如Modem口、鼠标口。(5)应特别注意的是,在仿真器与计算机连接串口电缆时,两台机器必须都关断电流。否则易损
27、坏计算机和仿真器。(6)用随机配带的交流电源线,给实验平台提供220V交流电源。打开交流电源开关,电流指示灯应亮,否则请速关闭电源,查清故障原因。4.3.0.2 实验连线按实验方案,用随机的实验连线插入孔后,轻轻转动一下锁紧接触,保证良好接触。拆线时,应先回转一下,不要硬拨,以免损坏线路板。不管是拆线还是插线,都应在断电的情况下进行。图 4.04.3.0.3 仿真状态(工作模式)的概念模式名称模 式 作 用模式1程序和数据存储器均使用仿真器上的模式2程序存储器使用仿真器上的,数据存储器使用用户板上的模式3程序使用用户板上的,数据存储器使用仿真器上的模式4程序和数据存储器均使用用户板上的,只用仿
28、真器上的CPU4.2.0.4 仿真状态(工作模式)的设定方法图 4.1 图 4.2点击仿真器仿真器设置出现“仿真器实验”窗,如图4.1,点击此窗中仿真器,依次选择仿真器的G6W,选择仿真头为POD-51,选择CPU为8031,然后点击此窗中仿真头设置,弹出“仿真器设置”窗,如图4.2,程序存储器的设置和外部数据存储器设置的组合即四种工作模式。4.3.1 调试程序使用实验平台、仿真器调试程序的方法步骤,与使用软件模拟器调试程序的方法步骤相似,不同之处仅在于(2)和(7),现将(2)和(7)列出,其余参见4.2.0。(2)设置仿真器:其方法为点击仿真器设置按钮进入仿真器设置界面;在仿真器页去掉使用
29、伟福软件模拟器之前的“”,在选择仿真器栏选择“G6W”,在选择仿真头栏选择“POD-51”,在选择CPU栏选择8031;在通信设置页选择串口号,测试串行口,通过后点击好键,进入对硬件仿真器初始化状态,如连接成功,则出现“产品机号”窗。(7)对实验平台进行操作:如对4.1.2 定时/计数器程序调试,从引脚输入脉冲、高电平或低电平信号等。4.3.2 脱机运行(以MCS-51为例)4.3.2.0 利用27C256(EPROM)(1)请另备27C256芯片,不要直接使用监控27C256.(2)连接好编程器,选择厂家、型号,调入目标文件,进行固化操作。(3)把固化好的芯片插入实验平台EPROM插座,把L
30、AB板上CPU插上.(4)监控上面的跳线器一同跳到27C256边.(5)加电,观察运行情况。4.3.2.1 利用29C256(FLASHOM)直接使用仿真器“调入目标文件”之功能. (1)把监控上面的跳线器,跳至29C256边,插上29C256芯片。(2)点击仿真器仿真头设置窗,把程序存贮器设置在用户板上。图4.2.(3)点击文件调入目标文件窗,输入文件名,选择格式后点击调入键。(4)把仿真头从LAB板上拔掉,插入CPU芯片。加电,运行。4.4 用仿真器对目标板的调试方法(1)将仿真头(POD)用随机配带的仿真电缆与仿真器连接起来。(2)将目标板的CPU芯片拔下,将仿真头(POD)插入目标板的
31、CPU座子中,仿真头上的CPU方向应与目标板的CPU座子一致。仿真器与目标板、PC机的连接关系如图4.3所示。图 4. 3Wave仿真器(3)仿真头上的电源是有仿真器提供的。由于仿真头上的CPU芯片的电源脚与它所对应的插针并不相连,当用户将仿真头插在用户板上时,仿真头上的电源与用户板的电源两者是不相通的。(4)仿真器的电源与用户板的电源两者电压相差5%,否则易损坏仿真器和用户板。(5)仿真器使用单5V电源,要求电流大于1A。建议使用专用微机电源。随机的AC电源线:白线接+5V,黑线接地。第五章 MCS51系列单片机实验内容实验八 模拟交通灯实验1、实验目的(1)掌握MCS-51系列单片机P1、
32、P3口的应用及编程方法;(2)掌握用软件定时的方法; 4个路口红灯全亮主程序开始绿灯亮延时2、4路口绿灯亮1、3路口绿灯灭黄灯闪烁8次红灯亮1、3路口绿灯亮绿灯亮延时切换间隔延时切换间隔延时2、4路口绿灯灭黄灯闪烁8次红灯亮(3)掌握循环结构程序的编写方法 ;(4)掌握子程序的编写与调用方法。2、实验内容 用软件程序定时,通过单片机的P1、P3口按位输出0或者1,控制红、绿、黄三色发光二极管按照交通灯的规律亮或者灭。3、程序框图 主程序框图如右图所示,延时子程序的框图从略。“绿灯亮延时”子程序时间较长,约40秒;“切换间隔延时”子程序时间较短,约5秒;“黄灯闪烁间隔”更短,约1秒,需要编写这三
33、段延时子程序。4、接线方法将P1.0P1.5与1、2路口的红、黄、绿发光二极管相连接,将P3.0P5.5与3、4路口的红、黄、绿发光二极管相连接即可。 5、实验方法 可以先不考虑黄灯闪烁,调试程序,使红绿灯能够按规律循环亮,然后再加上黄灯闪烁,调试时“绿灯亮延时”时间可以短一些,如10秒。 6、思考问题 如果用数码管显示时间,应该怎么做? 说明: 若无黄色发光二极管,可以用绿灯代替黄灯闪烁。实验九 设计时钟实验1、实验目的 (1)掌握MCS-51系列单片机定时器/计数器的功能及应用,掌握初始化编程方法;(2)掌握中断服务程序的编程方法, 理解中断服务程序的执行过程;(3)掌握条件判断语句的应用
34、。2、实验内容 用定时器0或定时器1定时并产生中断,用一些存储单元存放时间的时、分、秒,并将这些时间送数码管显示。3、程序流程图堆栈、定时器初始化主程序开始开 中 断开定时器30H-34H单元赋初值10-30H,0-31H-34H8279初始化调用显示子程序定时器赋初值定时器中断程序入口10-30H, 31H+1-31H30H-1=0 ?Y31H=10 ?Y0-31H, 32H+1-32H32H=6 ?Y0-32H, 33H+1-33H33H=10 ?Y0-33H, 34H+1-34H34H=6 ?Y0-34HNNNNN恢复现场返 回保护现场4、实验方法 用定时器0或定时器1定时0.1S产生中
35、断,中断10次为1S,用30H34H单元分别存放中断的次数、秒个位数、秒十位数、分钟个位数和分钟十位数,并将这些时间不断送数码管显示。5、思考问题 如果要显示小时,应该怎么做?6、提示(1)控制数码管的芯片8279的初始化程序段(写在主程序中指定的位置):MOV DPTR,#0A001H ;8279初始化,0A001H为命令口地址,0A000H;为送显示数据的口地址。特征位在D7D6D5=*MOV A,#00H ;方式命令字(特征位000):显示8个字符,;左端送入;2键封锁,编码扫描MOVX DPTR,AMOV A,#32H ;分频命令字(特征位001):系数为18MOVX DPTR,AMO
36、V A,#0dfh ;清除命令字(特征位110):清除显示RAM和;键盘缓冲区MOVX DPTR,ASTART:MOVX A,DPTR ;读取状态字:最高位为1,不能向显示RAM中写JB ACC.7,START(2)将下面这段送数据给数码管显示的子程序写到自己的程序中:DISPLAY:MOV 40H,#80H ;显示子程序,#83H为命令字 MOV R0,#31H ;显示的数放在34H-31H中(34H中为最高位)MOV R7,#04HDISP1:MOV DPTR,#0A001HMOV A,40HMOVX DPTR,A ;写显示RAM命令字(为83H),特征位;100,地址从03H开始(先送的
37、为低位数)MOV A,R0 ;向小的方向改变(地址不自动改变)MOV DPTR,#DUANMA ;DUANMA为数字09的段码首地址MOVC A,A+DPTRMOV DPTR,#0A000HMOVX DPTR,AINC R0DEC 40HDJNZ R7,DISP1RET(3)共阳数码管显示0-F的段码表:DUANMA:DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H ;其数码管为共阳的DB 80H, 90H,88H,83H,0C6H,0A1H,86H,8EH附录:几个延时子程序(设时钟频率为6MHz)POP06HPOP05HRET四、延时30s子程序DELAY30S:PUSH05HPUSH06HPUSH07HMOVR7,#150DELAY30S1:MOVR6,#200DELAY30S2:MOVR5,#250DJNZR5,$DJNZR6,DELAY30S2DJNZR7,DELAY30S1POP07HPOP06HPOP05HRET一、延时1ms子程序DELAY1MS:PUSH05
限制150内