《单片机原理与应用》实验教案.docx

上传人:b****6 文档编号:4691721 上传时间:2022-12-07 格式:DOCX 页数:32 大小:317.27KB
下载 相关 举报
《单片机原理与应用》实验教案.docx_第1页
第1页 / 共32页
《单片机原理与应用》实验教案.docx_第2页
第2页 / 共32页
《单片机原理与应用》实验教案.docx_第3页
第3页 / 共32页
《单片机原理与应用》实验教案.docx_第4页
第4页 / 共32页
《单片机原理与应用》实验教案.docx_第5页
第5页 / 共32页
点击查看更多>>
下载资源
资源描述

《单片机原理与应用》实验教案.docx

《《单片机原理与应用》实验教案.docx》由会员分享,可在线阅读,更多相关《《单片机原理与应用》实验教案.docx(32页珍藏版)》请在冰豆网上搜索。

《单片机原理与应用》实验教案.docx

《单片机原理与应用》实验教案

 

《单片机原理与应用》实验教案

 

青岛科技大学自动化与电子工程学院

实验1keilc编程软件的使用

本实验设备选用SXL-100型微机接口单片机实验开发系统,目的是培养学生综合运用本学期所学到的《单片机原理与设计》课程的知识,提高学生分析问题和解决问题的能力,进一步深化和巩固所学到的知识,增强学生的实验技能,提高学生的技术应用能力,为搞好毕业设计打基础,并使学生养成严谨、踏实的工作作风等思想素质方面受到教育和培养。

一、实验目的

1.熟悉keilc系统,利用现有单片机实验室的具有的微机和单片机实验器材,指导学生采用KeilC建立实验题目的“工程”,实际连接各实验的线路、调试各实验的过程,从而完成后续实验。

2.对内部数据存储器50H~70H的内容清零。

3.对外部数据存储器2000H~20FFH的内容清零。

二、实验方法:

1.整机介绍(SXL-100B+实验箱电路板简介)

①SXL—100B+实验扩展板布局图如图所示

 

②板图分区说明

APCI板卡输出接口

BUSB&单片机扩展区6116读写电路

CDAC0832数模转换电路

C1ADC0809模数转换电路

D步进电机8MHZ信号发生器与分频器

D1直流电机

D2温度模块

E发光管控制译码电路8255电路

F八位逻辑电平输入

G138译码电路信号发生器与分频器

H8253计数器8259

IPC16C550串行通信实验

J32位输入输出,4片8255控制1个16×16的点阵,单脉冲发生电路

K8255数码显示电路及4×4键盘电路

③接线柱说明

区号

圆柱编号

功能

区号

圆柱编号

功能

K

J14-1~8A~DP

数码管的A段~DP段

A

J19-2IOW

I/O写端

J37-1~4

数码管LD8~5的控制端

J19-3IOR

I/O读端

B

J20-1~8ADD0~ADD7

地址线ADD0~ADD7

J19-4IMEMW

内存写端

J22-1~8D7~D0

数据线D7~D0

J19-5IMEMR

内存读端

J21-1~8ADD8~ADD15

地址线ADD8~ADD15

J19-6RESET

复位端

J19-1IRQ

中断

J83

G

 

J7-1

4MHz信号输出

J82

电源+5V

J7-2

2MHz信号输出

J13

电源+12V

J7-3

1MHz信号输出

J12

电源-12V

J7-4

500KHz信号输出

J11

电源-5V

J7-5

250KHz信号输出

G

J2-Y1

地址10H

J7-6

125KHz信号输出

J2-Y2

地址20H

J7-8

31.25KHz信号输出

J2-Y3

地址30H

J8

为ADC0809提供时钟信号的短路块

J2-Y4

地址80H

J2-Y0

地址0H

J2-Y5

地址90H

J50PA0~7

8255的A口0~7

J2-Y6

地址0A0H

K

J49PC0~7

8255的C口0~7

J2-Y7

地址0B0H

C1

J65IN0~7

模拟量输入,第0~7信道

J2-Y1

地址10H

J70EOC

ADC0809的EOC端(EOC为转换完成)

J2-Y2

地址20H

J69SIGNAL_IN

模拟量输入

J2-Y3

地址30H

J67/CS

ADC0809的片选端

J2-Y4

地址80H

