710 likes | 856 Views
单片机原理与开发. 实验教学. 单片机原理与接口技术课程是一门技术性和实践性很强的学科,必须通过一系列的软硬件实验理论联系实际才能学好学懂,取得良好的教学效果。. 基于清华大学 TSC-51/98 实验开发系统,精心设计和整理了 8 个实验,从软件到硬件,从基本操作到综合实验,贯穿了整个单片机的教学过程,覆盖了单片机应用的许多方面。. 实验二 简单I/O实验. 实验一 伟福软件的使用. 实验三 定时中断实验. 实验四 8255A 并行口实验. 实验五 键盘与 LED 数码. 实验六 AD 转换实验. 实验七 DA 转换实验. 实验八 电子音响实验.
E N D
单片机原理与开发 实验教学
单片机原理与接口技术课程是一门技术性和实践性很强的学科,必须通过一系列的软硬件实验理论联系实际才能学好学懂,取得良好的教学效果。单片机原理与接口技术课程是一门技术性和实践性很强的学科,必须通过一系列的软硬件实验理论联系实际才能学好学懂,取得良好的教学效果。 • 基于清华大学TSC-51/98实验开发系统,精心设计和整理了8个实验,从软件到硬件,从基本操作到综合实验,贯穿了整个单片机的教学过程,覆盖了单片机应用的许多方面。
实验二 简单I/O实验 实验一 伟福软件的使用 实验三 定时中断实验 实验四 8255A并行口实验 实验五 键盘与LED数码 实验六 AD转换实验 实验七 DA转换实验 实验八 电子音响实验
实验一 伟福软件的使用 一、实验目的 四、实验内容 二、实验说明 五、实验报告要求 三、实验仪器
一、实验目的 1.了解并熟悉伟福软件wave6000的使用 2.学会在伟福软件环境下编写、修改、调试、和运行程序
二、实验说明 • 伟福软件集成了编辑器、编译器、调试器,源程序编辑、编译、下载、调试全部可以在一个环境下完成。且伟福的多种仿真器,及所支持各种CPU仿真全部集成在一个环境下。可仿真MCS51系列,MCS196系列等等。 • 伟福软件支持多语言多模块混合调试,支持ASM(汇编)、PLM、C语言多模块混合源程序调试,在线直接修改、编译、调试源程序。如果源程序有错,可直接定位错误所在行。
三、实验仪器和条件 • 计算机 • 伟福软件(WAVE6000)
四、实验内容 1 伟福软件的下载和安装 • 伟福软件的最新版本可以从伟福公司的网站上下载,其网址为http://www.wave-cn.com。本实验以WAVE6000版本为使用软件,其它实验亦如此。 • 在安装过程中,如果用户没有指定安装目录,安装完成后,会在C:盘建立一个C:\WAVE6000目录,结构如下:
2 建立新程序 • 选择菜单[文件|关闭项目]; • 选择菜单[文件|新建文件],或点新建文件按钮 • 编辑程序,如下图
3 保存程序 • 选择菜单[文件|保存文件]或点保存文件按钮,默认的文件保存位置为C:\WAVE6000\SAMPLES,再给出文件名,例如MY1.ASM。 • 注意:汇编源程序的文件名扩展名必须是ASM。
4 仿真器设置 • 选择菜单[设置|仿真器设置],对开对话框。伟福软件有两种工作方式:硬件仿真和软件仿真。本实验只使用软件部分,故使用软件仿真工作方式。具体设置如下图所示。
5 编译程序 • 选择菜单[项目|编译]或按编译按钮,进行编译。如果程序完全正确,编译成功,就会生成目标文件MY1.ASM,如下图所示。如果在编译过程中出现有错,可以在信息窗口中显示出来,双击错误信息,可以在源程序中定位所在行。纠正错误后,再次编译直到没有错误。
6 执行程序 • 选择[执行|跟踪]或按跟踪按钮进行单步跟踪调试程序。 • 单步跟踪就是一条一条地执行指令,若有子程序调用,也会跟踪到子程序中去。可以观察到程序每步执行的结果,“→”所指的就是下次将要执行的程序指令。“O”代表此行为可执行指令 • 也可以选择全速执行,所有指令一次性全执行完。程序运行的结果可以在全类窗口中观看到。
五、实验报告要求 • 1、实验目的 • 2、记录下实验中出错的地方和原理,并如何解决 • 3、写清调试相关程序的过程和步骤,并详细说明结果的正确性 • 4、总结实验中需要注意的地方和伟福软件使用说明
实验二 简单I/O实验 一、实验目的 四、实验内容 二、实验箱说明 五、参考电路图 六、实验说明 三、实验仪器 七、实验报告要求
一、实验目的 1.学习P1口的使用方法,能正确读取P1口的状态 2.学习延时子程序的编写和使用 3.熟悉单片机仿真实验硬件环境,并能正确使用单片机实验箱
二、实验箱说明 • 清华大学TSC-51/98实验箱内部集成大部分在实验中可能用到的芯片和器件等,比如键盘、LED数据显示块、各种驱动芯片、译码器等等。该实验台上同时插有8031微处理器和8098微处理器,使用开关可以转换为8051实验开发系统或8098实验开发系统。默认情况下,作为8051实验开发系统。 • 同时为了使该实验箱应用最大化,在开发实验箱时已经将有关地址进行了分配,这一点需要特别注意。
三、实验仪器 • 计算机 • 连接导线 • TSC-51/98实验箱及仿真头、仿真器等 • 伟福软件(WAVE6000)
四、实验内容 • 1.P1口做输出口,接八只发光二极管,编写程序,使发光二极管循环点亮; • 2.P1口做输入口,接八个扭子开关,以实验台上74LS273做输出口,编写程序读取开关状态,将此状态在发光二极管上显示出来 • 3.P1口作为输入输出口。P1.0、P1.1接K1、K2;P1.2、P1.3接发光二极管L1、L2;P1.4、P1.5接L5、L6。K1作为左转开关,K2作为右转开关。L1、L2作为左转弯灯,L5、L6作为右转弯灯。要求编写程序实现如下功能:向上打K1时左转弯灯以一定频率闪烁,打K2时右转弯灯以一定频率闪烁,K1、K2同时向上或向下,发光二极管灭。
六、实验说明 • 本实验相对较为简单,主要任务就是熟悉硬件环境,并为后继实验打下基础。通过本实验,学习实验箱的使用方法,并尽可能地了解并熟悉实验箱的结构和布局。 • 本实验主要是针对P1口的读写操作,共有三个实验题目。题目1中,P1口只作为一般的输出口,驱动LED发光闪烁;题目2中,P1口只作为一般的输入口,P1口连接扭子开关,其状态或为高电平,或为低电平;题目3中,P1口既作为一般的输出口,同时也作为一般的输入口,是题目1和2的综合。 • P1口为准双向口,作为一般的输入口时,为了准备读入其输入状态,在读入之前必要先向P1口写“1”。 • 在题目1中,我们要求8个LED发光二极管轮流点亮,间隔1秒。延时问题,既可以用软件的方法解决,可以用定时器进行处理。这里我们暂且使用软件延时。
七、实验报告要求 • 1、实验目的 • 2、记录下实验中出错的地方和原理,并如何解决 • 3、说明硬件如何连接,仿真头、仿真器等使用时需注意哪些方面 • 4、给出实验中编写的汇编程序,程序流程图等等 • 5、记录下实验结果,并说明你在程序中如何实现的
实验三 定时器实验 一、实验目的 四、参考电路图 二、实验仪表 五、实验说明 六、实验报告要求 三、实验内容
一、实验目的 • 1.学习并掌握8031内部定时/计数器的使用和编程方法 • 2.掌握中断处理程序的编程方法
二、实验仪表 • 计算机 • 连接导线 • TSC-51/98实验箱及仿真头、仿真器等 • 伟福软件(WAVE6000)
三、实验内容 • 1:利用定时器T0,实现与P1口相连接的8个LED发光二极管依次循环点亮,间隔1秒。即用定时器实现实验二的题目1。 • 2:由8031内部定时器1,按方式1工作,即作为十六位定时器使用。每100ms定时器T1溢出中断一次。P1口分别接八个发光二极管。要求编写程序模拟一时序控制装置。开机后第一秒钟L1、L3亮,第二秒L2、L4亮,第三秒L5、L7亮,第四秒L6、L8亮,第五秒L1L3L5L7亮,第六秒L2L4L6L8亮,第七秒八个二极管全亮,第八秒全灭,然后又重头开始,一直循环下去。
五、实验说明 • 这个实验有两个题,题目1实验二已经做过了,在实验二中延时是应用指令完成的,而在本实验中,我们要求延时由定时器完成。单片机8051中有两个定时计数器T0和T1,根据寄存器TMOD设置的不同,两个定时器可以分别工作于定时和计数方式。处于定时方式时,每过一个机器周期,计数寄存器TH0TL0会自动增1,直到溢出,置中断标志位向CPU申请中断;处于计数方式时,引脚T0上每一个下降沿,计数寄存器TH0TL0会自动增1。 • 题目2相对较为复杂,不是简单地让8个LED循环点亮,而是具有任意性。解决这个问题的办法之一就是查表。这里设置了两个软件计数器,一个用于定时R0,一个用于LED点亮的一个轮回R1。题目2的参考程序在程序处理上,与题目1有所不同。题目1是在中断子程序中进行判断中断次数,以及输出点亮LED;而题目2参考程序中,中断子程序较为简单,只完成定时中断的功能,而中断次数判断以及输出点亮LED功能全放在了主程序中。两个程序的编程风格,值得学习和借鉴。
六、实验报告要求 • 1、实验目的 • 2、记录下实验中出错的地方和原理,并如何解决 • 3、掌握8031定时器的使用方法,详细阐述之 • 4、给出实验中编写的汇编程序,程序流程图等等 • 5、记录下实验结果,并分析之
实验四 8255A并行口 一、实验目的 四、参考电路图 二、实验仪表 五、实验说明 三、实验内容 六、实验报告要求
一、实验目的 • 1.掌握单片机系统中扩展外围芯片的方法 • 2.了解8255芯片的结构及编程方法 • 3.掌握通过8255并行口读取开关数据的方法 • 4.学习模拟交通信号灯控制的实现方法
二、实验仪器和条件 • 计算机 • 连接导线 • TSC-51/98实验箱及仿真头、仿真器等 • 伟福软件(WAVE6000)
三、实验内容 • 1.利用8255,实现实验二题目2的内容。这里8255PB通道作为开关量输入口,PA通道作为输出口。读取PB口开关量的状态,然后在PA口的LED上显示出来。 • 2.利用8255的PAPB口外接12个LED,控制其亮灭,模拟交通信号灯管理
五、实验说明 • 题目1相对简单,关键是注意设置好8255各端口的工作模式。 • 要完成题目2,首先必须了解交通路灯的亮灭规律。设有一十字路口2、4为南北方向,1、3为东西方向,初始态为四个路口的红灯全亮。之后,东西路口的绿灯亮,南北路口的红灯亮,东西方向通车,延迟一段时间后,东西路口的绿灯熄灭,黄灯开始闪烁。闪烁若干次后,东西路口的红灯亮,而同时南北路口的绿灯亮,南北方向开始通车。延时一段时间后,南北方向路口的绿灯熄灭,黄灯开始闪烁。闪若干次后,再切换到东西方向。之后,重复上述过程。
六、实验报告要求 • 1、实验目的 • 2、记录下实验中出错的地方,并说明如何解决的 • 3、详细说明十字路口的交通规则,并给出交通灯亮灭的时序图 • 4、给出实验中编写的汇编程序,程序流程图等等 • 5、记录下实验结果,并分析之
实验五 键盘与LED数码显示 一、实验目的 四、参考电路图 二、实验仪表 五、实验说明 三、实验内容 六、实验报告要求
一、实验目的 • 1.掌握键盘电路的工作原理,并掌握键盘接口电路的扫描编程方法 • 2.掌握七段数码显示的原理 • 3.掌握用一个段锁存器一个位锁存器同时显示多位数字的技术
二、实验仪器和条件 • 计算机 • 连接导线 • TSC-51/98实验箱及仿真头、仿真器等 • 伟福软件(WAVE6000)
三、实验内容 • 利用实验台上提供的8255可编程并行接口芯片和键盘矩阵,编写程序,做到在键盘上每按一个数字键(0~F),用发光二极管将该代码显示出来。
五、实验说明 • 本实验包括两个方面的内容:一个内容是按键的扫描与识别,是单片机系统的输入部分;另一个内容是LED数码显示,是单片机系统的输出部分。两部分内容都非常重要,应用也非常广泛。 • 键盘部分,关键是正确理解键盘电路,并正确编写出键盘扫描与识别的程序。键盘电路部分是行列式键盘,并且使用反转法识别按键。此行列式键盘分为三行八列,行线与8255A的PB0、PB1和PB2相连接;列线与8255A的PA0、PA1、…、PA7相连接。
LED数码显示部分,同样关键是正确理解LED数码显示电路,并正确编写出LED数码显示的程序。LED数码显示电路包括了六个LED显示块,这里其实只需一块。六个LED显示块段选码并联在一起,并与7407的输出相连,7407的输入来自于数据总线;位选码与75452相连,75452的输入同样来自于数据总线;但两数据总线的口地址不一样。LED数码显示部分,同样关键是正确理解LED数码显示电路,并正确编写出LED数码显示的程序。LED数码显示电路包括了六个LED显示块,这里其实只需一块。六个LED显示块段选码并联在一起,并与7407的输出相连,7407的输入来自于数据总线;位选码与75452相连,75452的输入同样来自于数据总线;但两数据总线的口地址不一样。
六、实验报告要求 • 1、实验目的 • 2、记录下实验中出错的地方,并说明解决方法 • 3、详细阐述键盘扫描的工作原理和LED显示的工作原理 • 4、给出实验中编写的汇编程序,程序流程图等等 • 5、记录下实验结果,并分析之
实验六 AD转换实验 一、实验目的 四、参考电路图 二、实验仪表 五、实验说明 三、实验内容 六、实验报告要求
一、实验目的 • 1.掌握A/D转换与单片机的接口方法 • 2.掌握A/D芯片ADC0809转换性能及编程方法 • 3.通过实验了解单片机如何进行数据采集的
二、实验仪器和条件 • 计算机 • 连接导线 • TSC-51/98实验箱及仿真头、仿真器等 • 伟福软件(WAVE6000)