10610单片机实验指导书学生用书.docx

上传人:b****5 文档编号:14882501 上传时间:2023-06-28 格式:DOCX 页数:33 大小:193.12KB
下载 相关 举报
10610单片机实验指导书学生用书.docx_第1页
第1页 / 共33页
10610单片机实验指导书学生用书.docx_第2页
第2页 / 共33页
10610单片机实验指导书学生用书.docx_第3页
第3页 / 共33页
10610单片机实验指导书学生用书.docx_第4页
第4页 / 共33页
10610单片机实验指导书学生用书.docx_第5页
第5页 / 共33页
10610单片机实验指导书学生用书.docx_第6页
第6页 / 共33页
10610单片机实验指导书学生用书.docx_第7页
第7页 / 共33页
10610单片机实验指导书学生用书.docx_第8页
第8页 / 共33页
10610单片机实验指导书学生用书.docx_第9页
第9页 / 共33页
10610单片机实验指导书学生用书.docx_第10页
第10页 / 共33页
10610单片机实验指导书学生用书.docx_第11页
第11页 / 共33页
10610单片机实验指导书学生用书.docx_第12页
第12页 / 共33页
10610单片机实验指导书学生用书.docx_第13页
第13页 / 共33页
10610单片机实验指导书学生用书.docx_第14页
第14页 / 共33页
10610单片机实验指导书学生用书.docx_第15页
第15页 / 共33页
10610单片机实验指导书学生用书.docx_第16页
第16页 / 共33页
10610单片机实验指导书学生用书.docx_第17页
第17页 / 共33页
10610单片机实验指导书学生用书.docx_第18页
第18页 / 共33页
10610单片机实验指导书学生用书.docx_第19页
第19页 / 共33页
10610单片机实验指导书学生用书.docx_第20页
第20页 / 共33页
亲,该文档总共33页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

10610单片机实验指导书学生用书.docx

《10610单片机实验指导书学生用书.docx》由会员分享,可在线阅读,更多相关《10610单片机实验指导书学生用书.docx(33页珍藏版)》请在冰点文库上搜索。

10610单片机实验指导书学生用书.docx

10610单片机实验指导书学生用书

《单片机原理与设计》

实验指导书(学生用)

 

编写:

罗志会

 

 

三峡大学物理实验示范中心

2010年5月

目录

 

实验注意事项5

实验一开发环境与最小系统实验6

实验二程序调试与分析8

实验三中断程序的调试与设计12

实验四计时秒表的设计14

实验五串行口通信实验17

实验六IO口的扩展实验20

实验七LED数码管与液晶显示实验22

实验八D/A和A/D转换实验25

 

实验时间安排:

周四,2学时;分三组,每组20人,

地点:

理科楼L-2613

实验注意事项

一、实验素养和一般知识

1.实验前准备工作

(1)明确实验目的、熟悉实验内容、实验步骤、了解所用单片机实验开发系统及硬件的结构、仪器设备的性能。

(2)通过收集相关的资料,设计自己的实验项目,作好必要的准备,做到有的放矢。

(3)做好实验前的预习工作,设计硬件接口电路,编写好设计程序并通过编译检查。

2.进入实验室后

(1)熟悉所用的单片机实验开发系统及接口芯片,了解其外观、性能。

(2)通电瞬间,应注意仪器是否正常工作,不要只看开关,如有不正常现象,应立即断电找出原因。

(3)不允许自带光盘、软盘、闪存等存储媒质上机,违反者取消实验资格!

(指导教师允许情况除外)。

(4)故意或违规操作造成器件或仪器损坏,照价赔偿。

(AT89C51芯片赔偿10RMB,单片机开发板150RMB)

3.实验进行时

(1)正常情况下,按规定步骤进行,读取数据,并及时记录。

(2)各种操作要有目的进行,不可盲动与本次实验无关的器件。

(3)接线要简单、正确、明了,红、绿、蓝、黑引线遵照电路连接规范进行硬件接线,经老师复查后允许后才可通电。

(4)实验过程中,如有烧焦味、芯片不工作等异常现象,立即断电并向指导老师反映;实验演示完成,开发板要及时断电。

(5)实验完后,经老师确认,并把仪器、导线、工具清理、收拾完毕,仿真器归原位,将芯片交回老师查收,签到后方可离开实验室。

二、实验报告内容和要求

1.实验报告要用学校统一的纸张,进实验时交老师查阅。

2.实验报告内容包括实验目的、实验报告要求、实验思考、结果和分析等。

3.对实验中发现的问题应加以讨论,并提出自己的改进意见和要求等。

实验一开发环境与最小系统实验

