单片机实验指导书选修.docx

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

单片机实验指导书选修.docx

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

单片机实验指导书选修.docx

单片机实验指导书选修

 

《单片机原理及应用》

实验指导

――适合于“EL-MUT-Ⅲ”型单片机/微机实验系统

 

中国农业大学工学院

2012年11月

说明:

为配合中国农业大学工学院机电、测控、汽电等相关专业开设单片机原理与应用方面的课程,编写出本实验指导。

完成本实验指导中的实验,可使学生基本掌握MCS-51系列单片机的结构原理、接口技术、程序设计技巧。

指导书中详细叙述了各实验的目的、内容,列出了接线图、程序框图和实验步骤。

将实验系统连接在PC机上,通过串行口通讯线控制单片机开发系统进行实验。

实验仪上的晶振是6MHz。

所有实验都是相互独立的,次序上也没有固定的先后关系,在使用本书进行教学时,教师可根据实际的教学要求,选择相应实验。

对同一问题的解决办法往往不是唯一的,欢迎学生和老师在使用本书过程中提出最为优秀的实验方案,指示错误和不足。

实验和实验报告的要求

1、严格按照实验步骤做实验;

2、注意检查核对自己实验所用元器件、仪器、设备、用户板,做到齐全整齐;

3、整理好实验程序和实验结果;

4、实验报告书写清楚,字迹端正;

5、实验报告中所附程序要有必要的注释,流程框图条理性要好;

6、详细记录在组装、调试和测试中出现的故障或问题,进行故障分析并简述排除故障的过程和方法;

 

第一章:

系统概述

1.1EL型微机教学实验系统结构

EL-MUT-III型微机教学实验系统由电源、系统板、CPU板、可扩展的实验模板、微机串口通讯线、JTAG通讯线及通用连接线组成。

系统板的结构简图见图1-1。

图1-1系统板的结构简图

1.2硬件资源

1、可编程并口接口芯片8255一片。

2、串行接口两个:

8250芯片一个,系统与主机通讯用,用户不可用。

单片机的串行口,可供用户使用。

3、键盘、LED显示芯片8279一片,其地址已被系统固定为CFE8H、CFE9H。

硬件系统要求编码扫描显示。

4、六位LED数码管显示。

5、ADC0809A/D转换芯片一片,其地址、通道1—8输入对用户开放。

6、DAC0832D/A转换芯片一片,其地址对用户开放,模拟输出可调。

7、8位简单输入接口74LS244一个,8位简单输出接口74LS273一个,其地址对用户开放。

8、配有8个逻辑电平开关,8个发光二极管显示电路。

9、配有一个可手动产生正、负脉冲的单脉冲发生器。

10、配有一个可自动产生正、负脉冲的脉冲发生器,按基频6.0MHz进行1分频(CLK0)、二分频(CLK1)、四分频(CLK2)、八分频(CLK3)、十六分频(CLK4)输出方波。

11、配有一路0---5V连续可调模拟量输出(AN0)。

12、配有可编程定时器8253一个,其地址、三个定时器的门控输入、控制输出均对用户开放。

13、配有可编程中断控制器8259一个,其中断IRQ输入、控制输出均对用户开放。

14、2组总线扩展接口,最多可扩展2块应用实验板。

15、配有两块可编程器件EPM7064,一块被系统占用。

另一块供用户实验用。

两块器件皆可通过JTAG接口在线编程。

使用十分方便。

16、灵活的电源接口:

配有PC机电源插座,可与PC电源直接接驳。

另外还配有外接开关电源,提供所需的+5V,±12V,其输入为220V的交流电。

1.38051单元

1)、微处理器:

i80c31,它的P1口、P3口皆对用户开放,供用户使用。

2)、时钟频率:

6.0MHz

3)、存储器:

程序存储器与数据存储器统一编址,最多可达64k,板载ROM(监控程序27C256)12k;RAM1(程序存储器6264)8k供用户下载实验程序,可扩展达32k;RAM2(数据存储器6264)8k供用户程序使用,可扩展达32k。

(RAM程序存储器与数据存储器不可同时扩至32k,具体与厂家联系)见图1-2。

在程序存储器中,0000H----2FFFH为监控程序存储器区,用户不可用,4000H----5FFFH为用户实验程序存储区,供用户下载实验程序。

数据存储器的范围为:

6000H----7FFFH,供用户实验程序使用。

注意:

因用户实验程序区位于4000H-----5FFFH,用户在编写实验程序时要注意,程序的起始地址应为4000H,所用的中断入口地址均应在原地址的基础上,加上4000H。

例如:

