《单片机原理及应用》实验指导书Word文档格式.docx

上传人:b****1 文档编号:13363500 上传时间:2022-10-10 格式:DOCX 页数:41 大小:84.61KB
下载 相关 举报
《单片机原理及应用》实验指导书Word文档格式.docx_第1页
第1页 / 共41页
《单片机原理及应用》实验指导书Word文档格式.docx_第2页
第2页 / 共41页
《单片机原理及应用》实验指导书Word文档格式.docx_第3页
第3页 / 共41页
《单片机原理及应用》实验指导书Word文档格式.docx_第4页
第4页 / 共41页
《单片机原理及应用》实验指导书Word文档格式.docx_第5页
第5页 / 共41页
点击查看更多>>
下载资源
资源描述

《单片机原理及应用》实验指导书Word文档格式.docx

《《单片机原理及应用》实验指导书Word文档格式.docx》由会员分享,可在线阅读,更多相关《《单片机原理及应用》实验指导书Word文档格式.docx(41页珍藏版)》请在冰豆网上搜索。

《单片机原理及应用》实验指导书Word文档格式.docx

拆除时先断开其电源,再断开串行通信电缆。

否则极易损坏PC机的串口。

最好先关闭微机电源,再连接或拆除实验板。

实验板原理图

1.安装

从网站免费下载MedWinV2.39集成开发环境安装程序压缩包,将其释放后,按照默认路径安装到C:

\Manley\PmedWin文件夹。

2.设置

(1)每次启动MedWin会出现对话框,询问使用仿真器还是模拟仿真,应点击[模拟仿真]按钮。

(2)设置仿真器点击[设置]—[设置仿真器]命令,选择时钟频率为12兆赫兹。

(3)设置工作目录MedWin集成开发环境默认的工作目录为C:

\MedWin\PMedWin,建议根据需要建立自己的工作目录。

不得使用长文件名或长目录名!

(4)设置编译器将C语言编译器C51(文件夹)拷贝到C:

\MedWin文件夹下,点击[设置]—[设置编译工具]命令,打开“设置编译工具”对话框,使用汇编语言时选择第一行,使用C语言时选择第二行,如下图所示。

3.使用

(1)新建项目点击[项目管理]—[新建项目]命令,输入项目名称,点击[确定]按钮,出现“添加项目文件”对话框,输入源代码文件名,如T1.C(或T1.ASM),单击[打开]按钮,出现代码窗口,即可开始编程。

(2)打开项目点击[项目管理]—[打开项目]命令,点击项目文件名(项目文件后缀为.mpf),点击[打开]按钮,即可打开上次保存的项目。

(3)编译点击[项目管理]—[编译/汇编]命令,启动编译器对源文件进行语法检查并编译,在消息窗口中显示编译结果。

(3)模拟仿真当源程序编译无误后,可进行模拟仿真调试。

点击[项目管理]—[产生代码并装入]命令,编译器对源程序进行重新编译并装入。

这时,可使用[调试]菜单中的相关命令进行调试,如设置断点、单步及全速执行等。

(4)生成目标代码点击[项目管理]—[输出Binary文件]命令,生成BIN文件,用下载工具将其下载到实验板的单片机中执行。

该软件界面如下图所示:

按照界面上的提示:

第一步,设置单片机型号为STC89C52RC。

第二步,点击[OpenFile]按钮,打开编译生成的BIN文件或HEX文件。

第三步,选择串口,设置波特率。

如:

COM1,115200。

第四步,可按默认值不用设置。

第五步,下载程序。

在进行第五步之前,一定要保持实验板的串行通信线及电源线与PC机连接良好,并且实验板的电源开关处于关闭状态,然后,点击[下载]按钮,再打开实验板电源开关,此时,软件将自动完成程序下载,下载完毕,实验板上的单片机立即开始运行。

目前,MCS51内核单片机中STC89C5X(宏晶)和AT89S5X(ATMEL)两种芯片支持在线下载功能。

实验一LED流水灯

一、实验目的

1.学习单片机并口的使用方法。

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

3.学习集成开发环境MedWin的安装与使用。

4.学习STC单片机在线下载软件STC-ISP的使用。

二、实验内容

所谓流水灯就是8个发光二极管(LED)轮流点亮,周而复始。

实验板上以P0口作输出口,经74LS244驱动,接8只发光二极管LED0-LED7。

当单片机的引脚输出为低电平时发光二极管点亮,为高电平时息灭。

编写程序,使8个发光二极管循环点亮,时间间隔约0.5秒。

三、实验电路连线

实验板上与本实验有关的硬件如下图所示。

74LS244驱动输出串联8个限流电阻接8个LED发光管,以防止其电流过大而烧坏。