一、实验目的和要求

1.熟悉89C51单片机KeilC实验开发环境,仪器的操作和使用。

2.Proteus仿真软件的基本操作。

3.掌握AT89C51最小系统概念及硬件搭接的方法。

二、实验设备

1.TPC-2003通用微机实验系统一套

2.AT89C51开发板与仿真器一套

3.TOP851通用编程器一台

4.PC机一套

5.VW_G集成调试环境软件一套

6.KeilC开发环境一套

三、实验内容

1、KeilC环境软件的使用(见KeilC中嵌入ASM.软件的操作过程)

由老师演示,学生按步骤操作,下载实现软硬件仿真。

关键操作提示:

1)、P工程—N新建工程—命名“XXX”—ATMEL(89C51)-确认

2)、F新建文件—编写汇编代码—F另存为---“XXX.ASM”

3)、单击选中“SourceGroup”—右击“增加文件到组‘SourceGroup1’”—文件类型“ASM源文件“—选中需添加文件ADD—关闭对话框。

4)、单击选中“Target1”--右击“目标Target1属性”—目标:

晶振频率11.0592;代码存储器大小:

紧凑的---输出:

生成HEX文件---调试:

U使用(设置COM1,38400,ok;其他所有选项打“√”).

2、KeilC平台下51仿真开发板的使用(读写单片机)

1)将仿真器紧固在开发板的DIP40插座上,缺口朝向手柄,锁紧仿真器。

2)将串口线公头接在PC的RS-232输出口,将随机所配的5V直流电源插头插到右侧电源插座上,电源指示灯亮;

3)运行“KeilC.exe”,初始化串口设置;

4)在主菜单中选择“文件”,装载.ASM的源文件;

(细节请阅读“如何把ASM文件导入KEIL中仿真”或KeilC编译环境软件用户手册)

5).将仿真器锁紧在开发板上,插上串口线和电源,按照“如何进行仿真操作”的视频,利用KeilC51软件环境,在线仿真调试“跑马灯”程序。

3、Proteus搭建单片机的最小系统。

1).根据最小系统的概念,利用Proteus设置单片机的最小系统。

2).利用单片机的P1引脚和LED(注意比较直接驱动和增强驱动的效果),在仿真平台上自己搭接“跑马灯”电路,如图1-1。

3).在Proteus软件中嵌入“.HEX”的源文件,运行仿真观察跑马灯的运行效果。

图1-1跑马灯电路

四、实验报告要求

1)什么是单片机的最小系统?

采用Proteus搭建AT89C51单片机最小系统的电路原理图!

2)简单描述运用KeilC软件与开发板联合仿真的过程。

五、参考程序

“跑马灯”的实验参考程序

142XXXS1学员的参考程序如下:

ORG0090H

MOVP1,#00H;送P1口

MOVA,#01H;L1发光二极管点亮

LO33:

MOVP1,A

LCALLSE19;延时

RLA;左位移

SJMPLO33;循环

ORG07A0H

SE19:

MOVR6,#0A0H

LO36:

MOVR7,#0FFH

LO35:

NOP

NOP

DJNZR7,LO35;

DJNZR6,LO36;延时

RET

END

实验二程序调试与分析

一、实验目的和要求

1.熟悉89C51指令系统,程序的基本结构。

2.掌握VW、KeilC编译环境,汇编语言程序的设计、编译、调试。

二、实验设备

1.TPC-2003通用微机实验系统一套

2.AT89C51开发板与仿真器一套

3.PC机一套

4.VW_G集成调试环境软件一套

5.KeilC开发环境一套

三、实验内容

1、VW环境软件的使用

1).PC机上电正常工作后,在显示器的桌面上点击快捷图标“VW集成调试软件绿色版”,进入“伟福V系列:

软件模拟器”工作环境,并在跳出的对话框中选择“√好”,进入软件调试平台。

2).仿真器设置:

选菜单栏仿真器/仿真器设置,将跳出对话框中的“选择厂商”、“选择CPU”、“选择晶振频率”项目设置成:

Atmel、AT89C51、12000000后,选“√好”关闭对话框。

3).源文件的建立和打开:

(参照VW.PDF文档“快速入门”,P39~43)

(a)选菜单栏文件/新文件或者工具栏新文件,出现源文件编辑窗口,输入程序文本。

(b)选菜单栏文件/保存文件(或另存为),要求输入文件名,同时保存类型选*.ASM。

实验分为A、B、C三组,先在F盘下建“单片机学生实验”文件夹,再在该文件夹中建立“A组”、“B组”、“C组”共三个子文件夹,各组同学按组保存自己的文件。