外部中断0的原中断入口为0003H,用户实验程序的外部中断0的中断程序入口为4003H,其他类推,见表1-1。

图1-2存储器组织图

中断名称

8051原中断程序入口

用户实验程序响应程序入口

外中断0

0003H

4003H

定时器0中断

000BH

400BH

外中断1

0013H

4013H

定时器1中断

001BH

401BH

串行口中断

0023H

4023H

表1-1用户中断程序入口表

4)可提供的对8051的基本实验

为了提高微机教学实验质量,提高实验效率,减轻主讲教师和实验教师的劳动强度,在该系统的实验板上,除微处理器外、程序存储器、数据存储器外,还增加了8255并行接口、8250串行控制器、8279键盘、显示控制器、8253可编程定时器、A/D、D/A转换、单脉冲、各种频率的脉冲发生器、输入、输出电路等模块,各部分电路既相互独立、又可灵活组合,能满足各类学校,不同层次微机实验与培训要求。

可提供的实验如下:

(1)、8051P1口输入、输出实验

(2)、简单的扩展输入、输出实验

(3)、8051定时器/计数器实验

(4)、8051外中断实验

(5)、8279键盘扫描、LED显示实验

(6)、8255并行口输入、输出实验

(7)、8253定时器/计数器实验

(8)、8259中断实验

(9)、串行口通讯实验

(10)、ADC0809A/D转换实验

(11)、DAC0832D/A转换实验

(12)、存储器扩展实验

(13)、交通灯控制实验

 

5)资源分配

本系统采用可编程逻辑器件(CPLD)EPM7128做地址的编译码工作,可通过芯片的JTAG接口与PC机相连,对芯片进行编程。

此单元也分两部分:

一部分为系统CPLD,完成系统器件,如监控程序存储器、用户程序存储器、数据存储器、系统显示控制器、系统串行通讯控制器等的地址译码功能,同时也由部分地址单元经译码后输出(插孔CS0---CS5)给用户使用,他们的地址固定,用户不可改变。

具体的对应关系见表1-2。

另一部分为用户CPLD,它完全对用户开放,用户可在一定的地址范围内,进行编译码,输出为插孔LCS0----LCS7,用户可用的地址范围见表1—2,注意,用户的地址不能与系统相冲突,否则将导致错误。

表1-2:

CPLD地址分配表

地址范围

输出孔/映射器件

性质(系统/用户)

0000H--2FFFH

监控程序存储器

系统*

3000H--3FFFH

数据存储器

系统*

4000H--7FFFH

用户程序存储器

系统*

8000H--CFDFH

LCS0—LCS7

用户

CFE0H

PC机串行通讯芯片8250

系统*

CFE8H

显示、键盘芯片8279

系统

CFA0H--CFA7H

CS0

系统

CFA8H--CFAFH

CS1

系统

CFB0H--CFB7H

CS2

系统

CFB8H--CFBFH

CS3

系统

CFC0H--CFC7H

CS4

系统

CFC8H--CFCFH

CS5

系统

CFD0--FFFFH

LCS0—LCS7

用户

注:

系统地址中,除带“*”用户既不可用,也不可改外,其他系统地址用户可用但不可改。

第二章8051调试软件的使用

2.1与计算机建立连接步骤

1、用串口交叉线将实验箱与计算机串口连接好;

2、检查实验箱的电源线是否连接好;

3、给实验箱上电,此时LED显示“199502”;

4、打开8051调试软件,此时上位机如图2-1所示,

图2-1上位机软件界面

5、点击确定,并且及时按下实验箱上的黄色PRESET按钮,则软件进入EL型(80C51)教学实验环境,LED显示“C—”,表示实验箱与上位机连接正常,可进行编程调试。

注意:

1、给实验箱上电后要及时打开软件,按下“确定”,否则,LED显示“P_”,表示实验箱未与上位机建立连接;

2、如果操作未成功,检查计算机的COM口是否为“COM1”,如不是,选择相应的COM口再次操作。

2.2编辑程序

主窗口下。

在“文件”中选择“新建”菜单,可进行C语言编辑或汇编语言编辑。

也可以选择“打开”,打开现有的实验程序(选择后缀.ASM或.C,可分别打开汇编语言程序和C语言实验程序)。

2.3编译程序

程序编辑完成后,即可进行编译调试。

主菜单中有“编译”栏,可对当前文件进行编译。

“调试”栏可进行系统复位及其他调试手段。

“选项”栏“通讯串口选项”可进行通讯口设置。

“查看”栏可打开内存、外存、寄存器等窗口,通过修改存储器地址可查看不同地址区的内容,也可以对其进行修改。

2.4程序调试步骤

