1、1,1,基础实验指导讲稿,2,2,目录-基础实验实验须知实验1 单片机实验开发系统操作实验实验2 单片机数据区传送程序设计实验3 数据排序实验实验4 查找相同数个数实验5 P1口转弯灯实验实验6 工业顺序控制,3,实验7 82C55控制交通灯实验8 A/D转换实验实验9 D/A转换实验实验10 电子时钟(定时器、中断综合实验)实验开发系统简介,4,实验须知一、实验素养和一般知识1.实验前准备工作(1) 明确实验目的、熟悉实验内容、掌握实验步骤、了解所用单片机实验开发系统及仪器设备的性能。(2) 做好实验前预习和必要的准备(先编好程序),作到有的放矢。2. 进入实验室后(1) 熟悉所用的单片机实
2、验开发系统及仪器设备,了解其外观、性能。,5,5,(2) 接线要简单、正确、明了,一个人接线,另一个人检查,经老师复查后允许后才可通电。(3) 通电瞬间,应注意仪器是否正常工作,不要只看开关,如有不正常现象,应立即断电找出原因。(4) 不允许自带光盘和软盘上机,违反者取消实验资格!(指导教师允许情况除外)。3. 实验进行时(1) 正常请况下,按规定步骤进行,读取数据,并及时纪录。(2) 各种操作要有目的进行,不可盲动。(3) 实验完后,经老师察看或签字,并把仪器、导线、工具清理、收拾完毕后,学生签到方可离开实验室。,6,6,二、实验报告内容和要求 1. 实验报告要用学校统一的纸。 2. 实验内
3、容应包括,是实验目的、设备、原理、步骤简述、原始数据、结果和分析以及程序清单等。 3. 每个实验后的思考题必须完成。 4. 对实验中发现的问题应加以讨论,并提出自己的改进意见和要求、希望等。,7,7,实验1 单片机实验开发系统操作实验一、实验目的和要求1. 掌握汇编语言的设计和调试。2. 熟悉实验开发系统调试软件的应用。二、实验设备1. Dais-80958B单片机实验开发系统 一套2. WD990微机专用电源 一台3. PC机 一套,8,三、实验线路及使用仪器1实验连接图单片机实验开发系统与PC机的连接如下图所示。,8,9,2单片机实验开发系统组成及功能单片机实验开发系统自带32个键的键盘和
4、6位LED数码管。系统有两种工作方式:独立运行的单板机工作方式以及与PC通过串行口相连的串行监控工作方式。(1)独立运行的样板机工作方式无需任何设备,利用开发系统上的单片机、监控程序、键盘和LED数码管,自构成一台样板机独立运行。(2)串行监控工作方式通过RS-232C串行口与PC机的串行口相连,以PC机为操作平台,配合系统操作软件,适用于PC机的系统编程和调试界面。,9,10,实验开发系统提供以Windows操作平台的在线仿真调试软件包。支持汇编语言(ASM51)及高级语言(PL/M51、C51)源程序级及反汇编窗口式调试环境,该仿真软件具有:编辑、汇编、连接、反汇编、开观察窗口、单点跟踪、
5、设置断点、全速/非全速运行、系统设置、程序固化等功能,具有查看SFR、内部RAM、外部RAM等选项。四、实验开发系统的使用1实验线路接好线后,检查无误在指导教师允许下才可通电。先打开电源+5V,主机板上的六位LED显示器最左边一位出现提示符“P”,表明系统正常。否则应立即关掉电源!,10,11,2主机板通电后,不允许在上面放置任何物品,特别是金属物!(因集成芯片或线路引起短路损坏设备)。五、实验步骤1接好线后,电源线红色接+5V,黑色接地。先打开电源,出现提示符“P”,表明该系统工作正常。2打开PC机电源,正常工作后,在显示器的桌面上点击快捷图标“XXXXX仿真开发系统“,进入XXXXX仿真开
6、发系统的调试平台。3. 源文件的建立和打开:(1) 选菜单栏文件/新文件或者工具栏新文件,出现源文件编辑窗口,输入程序S1。,11,12,(2) 选文件/存储(或另存),要求输入文件名,同时保存类型选*.asm。文件名按下面要求写: 1P 26 S1 一班 学号 文件名保存路经为:D盘,然后单击保存即可。(3)编译源文件,选菜单栏/编译、连接、装载或者工具栏“!”,弹出“装载完毕OK”,根据编译结果的错误提示,修正源程序S1,直至成功。此时可以关闭“编译结果”和源文件编辑窗口。,12,13,(4)出现“当前模块:1P26S1”,同时打开菜单栏视图/调试、寄存器、存储空间,然后可以选主菜单/窗口
7、或者工具栏/ XX窗口;整理平台视野。4调试和运行程序S1(1)“当前模块:1P26S1”中“小手光标”位置是PC指针所在,“寄存器”中显示当前各寄存器中的内容。“数据存储区”中地址用右键选显示地址,“输入数据”为十六进制2000,确认后调试。(2)首先单步运行,选主菜单/调试/单步运行或者选工具栏单步运(F7)。运行一个循环,观察相关的寄存器和存储区的变化。,13,14,(3)运用连续运行和设断点运行。工具栏/为连续运行,在“当前模块”中鼠标出现“小手”时点击,“红色手”即为断点位置。5. 记录下数据区2000H-20FFH中,在执行程序S1前后的内容变化。六、实验内容程序S1的参考程序如下
8、:机器代码 汇编语言 ORG 0000H7800 SE01:MOV R0,#00H ;,14,15,902000MOV DPTR,#2000H ;E4 L001:CLR A ; F0MOVX DPTR,A ;A3 INC DPTR ;08 INC R0 ;B800F9CJNE R0,#00H,L001 ;80FELOOP:SJMP LOOP ;END,15,16,七、思考题1. 程序S1的功能是什么?画出S1程序框图,并写出注释。2. 把2000H-20FFH中内容改成FF,如何修改程序S1?3. 把3000H-20FFH中内容改成AA,如何修改程序S1?4程序S1中指令:“CJNE R0,#
9、00H,L001”的作用是什么?,16,17,实验2 单片机数据区传送程序设计一、实验目的进一步掌握汇编语言程序设计和调试方法。了解单片机RAM中的数据操作。二、实验设备1单片机实验开发系统一套2WD990微机专用电源一台3PC机一套三、实验线路同实验1。,18,四、实验内容1要求:编写程序把R2、R3源RAM区首地址内的R6、R7字节数据传送到R4、R5目的地址的RAM区。2程序框图如下页,文件名为:X X X X S2 班级 学号,18,19,19,20,五、实验步骤1打开电源,PC机开机正常工作后,进仿真开发系统调试平台,编译源文件S2成功。(详细过程同实验1的步骤1-3)2在R2、R3
10、中输入源地址(例如:0000H),R4、R5中输入目的地址(例如2000H),R6、R7中输入字节数(例如:1FFFH)。查看RAM 区0000-1FFFH和2000-3FFFH内容,也可自己重新赋值。,20,21,运行程序XXXXS2,首先单步,然后用自动单步,最后用连续运行方式。记录下运行结果,检查0000-1FFFH中内容是否和2000-3FFFH内容完全一致。六、要求写出自己编写的程序,并写出原理性注释。将检查程序运行的结果,分析一下是否正确。七、思考题如果使0000-1000H中内容与2000-3000H内容完全一致,如何来改写程序?,21,22,实验3 数据排序实验一、实验目的熟悉
11、MCS-51指令系统,掌握数据排序程序的设计方法。二、实验设备微机实验开发系统一套WD990微机专用电源一台PC机一套,22,23,三、实验线路同实验1。四、实验内容1编写并调试一个排序程序,其功能为用冒泡法(参见教材第4章)将RAM中几个单字节无符号的正整数,按从小到大的次序重新排列。程序框图如下:,23,24,24,25,25,五、实验步骤1编写程序XXXX,满足程序要求,在CPU内部的RAM 50H-5AH中放入不等的数据。2运行该程序后检查50H-5AH内容是否按从小到大排列,结果记录下表中:,26,26,六、思考题修改程序S3,将50H-5AH中内容按从大到小排列,并且记录下程序运行
12、前后的结果,分析是否正确。,27,实验4 查找相同数个数一、实验目的熟悉汇编语言编程二、实验内容在2000-200FH中查出有几个字节是零,把零的个数放在2100H中。三、程序框图程序框图见下页,27,28,28,29,四、实验步骤在2000-200FH的几个单元中填入零,运行本程序后检查2100H单元中的数是否与2000-200FH中零的个数相同。五、思考题在1000-100FH的几个单元中填入08H,检查08H的个数,并填入1100H单元中,如何来修改程序?,30,实验5 P1口转弯灯实验一、实验目的 进一步了解P1口的使用,学习汇编语言编程方法与调试技巧。二、实验内容 P1.0开关接5V
13、时,右转弯灯闪亮,P1.1开关接5V时左转弯灯闪亮。 P1.0、P1.1 开关同时接5V或接地时,转弯灯均不闪亮。三、程序框图,30,31,31,32,四、实验电路,32,33,五、实验步骤P1.0接K1,P1.1接K2,P1.4-P1.7分别接L1、L5、L9、L13 ,连续运行本程序,应看到转弯灯正确闪亮,在用单步方式调试本程序时需修改延时子程序,(例如可把延时程序第一个字节改成返回指令22H),以便观察。,33,34,实验6 工业顺序控制一、实验目的掌握工业顺序控制程序的简单编程,中断的使用。二、实验预备知识在工业控制中,象冲压、注塑、轻纺、制瓶等生产过程,都是一些继续生产过程,按某种顺
14、序有规律的完成预定的动作,对这类继续生产过程的控制称顺序控制,象注塑机工艺过程大致按“合模注射延时开模产伸产退”顺序动作,用单片机最易实现。,34,35,三、实验内容AT89S51的P1.0-P1.6控制注塑机的七道工序,现模拟控制七只发光二极管的点亮,低电平有效,设定每道工序时间转换为延时,P3.4为开工启动开关,高电平动作。P3.3为外部故障输入模拟开关,低电平报警,P1.7为报警声音输出,设定6道工序只有一位输出,第七道工序三位有输出。四、程序框图,35,36,36,37,37,五、实验电路,38,六、实验步骤按实验电路图接好连线。执行程序,把K1接到高电平,观察发光二极管点亮情况,确定
15、工序执行是否正常,然后把K2置为低电平,看是否有声音报警,恢复中断1,报警停,又从刚才报警时一道程序执行下去。可以单步、单步跟踪,非全速断点、全速断点、连续执行功能调试软件,直到符合程序设计要求为止。七、思考修改程序,使每道工序中有多位输出。,39,实验7 82C55控制交通灯一、实验目的进一步了解82C55芯片的结构及编程方法,学习模拟交通控制的实现方法。二、实验内容用82C55作输出口,控制12个发光二极管燃灭,模拟交通灯管理。三、程序框图,39,40,40,41,四、实验电路,41,42,五、实验步骤 82C55的PA0-PA7、 PB0-PB3接发光二极管L15-L13、L11-L9、
16、L7-L5、L3-L1。 执行程序,初始态为四个路口的红灯全亮之后,东西路口的绿灯亮,南北路口的红灯亮,东西路口方向通车,延时一段时间后东西路口的绿灯熄灭,黄灯开始闪烁,闪烁若干次后,东西路口红灯亮,而同时南北路口的绿灯亮,南北路口方向开始通车,延时一段时间后,南北路口的绿灯熄灭,黄灯开始闪烁,闪烁若干次后,再切换到东西路口方向,之后重复以上过程。,43,实验8 A/D转换实验一、实验目的(1)掌握A/D转换与单片机接口的方法;(2)了解A/D芯片0809转换性能及编程方法;(3)通过实验了解单片机如何进行数据采集。二、实验内容利用实验系统上的0809做A/D转换器,实验系统上的电位器提供模拟
17、量输入,编制程序,将模拟量转换成数字,通过数码管显示出来。三、程序框图,43,44,44,45,四、实验电路,46,五、实验步骤把0809的0通道INT0用插针接至AIN1孔,0809的CS位接至FFE0孔,运行程序,数码管上显示0809.XX,后二位显示当前采集的电压转换的数字量,调节W1,该二位将随着电压变化而相应变化。六、思考题修改程序,能对INT0-INT7 8个通道轮流采样显示,每次显示1秒钟。,46,47,实验9 D/A转换实验一、实验目的(1) 了解D/A转换芯片与单片机的接口方法;(2) 了解D/A转换芯片0832的性能及编程方法;(3) 了解单片机系统中扩展D/A转换芯片的基
18、本方法。二、实验内容利用0832输出一个从0V开始逐渐升至5V再降至0V的电压,数码管显示送入的数字量值。三、程序框图,47,48,48,49,四、实验电路,50,五、实验步骤把0832译码线0832 CS接至FFE0孔运行程序,数码管显示不断加大或减小的数字量,用万用表测试D/A输出孔AOUT应也能测出不断加大或减小的电压值。六、思考 修改程序,使其能产生锯齿波。,50,51,实验10 电子时钟(定时器、中断综合实验)一、实验目的熟悉AT89S51定时器,串行口和中断初始化编程方法,了解定时器的应用,时钟程序的设计与调试技巧。二、实验内容编写程序,从本实验系统键盘上输入时间初值,用定时器产生
19、0.1S定时中断,对时钟计数器计数,并将数值实时地送数码管显示。三、程序框图,51,52,53,53,54,四、实验步骤连续运行程序,在键盘上输入时间初值,按执行键EXEC执行,数码管上实时显示时间值。五、思考题1电子钟走时精度和程序中哪些常数有关?2修改程序使定时器工作方式改变,调节有关参数,进一步提高精度。3设计一个倒计时时钟,如何来修改程序?,54,55,附录1 实验开发系统简介一、系统结构,55,56,二、系统连接(1) 电源线/通信线 先将多股护套线的9芯插头插到仿真实验系统的CZ1上,另一9芯插头连到PC机的串口上(COM1、COM2),然后按照电源线颜色接入微机专用电源,接入方法如下: 红 +2V 黑 地 橙 +12V 绿 -12V 黄 VPP,57,(2) 仿真电缆线 40芯仿真电缆线用于连51用户样机,一头接入51 单片机卡的CZ4插座,另一头插入用户样机单片机的位置。三、系统测试(1) 系统初始化 将电源线/通信线连好后,应仔细检查连接的正确性,然后开电源,实验开发系统显示闪动的“P”,否则按一下RESET键,如再不显示,应立即切断电源,检查后重新进行。(2) 系统功能自检按键:MOVE0STEP*3EXEC,系统应先显示“”字循环,后显示“8”循环向右移动,说明系统功能基本正常,57,