C

J77/CS

DAC0832的片选

J2-Y5

地址90H

J76Xfer

控制DAC0832的Xfer端

J2-Y6

地址0A0H

J72OUT

DAC0832的输出

J2-Y7

地址0B0H

J78WW

停止DAC0832工作的控制端(为Windows9x下特有)

K

J48-0~7PB0~7

8255的B口0~7

H

J53-1OUT0

第1个计数器输出

J50PA0~7

8255的A口0~7

K

JPC0-JPC7

8255与键盘的缺省连接

J49PC0~7

8255的C口0~7

④地址分配电路图(G区)

 

2.系统特点:

1、 一体化设计,系统功能齐全,涵盖了微机/单片机教学实验课程的大部分内容。

2、 实验模块化,适合计算机原理与接口教学,满足大纲要求。

3、独立性强,自带CPU、键盘、LED显示,可独立运行;自带EPROM的读取、编程、比较和查空功能。

 

4、 灵活的电源接口:

配有PC机电源插座,可由PC提供电源。

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

5、   系统的联机运行模式:

配有系统调试软件,系统调试软件wqWINDOWS版两种,均为中文多窗口界面。

调试程序时可以同时打开寄存器窗口、内存窗口、变量窗口、反汇编窗口等等,极大地方便了用户的程序调试。

该软件集源程序编辑、编译、链接、调试于一体,每项功能均为中文下拉菜单,简明易学。

6、   系统的单机运行模式:

系统在没有与计算机连接的情况下,自动运行在单机模式,在此模式下,用户可通过键盘输入运行程序(机器码)和操作指令,同时将输入信息及操作的结果在LED数码管上显示出来。

7、 系统功能齐全,可扩展性强。

本实验系统不仅完全能满足教学大纲规定的基本接口芯片实验,其灵活性和可扩展性(数据总线、地址总线、控制总线为用户开放)亦能轻松满足其课程设计、毕业设计使用等。

三、实验步骤

A.用KeilC建立一个工程:

1)点击Project菜单,选择弹出的下拉式菜单中的NewProject,如图1-1。

接着弹出一个标准Windows文件对话窗口,如图1-2,在“文件名”中输入您的程序项目名称,这里我们用“test”。

“保存”后的文件扩展名为uv2,这是KEILuVision2项目文件扩展名,以后我们可以直接点击此文件以打开先前做的项目。

图1-1NewProject菜单

2)选择所要的单片机,这里我们选择Ateml公司的AT89C52。

然后确定,出现如下对话框选“N”,工程建立完毕,如下图:

图1-2文件窗口

B.向工程中添加文件:

(1)我们要在项目中创建新的程序文件或加入旧程序文件。

如果您没有现成的程序,那么就要新建一个程序文件。

点击新建文件的快捷按钮,便会出现一个新的文字编辑窗口,这个操作也可以通过菜单File-New或快捷键Ctrl+N来实现。

现在可以编写程序了,光标已出现在文本编辑窗口中,等待我们的输入了。

(2)点击保存新建的程序,也可以用菜单File-Save或快捷键Ctrl+S进行保存。

我们把第一个程序命名为test1.asm,保存在项目所在的目录中,这时您会发现程序单词有了不同的颜色,说明KEIL的ASM语法检查生效了。

图1-3文件对话框

(3)如图1-4鼠标在屏幕左边的SourceGroup1文件夹图标上右击弹出菜单,在这里可以做在项目中增加减少文件等操作。

我们选“AddFiletoGroup‘SourceGroup1’”弹出文件窗口,选择刚刚保存的文件,按ADD按钮,关闭文件窗,程序文件已加到项目中了。

这时在SourceGroup1文件夹图标左边出现了一个小+号说明,文件组中有了文件,点击它可以展开查看。

图1-4添加文件窗口

C.文件设置:

(1)用鼠标右键点击Target1,选OptionsforTarget‘Target1’

 

(2)然后选Debug页,在右边选“Use:

KeilMonitor-51Driver”,并勾选Gotillmain

D.编译、运行、调试:

(1)点击Project菜单,选择弹出的下拉式菜单中的Buildtarget,或按F7 键,编译并生成目标代码。

在窗口中可以看到编译的错误信息和使用的系统资源情况等。