如程序是以“.ASM”为扩展名的汇编程序,则程序编辑完成后。

在工具栏中选择“汇编”命令(F3)(

),编译完成后弹出编译结果信息。

如汇编不成功,请检查错误并重新编辑程序,直到汇编成功。

在工具栏中选择“调试”命令(F5)(

),将程序下载到实验箱的程序存储器。

调试程序,可进行如下操作:

程序复位(Ctrl+F2)(

)、设置/清除断点(Ctrl+F8)(

)、跟踪调试(F7)(

)、单步执行(F8)(

)、执行到光标行(F4)(

)、运行(F9)(

)。

在调试的过程中不可以对程序进行编辑,如果要对程序进行编辑,请执行“停止调试”命令(Shift+F5)(

),然后方可对程序进行编辑;或对单片机进行复位,从主菜单的“调试”下拉菜单中选择“单片机复位”命令(Ctrl+R),马上按下实验箱的复位按钮,复位成功后,对程序进行编辑。

 

第三章实验部分

实验一P1口实验一

一、实验项目

1.P1口做输出口,接8只发光二极管,编写程序使发光二极管循环点亮。

2.P1口做输入口,接8个按钮开关,74LS273做输出口,用发光二极管实时显示8个按钮的开关状态。

二、实验目的

1.学习P1口的使用方法。

2.学习延时子程序的编写和使用。

三、实验原理

P1口为准双向口,它的每一位都能独立地定义为输入位或输出位;当定义为输入位时,必须向锁存器相应位写入“1”。

延时程序的实现常有两种方法:

定时器中断、指令循环;大多采用后一种。

本实验系统晶振为6.144MHz,则一个机器周期为

现要实现0.1s的程序,可大致如下:

MOVR7,#200

(1)

DEL1:

MOVR6,#X

(2)

DEL2:

DJNZR6,DEL2(3)

DJNZR7,DEL1(4)

MOV一个机器周期、DJNZ指令两个机器周期,一个机器周期需

,现求出X的值:

指令1指令2指令3指令4

x=126代入指令2即可。

 

四、实验连线

项目1:

P1.0~P1.7接发光二极管L1~L8

项目2:

P1.0~P1.7接按钮K1~K8;74LS273的SO0~SO7接发光二极管L1~L8,片选端CSU8\接CS0(由程序选择的入口地址而定)。

五、实验电路

 

六、程序框图

七、参考程序

项目1:

CSEGAT0000H

LJMPSTART

CSEGAT4100H

START:

MOVA,#H;先让第一个发光二极管点亮

LOOP:

MOVP1,A;从P1口输出到发光二极管

MOVR1,#;延时0.1秒

DEL1:

MOVR2,#200

DEL2:

DJNZR2,DEL2

DJNZR1,DEL1

A;左移一位,点亮下一个发光二极管

.4.

LJMP

 

项目2:

NAMET1_2;P1口输入实验

OUT_PORTEQU0CFA0H;片选地址CS0

CSEGAT0000H

LJMPSTART

CSEGAT4100H

START:

MOVP1,#H;复位P1口为输入状态

MOVA,P1;读P1口的状态值入累加器A

MOVDPTR,#OUT_PORT;将输出口地址赋给地址指针DPTR

MOVX@DPTR,A;将累加器A的值赋给DPTR指向的地址

JMP;继续循环监测端口P1的状态

END

八、问题思考

1.项目1中,如何实现相反方向循环移动?

两个一起循环移动?

2.项目2中,P1口初值置“0”行不行,为什么?

 

实验二简单I/O口扩展实验二

一、实验项目

74LS244做输入口读取开关状态;74LS273做输出口将开关状态通过发光二极管显示出来

二、实验目的

1.学习在单片机系统中扩展I/O口的方法

2.学习数据输入、输出程序的编制方法

三、实验原理

74LS244是一个扩展输入口,同时也是一个单向驱动器

四、实验连线

74LS244的SI0~SI7接按钮K1~K8,片选端CS244\接CS0;74LS273的SO0~SO7接发光二极管L1~L8,片选端CS273\接CS1

五、实验电路

 

六、

开始

程序框图

置端口地址

从74LS244读入开关状态

从74LS273输出开关状态

延时0.01秒

.11.

七、参考程序

NAMET4;I/O口扩展实验

CSEGAT0000H

LJMPSTART

CSEGAT4100H

INPORTEQU0CFA8H;74LS244端口地址

OUTPORTEQU0CFB0H;74LS273端口地址

START:

MOVDPTR,#

LOOP:

A,@DPTR;读开关状态

MOVDPTR,#

MOVX@DPTR,A;显示开关状态

MOVR7,#10H;延时