文件名按下面要求写,如:

146XXXS1

学号文件名

保存路径为:

F:

\单片机学生实验\A组,然后单击保存即可。

(c)编译源文件,选菜单栏项目/编译,根据编译结果的错误提示,修正源程序,直至成功。

此时可以关闭“编译结果”和源文件编辑窗口。

(4)出现“当前模块:

142XXXS1”,同时打开菜单栏视图/调试、寄存器、存储空间,然后可以选主菜单/窗口或者工具栏/XX窗口;整理平台视野。

4).单步调试程序

打开菜单栏执行/跟踪,按照VW.PDF文档中的相应内容操作,注意熟悉F7(跟踪:

可以跟踪到函数或程序内部)、F8、断点设置等基本操作。

(a)“当前模块:

142XXXS1”中“小手光标”位置是PC指针所在,“寄存器”中显示当前各寄存器中的内容。

“数据存储区”中地址用右键显示地址,“输入数据”为十六进制XXXX,确认后调试。

(b)首先单步运行,选主菜单/调试/单步运行或者选工具栏单步运(F7)。

运行一个循环,观察相关的寄存器和存储区的变化。

注意利用SFR、DATA等更改程序中相关寄存器的值,调整程序执行的状态。

熟练WV程序调试界面。

有问题的地方及时和老师讨论。

(c)运用连续运行和设断点运行。

工具栏/为连续运行,在“当前模块”中鼠标出现“小手”时点击,“红色手”即为断点位置。

(d)记录下数据区xxxxH--XXXXH中,在执行程序前后的内容变化。

2.KeilC软件的使用

参考VW的操作过程,以教师演示为主

3.分析下列程序,熟练调试操作,解释程序实现的功能及程序结构类型(顺序结构、分支程序、循环程序、子程序、中断服务程序)。

训练程序一:

ORG1000H

START:

MOVDPTR,#2000H

MOVA,20H

MOVCA,@DPTR+A

MOV21H,A

SJMP$

TABLEEQU2000H

TABLEDB00H,01H,04H,09H,10H,19H

END

调试方法(以下程序自己设计调试方法):

1)把断点设在程序的第四行,观察累加器A的值是否为查表的结果;

2)观察程序SJMP$的执行情况;

3)思考:

分析程序出现的问题,如果把伪指令TABLEEQU2000H换成ORG2000H是否也能得到同样的结果。

程序实现的功能及程序结构类型。

训练程序二:

ORG0100H

START:

MOVDPTR,#2000H

MOVR0,#64H

LOOP:

MOVXA,@DPTR

MOV20H,A;副本

JNBACC.7,NEXT;判断符号

MOVA,20H

CPLA

ORLA,#80H

INCA

MOVX@DPTR,A

NEXT:

INCDPTR

DJNZR0,LOOP

SJMP$

思考:

指出循环程序的初始化、循环体和控制变量的修改与循环次数的控制。

程序实现的功能及程序结构类型。

训练程序三:

ORG0030H

UBITP1.1;定义位符号地址

VBITP2.2

WBIT(20H).0

YBITP3.3

MOVC,U

ORLC,V

ANLC,/W

MOVY,C

END

说明:

MCS-51单片机有着优异的位逻辑功能,可以方便地实现各种复杂的逻辑运算。

这种用软件代替硬件的方法,可以大大简化甚至完全不用硬件,但比硬件要多花一些运算时间。

思考:

写出上述程序的逻辑表达式,在VW中预置U、V、W的值,观察位处理机的工作过程和程序运行结果。

训练程序四

ORG0030H

MOVR0,30H

SORT:

MOVA,R0

MOVR1,A

MOVR5,#0AH

CLRF0;互换标志位F0清零

DECR5

MOVA,@R1

LOOP:

MOVR3,A

INCR1

CLRC

MOVA,@R1;比较大小

SUBBA,R3;

JNCLOOP1;Cy=1,前小跳转

SETBF0;互换标志位F0置1

MOVA,R3

XCHA,@R1;两个数互换

DECR1

XCHA,@R1

INCR1

LOOP1:

MOVA,@R1

DJNZR5,LOOP

JBF0,SORT

END

思考:

请在30H中预置20H,同时在RAM地址的20H~29H中分别随意置10个整数,运行程序后观察RAM的20H~2FH中的数据排列!

分析上述程序的功能,画出程序流程框图。

四、实验报告要求

1、完成程序三各例程后面的思考问题;

2、按照教材上的程序注释格式,对各程序进行注释。

实验三中断程序的调试与设计

一、实验目的和要求