(2)回到KeilC界面,按Debug菜单中的Start\StopDebugSession,或Ctrl+F5键,进入联机调试状态(快捷键为一个小放大镜)。

程序通过串行接口下载到单片机内,接下来就可以运行和调试程序了。

(3)运行调试:

在Debug菜单下有运行、单步运行等选项可以运行程序。

另外,在View菜单下还可以打开观察窗口,跟踪变量的变化。

实验2输入输出接口实验

实验目的

1、熟悉利用keilc编写和调试单片机程序的方法。

2、掌握利用简单芯片实现并行接口扩展的方法。

实验题目1闪烁灯

1.实验说明

在P1.0端口上接一个发光二极管L1,使L1在不停地一亮一灭,一亮一灭的时间间隔为0.5秒。

2.系统板上硬件连线

把“单片机系统”区域中的P1.0端口用导线连接到K模块PC5上。

3.程序设计内容

ORG0000H

LJMPMAIN

ORG0030H

MAIN:

MOVSP,#60H

START:

CLRP1.0

LCALLDELAY

SETBP1.0

LCALLDELAY

LJMPSTART

DELAY:

MOVR5,#45;延时子程序,延时0.5秒

D1:

MOVR6,#20

D2:

MOVR7,#248

D3:

DJNZR7,D3

DJNZR6,D2

DJNZR5,D1

RET

END

实验题目2霓虹灯输出

1.实验说明

利用74ls273扩展的输出口接8路发光二极管,按循环点亮的方式输出。

并行口的抵制为8060H

2.电路图如附录所示;

3、参考程序

2-3可控霓虹灯实验流程

图2-1霓虹灯输出流程图图2-2输入接口扩展流程图

ADDIOEQU8060H

ORG0000H

LJMPMAIN

ORG0030H

MAIN:

MOVSP,#60H

MOVA,#01H

MOVDPTR,#ADDIO

MOVX@DPTR,A

L1:

ACALLDELAY

RRA

MOVX@DPTR,A

AJMPL1

DELAY:

MOVR5,#45;延时子程序,延时0.5秒

D1:

MOVR6,#20

D2:

MOVR7,#248

D3:

DJNZR7,D3

DJNZR6,D2

DJNZR5,D1

RET

END

实验题目3输入输出接口实验

1.实验说明

利用74ls244扩展的输入口读取开关状态,并利用74ls273扩展的输出口接口连接的8路发光二极管显示结果。

并行口的地址为8060H

2.电路图;

3.参考程序

ADDIOEQU8060H

ORG0000H

LJMPMAIN

ORG0030H

MAIN:

MOVSP,#60H

L1:

MOVDPTR,#ADDIO

MOVXA,@DPTR

MOVX@DPTR,A

SJMPL1

END

实验题目4可控霓虹灯输出实验

1.实验说明

利用扩展的输出口驱动8路发光二极管,按循环点亮的方式输出,并由输入开关控制循环方向

2.电路图如附录所示;连线:

P1.0接F模块J15IN_1

3.参考程序

ADDIOEQU8060H

ORG0000H

LJMPMAIN

ORG0030H

MAIN:

MOVSP,#60H

MOVA,#01H

MOVDPTR,#ADDIO

MOVX@DPTR,A

L1:

ACALLDELAY

JBP1.0,L2

RRA

SJMPNEXT

L2:

RLA

NEXT:

MOVX@DPTR,A

AJMPL1

DELAY:

MOVR5,#45;延时子程序,延时0.5秒

D1:

MOVR6,#20

D2:

MOVR7,#248

D3:

DJNZR7,D3

DJNZR6,D2

DJNZR5,D1

RET

END

实验3定时/计数器实验

实验目的

1、掌握利用51系列单片机编写中断服务程序的方法。

2、掌握使用单片机内部定时计数器实现定时功能的方法。

实验题目1定时器实验

1.实验说明

每隔1秒点亮和熄灭由p1.0所连接的发光二极管。

2.系统板上硬件连线

把单片机系统区域中的P1.0端口用导线连接到K模块PC5上。

3.程序设计内容

图3-1定时器实验主程序图3-2定时器实验中断程序

ORG0000H

LJMPMAIN

ORG000BH

LJMPINTT0

ORG0030H

MAIN:

MOVSP,#60H

CLRP1.0