DEL0:

MOVR6,#H

DEL1:

DJNZR6,DEL1

DJNZR7,

JMP

END

实验三定时器实验——循环彩灯实验

一、实验项目

由8031内部定时器1按方式1工作,P1口做输出,发光二极管显示。

要求编写程序模拟循环彩灯,变化花样为:

L1~L8依次点亮、依次熄灭、全亮、全灭,时序间隔0.5秒。

二、实验目的

1.学习8031内部定时器有使用和编程方法

2.进一步掌握中断处理程序的编写方法

三、实验原理

由8031内部定时器1工作在方式1工作时,作16位定时器使用。

定时器/计数器的输入脉冲周期与机器周期一样,为

本实验系统

,要实现0.5秒延时,要在定时器中设置一个时间常数使其每隔0.1秒产生一次中断,CPU响应中断后R0值减一,令皂=05H即可。

机器周期=

;设计数初值为X,则

定时器和中断系统初始化主要是对IP、IE、TCON、

TMOD的相应位设置,并将时间常数送入定时器中。

四、实验连线

P1.0~P1.7相应接发光二极管L1~L8。

 

五、实验电路

六、程序框图

中断程框图

 

Yes

No

Yes

 

主程序框图

 

.16.

七、参考程序

NAMET5;定时器实验

OUTPORTEQU0CFB0H

CSEGAT0000H

LJMP

CSEGAT401BH;定时器/计数器中断程序入口地址

LJMP

CSEGAT4100H

START:

MOVA,#01H;首显示码

MOVR1,#H;设置偏移量,即从基址寄存器到表首的距离

MOVR0,#05H;05是计数值

MOVTMOD,#H;计数器置为方式

MOVTL1,#H;装入时间常数

MOVTH1,#H

ORLIE,#88H;CPU中断开放标志位和定时器

;1溢出中断允许位均置位

SETBTR1;开始计数

LOOP1:

CJNER0,#00,DISP

MOVR0,#05H;R0计数计完一个周期,重置初值

INCR1;表地址偏移量加

CJNER1,#31H,LOOP2

MOVR1,#03H;如到表尾,则重置偏移量初值

LOOP2:

MOVA,R1;从表中取显示码入累加器

MOVCA,@A+PC

JMPDISP

DB01H,03H,07H,0FH,1FH,3FH,7FH,0FFH,0FEH,0FCH

DB0F8H,0F0H,0E0H,0C0H,80H,00H,0FFH,00H,0FEH

DB0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,07FH,0BFH,0DFH

DB0EFH,0F7H,0FBH,0FDH,0FEH,00H,0FFH,00H

DISP:

;MOVDPTR,#OUTPORT

;MOVX@DPTR,A

MOV,A;将取得的显示码从P1口输出显示

JMPLOOP1

INT:

CLRTR1;停止计数

DECR0;计数值减一

MOVTL1,#H;重置时间常数初值

MOVTH1,#H

SETB;开始计数

RETI;中断返回

END

八、问题思考

在中断子程序中省去指令CLRTR1和指令SETBTR1行不行?

会有什么结果?

 

实验四8255A可编程并行接口实验

一、实验项目

用8255A可编程并行接口芯片,重复实验四的内容。

PA口作为显示输出口,PB口作为开关量输入口。

二、实验目的

1.了解8255A芯片的结构及编程方法

2.掌握通过8255A并行接口读取开关数据的方法

三、实验原理

设置好8255A各端口的工作模式:

三个端口都工作于方式0,PA口作为显示输出口,PB口作为开关量输入口。

四、实验连线

8255A的PA0-PA7接发光二极管L1-L8,PB0-PB7接开关K1-K8,片选信号CS8255接CS0。

五、实验电路

六、程序框图

 

七、参考程序

CSEGAT0000H

LJMPSTART

CSEGAT4100H

PAEQU0CFA0H

PBEQU0CFA1H

PCTLEQU0CFA3H

START:

MOVDPTR,#PCTL;置8255A控制字,A、B、C口均工作

MOVA,#H;方式0,A、C口为输出,B口为输入

MOVX@DPTR,A

LOOP:

MOVDPTR,#PB;从B口读入开关状态值

MOVXA,

MOVDPTR,#PA;从A口将状态值输出显示

MOVX,A

MOVR7,#10H;延时

DEL0:

MOVR6,#0FFH

DEL1:

DJNZR6,

DJNZR7,

LJMPLOOP

END

八、问题思考

试分析改置8255A控制字,A、B、C口工作方式1,B、C口为输出,A口为输入,可不可以。

 

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

当前位置:首页 > 经管营销 > 经济市场

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

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