单片机的主时钟为11.0592MHz。

JMP0和JMP1都短接1-2脚。

四、实验说明

1、P0口作为通用接口时是一准双向口,它作为输出口时与一般的双向口使用方法相同。

由准双向口结构可知当P0口用作输入口时必须先对它置“1”。

若不先对它置“1”,读入的数据是不正确的。

输出时需要接上拉电阻,P0口内部没有上拉电阻,若将外围电路设计为低有效,高无效,则无需再外接上拉电阻。

2、编写一个软件延时子程序,延时时间约0.5秒,采用三重循环实现,汇编语言程序如下:

DELAY:

MOVR7,#198

DEL1:

MOVR6,#50

DEL2:

MOVR5,#23

DJNZR5,$

DJNZR6,DEL2

DJNZR7,DEL1

RET

查指令表可知执行MOV指令需用1个机器周期,DJNZ指令需用2个机器周期,在11.0592MHz晶振时,一个机器周期时间长度为1.085μs,所以该段程序执行时间为:

[1+(1+2×

23)×

50]×

198×

1.085μs≈500mS

3、若使用C语言,可用for循环实现延时,下面的程序延时约500mS。

voiddelay(void)

{inti,j;

for(i=0;

i<

1000;

i++)

for(j=0;

j<

50;

j++)

{_nop_();

_nop_();

}

4、流水灯的主程序(汇编语言)为:

ORG0000H

LJMPMAIN

ORG0100H

MAIN:

CLRP1.5;

P1.5=0,关闭蜂鸣器。

MOVA,#0FEH

LOP:

MOVP0,A

LCALLDELAY

RLA

SJMPLOP

END

5、流水灯的C语言主程序为:

#include<

reg51.h>

stdio.h>

intrins.h>

voidmain(void)

{unsignedchara,c;

P1=0xdf;

//P1.5=0,关闭蜂鸣器。

a=0xfe;

while

(1)

{P0=a;

c=a&

0x80;

a=a<

<

1;

a=a|(c==0x80);

delay();

}

五、思考题

1.如何使点亮的LED从右往左移动?

2.如何使点亮的LED从两边往中间移动?

3.学习LED数码管的驱动、编码。

实验板上有8个LED数码管,编写程序,使最右边的一个LED数码管循环显示0~9十个数字。

时间间隔约0.5秒,其余LED数码管关闭。

8个共阳的LED数码管(S0-S7)上同名的引脚连接在一起,由单片机P0口通过74HC244驱动(段控制),R12-R19为限流电阻。

单片机P2口的8个引脚分别通过三极管Q0-Q7控制8个LED数码管的公共端(位控制)。

JMP0短接2-3脚,JMP1短接1-2脚。

1、P0口和P2都是准双向口,输出时需要接上拉电阻。

P0内部没有上拉电阻,P2口内部有弱上拉。

2、下表为驱动LED数码管的段代码表,1--代表对应的笔段亮,0--代表对应的笔段不亮。

若需要在最右边(S0)显示数字“5”,只要将从表中查得的段代码2CH写入P0口,再将P2.0置高,P2.1-P2.7置低即可。

数字

d

p

e

c

g

b

f

a

十六进制

P0.7

P0.6

P0.5

P0.4

P0.3

P0.2

P0.1

P0.0

共阴

共阳

1

B7

48

14

EB

2

AD

52

3

9D

62

4

1E

E1

5

9B

64

6

BB

44

7

15

EA

8

BF

40

9

9F

60

3、实现最右边的一个LED数码管循环显示0~9十个数字的C语言程序如下:

#defineucharunsignedchar

constucharcodetab[]={0x48,0xeb,0x52,0x62,0xe1,0x64,0x44,0xea,0x40,0x60};

voidmain(void)

{uchari;

P2=0x01;

while

(1)

{P0=tab[i];

i++;

if(i==10)i=0;

4、实现最右边的一个LED数码管循环显示0~9十个数字的汇编语言程序如下:

ORG0000H

ORG0100H

MOVP1,#0DFH

MOVP2,#01H

MOVR1,#00H

LOOP:

MOVA,R1

MOVDPTR,#TAB

MOVCA,@A+DPTR

MOVP0,A

INCR1

MOVA,R1

CJNEA,#10,LOOP

CLRA

MOVR1,A

SJMPLOOP

MOVR7,#198

MOVR6,#50

MOVR5,#23

DJNZR5,$

DJNZR6,DEL2

DJNZR7,DEL1

RET

TAB:

DB48H,0EBH,52H,62H,0E1H,64H,44H,0EAH,40H,60H

END

1.分别写出

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

当前位置:首页 > 工程科技 > 信息与通信

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

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