MOVR1,#14H

MOVTMOD,#01H;00000001

MOVTH0,#4CH;50ms

MOVTL0,#00H

SETBTR0

SETBET0

SETBEA

HERE:

AJMPHERE

INTT0:

MOVTH0,#4CH

MOVTL0,#00H

DJNZR1,NEXT

CPLP1.0

MOVR1,#14H

NEXT:

RETI

END

实验题目2计数器实验

1.实验说明

把定时器0外部输入的脉冲进行计数,并送显示器显示。

2.程序设计内容

ORG0000H

SE15:

MOVSP,#53H

MOVTMOD,#05H

MOVTH0,#00H

MOVTL0,#00H

SETBTR0

LO29:

MOVR2,TH0

MOVR3,TL0

LCALLR0,#79H

MOVR0,#79H

MOVA,R6

LCALLPTDS

MOVA,R5

LCALLPTDS

MOVA,R4

LCALLPTDS

LCALLSSEE

SJMPLO29

ZOY0:

CLRA

MOVR4,A

MOVR5,A

MOVR6,A

MOVR7,#10H

LO30:

CLRC

MOVA,R3

RLCA

MOVR3,A

MOVA,R2

RLCA

MOVR2,A

MOVA,R6

ADDCA,R6

DAA

MOVR6,A

MOVA,R5

ADDCA,R5

DAA

MOVR5,A

MOVA,R4

ADDCA,R4

DAA

MOVR4,A

DJNZR7,LO30

RET

ORG0061H

PTDS:

MOVR1,A

ACALLPTDS1

MOVA,R1

SWAPA

PTDS1:

ANLA,#0FH

MOV@R0,A

INCR0

RET

ORG0D50H

SSEE:

SETBRS1

MOVR5,#05H

SSE2:

MOV30H,#20H

MOV31H,#7EH

MOVR7,#06H

SSE1:

MOVR1,#21H

MOVA,30H

MOVX@R1,A

MOVR0,31H

MOVX@R0,A

MOVDPTR,#DDFF

MOVCA,@A+DPTR

MOVR1,#22H

MOVX@R1,A

MOVA,30H

RRA

MOV30H,A

DEC31H

MOVA,#0FFH

MOVX@R1,A

DJNZR7,SSE1

DJNZR5,SSE2

CLRRS1

RET

DDFF:

DB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H

DB88H,83H,0C6H,0A1H,86H,8EH,0FFH,0CH,89H,0DEH

实验4中断系统实验

实验题目1利用定时器中断实现可控霓虹灯实验

1.实验说明

每隔1s循环点亮p1口所连的发光二极管。

2.系统板上硬件连线

把单片机系统区域中的INT0(P3.2)端口用导线连接到J模块J101上。

3.程序设计内容

ADDIOEQU8060H

ORG0000H

LJMPMAIN

ORG000BH

LJMPINTT0

ORG0030H

MAIN:

MOVSP,#60H

MOVDPTR,#ADDIO

MOVR1,#14H

MOVA,#0FEH

MOVX@DPTR,A

SETBIT0

SETBEX0

MOVTMOD,#01H;

MOVTH0,#4CH

MOVTL0,#00H

SETBTR0

SETBET0

SETBEA

CLRC

HERE:

AJMPHERE

INTT0:

MOVTH0,#4CH

MOVTL0,#00H

DJNZR1,STOP

MOVR1,#14H

JCRIGHT

RLA

MOVX@DPTR,A

AJMPSTOP

RIGHT:

RRA

MOVX@DPTR,A

STOP:

RETI

END

实验题目2利用定时器和外部中断实现可控霓虹灯实验

1.实验说明

每隔1s循环点亮p1口所连的发光二极管,并用INT0控制循环方向。

2.系统板上硬件连线

把单片机系统区域中的INT0(P3.2)端口用导线连接到J模块J101上。

3.程序设计内容

ADDIOEQU8060H

ORG0000H

LJMPMAIN

ORG0003H

LJMPIINT0

ORG000BH

LJMPINTT0

ORG0030H

MAIN:

MOVSP,#60H

MOVDPTR,#ADDIO

MOVR1,#14H

MOVA,#0FEH

MOVX@DPTR,A

SETBIT0

SETBEX0

MOVTMOD,#01H;