1.熟悉MCS-51中断的概念,中断系统的工作原理。

2.掌握中断程序的基本结构,设计技巧、编译调试方法。

3.基本中断电路的搭接、分析。

二、实验设备

1.AT89C51开发板与仿真器一套

2.PC机一套

3.VW_G集成调试环境软件一套

4.KeilC开发环境一套

三、实验内容

中断是单片机的核心功能之一。

中断应用的好坏,是一个人对单片机技术掌握深度的重要评判依据。

下面的实验题将有助于大家理解和巩固外中断的产生和消除,中断响应的过程、时间等,为后续实验打下基础。

1.如图2-1(参照课本P110图5-8),利用TPC-2003实验台上的资源或Proteus软件,搭建电平方式外部中断请求的实验装置,中断事件处理为对P1口灯依次点亮一次,并清除外中断,试编写程序在Proteus中运行调试。

(提示:

D触发器预置和清零端SD=0且RD=1时,Q置“1”端,即负脉冲有效;二者均为高电平时不影响工作;CP控制脉冲端上跳沿翻转,其它不变)

图2-1外中断控制电路

编程提示:

1).外中断INT0的初始化(设置中断申请方式、允许中断、中断优先级)

2).D触发器工作(如何使D触发器复位、允许再次申请中断)

3).中断响应动作(中断后LED有明显动作,如循环左移1位)

Proteus建模关键字提示:

1).集成8个电阻的排阻:

RESPACK-8

2).LED:

LED-BLUE

3).D触发器:

7474

4).开关按键:

BUTTON

142XXXS3学员的参考程序如下:

ORG0000H

AJMPMAIN

ORG0003H

AJMPW1;中断入口程序,跳转到中断服务子程序去

;****************主程序初始化相关寄存器的设置******************

ORG0050H

MAIN:

MOVSP,#30H

SETBP2.0;Sd端置“1”,使边沿触发器处于工作状态

(外中断设置、寄存器初始化)…

…………

………..

………..

………..

HERE:

AJMPHERE

;**********************外中断服务子程序*************************

W1:

(根据自己的理解补充完整程序,提示:

和边沿触发器配合完成清除中断申请,中断处理要求依次点亮P1口的LED灯)

………….

…………

………..

………..

RETI

END

四、实验报告要求

1、请完成实验2的程序,经上机调试后,在实验报告中画出程序流程图。

2、计算从低电平申请中断到P1.0灯点亮所需要的时间(单片机晶振12MHz)

实验四计时秒表的设计

一、实验目的和要求

1.熟悉MCS-51定时器计数器的工作原理,程序的基本结构及编译、调试。

2.利用MCS-51单片机设计秒表。

二、实验设备

1.AT89C51开发板与仿真器一套

2.PC机一套

3.VW_G集成调试环境软件一套

4.KeilC开发环境一套

三、实验内容

定时器/计数器在工业控制中有着广泛的应用,常和中断技术结合使用。

本实验要求大家利用所学的知识,设计简易的计时秒表,并通过软硬件仿真验证。

1.基于12MHz的时钟,结合中断和定时两章的知识,参考课本P133设计一个计时秒表,按单脉冲触发开始计时,再按单脉冲停止计时。

上述实验采用实验开发板和仿真器来完成,也可以直接在Proteus中仿真,如图4-1。

设计要求及思路:

1).利用T0设计“秒”时间单元,计算初值X,确定TMOD、TCON初值.

2).采用INT0*作为计时开始和计时结束信号的输入口。

3).如在主程序中对INT0*设置优先级,会有什么效果?

如何改进设计?

Proteus建模关键字提示:

1).LED数码显示器:

7SEG-COM-AN-XX

2).开关按键:

BUTTON

图4-1Proteus中的计时秒表电路

142XXXS4学员的参考程序如下:

ORG0000H

AJMPMAIN

ORG0003H

AJMPINT00;外中断入口程序

ORG000BH

AJMPIT0P;定时器1中断入口程序

ORG0100H

MAIN:

MOVSP,#30H

CLRF0;设定启动标志

MOV20H,#XXH;预置中断次数

CLRA

(根据自己的理解补充完整程序,对定时器、外中断进行初始化)

…………….

……………

……………

……………

…………..

…………..

…………..

HERE:

LCALLSTAR

AJMPHERE

;**********************外中断0的服务子程序**************************

INT00:

JBF0,OVER;是否停止?

SETBTR0;启动秒表

CLRA;启动初始化,清A和相关寄存器

MOVR0,A

SETBF0;F0置1,再次外中断时则跳转到停止程序

CLOSE:

RETI

OVER:

CLRTR0

CLRF0