MOVTH0,#4CH

MOVTL0,#00H

SETBTR0

SETBET0

SETBEA

CLRC

HERE:

AJMPHERE

IINT0:

CPLC

RETI

INTT0:

MOVTH0,#4CH

MOVTL0,#00H

DJNZR1,STOP

MOVR1,#14H

JCRIGH

RLA

MOVX@DPTR,A

AJMPSTOP

RIGHT:

RRA

MOVX@DPTR,A

STOP:

RETI

END

T

实验5LED动态显示实验

实验目的

1、掌握利用单片机实现扩展LED动态显示的方法。

实验题目1时钟显示电路

1.实验说明

利用8255的PA、PB口扩展4位LED显示器,并利用动态扫描的方式显示一个时钟电路,每隔一秒种变化一次。

2.系统电路图

电路图如下图。

本实验不需连线。

3.程序设计内容

PA55EQU8000H

PB55EQU8001H

CTL55EQU8003H

MIN1EQU40H;分十位

MIN2EQU41H;分个位

SEC1EQU42H;秒十位

SEC2EQU43H;秒个位

COUNTEQU31H;

ORG0000H

LJMPMAIN

ORG000BH

LJMPINTT0

ORG0030H

MAIN:

MOVSP,#60H

MOVA,#80H

MOVDPTR,#CTL55

MOVX@DPTR,A

MOVDPTR,#PB55

MOVA,#0FFH

MOVX@DPTR,A

MOVTMOD,#01H

MOVTL0,#00H

MOVTH0,#4CH

CLRA

MOVMIN1,A

MOVMIN2,A

MOVSEC1,A

MOVSEC2,A

SETBTR0

SETBET0

SETBEA

LOOP:

LCALLDISPLAY

LCALLDELAY

SJMPLOOP

DISPLAY:

MOVA,#01H

MOV30H,A

MOVR2,#04H

MOVR0,#40H

DISP:

MOVA,@R0

MOVDPTR,#LED

MOVCA,@A+DPTR

MOVDPTR,#PA55

MOVX@DPTR,A

MOVA,30H

CPLA

MOVDPTR,#PB55

MOVX@DPTR,A

LCALLDELAY

DJNZR2,NEXT1

MOVA,#0FFH

MOVDPTR,#PB55

MOVX@DPTR,A

RET

NEXT1:

INCR0

MOVA,30H

RLA

MOV30H,A

MOVA,#0FFH

MOVDPTR,#PB55

MOVX@DPTR,A

SJMPDISP

DELAY:

MOVA,10H

AA:

DECA

JNZAA

RET

INTT0:

PUSHACC

MOVTL0,#00H

MOVTH0,#4CH

INCCOUNT

MOVA,COUNT

CJNEA,#10,QUIT

MOVCOUNT,#0

INCSEC2

MOVA,SEC2

CJNEA,#10,QUIT

MOVSEC2,#0

INCSEC1

MOVA,SEC1

CJNEA,#06,QUIT

MOVSEC1,#0

INCMIN2

MOVA,MIN2

CJNEA,#10,QUIT

MOVMIN2,#0

INCMIN1

MOVA,MIN1

CJNEA,#06,QUIT

MOVMIN1,#0

QUIT:

POPACC

RETI

LED:

DB,0c0H,0f9H,0a4H,0b0H,99H,92H,82H,0f8H,80H,98H

END

8255七段LED显示段驱动

 

8255七段LED显示位驱动

 

实验6矩阵式动态扫描键盘实验

实验目的

1、掌握利用单片机实现对矩阵式的扩展和驱动方法。

实验题目小键盘识别

1.实验说明

利用PC口扩展一个4*4的矩阵键盘,利用键盘扫描方式读取键盘值并在LED中显示。

2.系统电路图

电路图如下图。

本实验不需连线。

3.程序设计内容

PA55EQU8000H

PB55EQU8001H

PC55EQU8002H

CTL55EQU8003H

key_valueEQU31H

key_rowequ32h

LINE_VLAUEEQU34H

ORG0000H

LJMPMAIN

ORG0300H

MAIN:

LCALLD1M

LCALLD1M

MOVSP,#60H

MOVA,#00H

MOVR0,#40H

MOVR1,#04

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

当前位置:首页 > 高中教育 > 理化生

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1