MOVR0,#00H;清R0

AJMPCLOSE

;**********************定时器中断服务子程序**************************

IT0P:

MOVTL0,#XXH;中断后计数器重新赋初值

MOVTH0,#XXH

DJNZ20H,RETURN

MOV20H,#XXH;1秒后重新赋值

INCA

ADDA,#00

DAA

RETURN:

RETI

;******************单个数码管的“秒”显示子程序************************

STAR:

MOVDPTR,#NUMTAB;启始地址

MOVR0,A;A中数据保存

MOVCA,@A+DPTR

MOVP1,A;显示相应的值

SETBP2.0;个位显示

MOVA,R0;保留A中的原始信息

RET

;段数码管各划的数字排列表

NUMTAB:

DB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H;对应代码

;0123456789;显示内容

END

四、实验报告要求

1、实验2中,作为INT0*计时开始和计时结束信号的识别方法还有哪些?

举例说明。

2、如果要计时秒表精确到0.01秒,如何改进设计程序?

实验五串行口通信实验

一、实验目的和要求

1.熟悉MCS-51串行通信的工作原理,程序的基本结构及调试。

2.实现两片AT81C51之间的数据传输。

二、实验设备

1.AT89C51开发板与仿真器一套

2.PC机一套

3.VW_G集成调试环境软件一套

4.KeilC开发环境一套

三、实验内容

串行通信是单片机的重要功能之一,在自动控制领域有广泛的应用。

本次实验要求大家了解串行通信程序编写的方法,分析程序算法,并在VW环境中观察串行发送、接收的过程。

1.参考教材的程序,基于11.0592MHz的时钟,设计AT89C51芯片A机、芯片B机之间互为应答的串行通信程序,用以测试硬件线路传输的质量。

具体过程如下:

A机将信息#0AAH传递给B机,由B机接收并检验,B机确认正确后,将#08H在LED数码管显示,同时传回#0BBH给A机。

A机将接收的信息与#0BBH比较,相同则显示#08H出来,否则重发#0AAH并显示“01H”报错(查询方式编写程序)。

如图5-1:

图5-1双机串行通信电路图

142XXXS5学员参考程序如下(程序设计基于11.0592MHz时钟):

A、发射机程序:

ORG0000H

AJMPASTART

ORG0030H

ASTART:

MOVR0,#00H

CLREA

MOVTMOD,#20H;设T1为定时模式2

MOVTL1,#0E8H;基于11.0592MHz时钟,波特率1.2kb/s

MOVTH1,#0E8H

MOVPCON,#00H;波特率不加倍

SETBTR1

MOVSCON,#50H;串口工作方式1,允许接受

;***********************A机开始发送********************************

ATT1:

MOVSBUF,#0AAH;发联络信号AA

AWAIT1:

JBCTI,ARR1

SJMPAWAIT1

;***********************A机发送完毕,等待B机应答*****************

ARR1:

CLRTI

JBCRI,ARR2;等待B机回答

SJMPARR1

;******************A机接收完毕B机的应答信号,进行处理****************

ARR2:

CLRRI

MOVA,SBUF

CJNEA,#0BBH,ERR

MOVR0,#08H

LCALLSTAR

SJMP$

ERR:

MOVR0,#01H;如收到的应答信息不是#0BBH,输出#01H报错

LCALLSTAR

AJMPATT1;B机未准备好或通信线路故障,继续联络

STAR:

MOVDPTR,#NUMTAB;启始地址

MOVA,R0;R0中数据输出显示

MOVCA,@A+DPTR

MOVP1,A;显示相应的值

CLRP2.0;个位显示

RET

;段数码管各划的数字排列表

NUMTAB:

DB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H;显示内容的对应代码

;0123456789;显示内容

END

B、接收机程序:

ORG0000H

AJMPBSTART

ORG0030H

BSTART:

MOVR0,#00H

CLREA

MOVTMOD,#20H;设T1为定时模式2

MOVTL1,#0E8H;基于11.0592MHz时钟,波特率1.2kb/s

MOVTH1,#0E8H

MOVPCON,#00H;波特率不加倍

SETBTR1

MOVSCON,#50H;串口工作方式1,允许接受

(根据自己的理解补充完整B机的接收程序)

;***********************B机等待接收******************************

............

.............

;***********************B机接收比较,正确显示08H****************

............

............

............

............

............

;***********************B机接收接收完毕,发应答信号****************

...........

CLOSE:

SJMP$

;******************B机接收错误的A机信号,进行错误处理****************

……………

……………

……………

AJMP

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

当前位置:首页 > 医药卫生 > 临床医学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2