单片机实验指导书Word文档格式.docx

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

单片机实验指导书Word文档格式.docx

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

单片机实验指导书Word文档格式.docx

转入主程序

ORG0200H;

主程序的开始

MAIN:

MOVP1,#00H;

P1口做准备

M1:

INCP1;

P1口连接输出计数,

LCALLDELAY;

转入延时子程序

LJMPM1;

循环

DELAY:

MOVR5,#255;

延时子程序

D1:

MOVR6,#255

DJNZR6,$

DJNZR5,D1

RET

END;

程序体结束

七、思考题

1、利用其他I/O口实现LED加1点亮功能;

2、利用P1端口实现流水灯(左移或右移)功能;

3、实现LED其他点亮功能。

附录:

一、KeilC51编程软件使用说明

KeilC51编程软件是众多单片机应用开发的优秀软件之一,它集编辑、编译、仿真于一体,支持汇编、C51语言,界面友好,易学易用。

1、启动KeilC51编程软件,出现编辑界面;

2、建立一个新工程,单击Project菜单,在弹出的下拉菜单中选中NewuVisionProject选项。

3、然后选择保存路径,输入工程文件名,点击“保存”;

4、弹出单片机选择框,选择对应的单片机型号,并点“OK”;

5、完成后,屏幕出现编辑环境;

6、点击“File”菜单,在下拉菜单中点击“New”选项;

7、在“Text1”中编写实验程序,完成后保存文件,要保存在所建的工程文件夹中。

在“文件名”栏中输入欲使用的文件名,同时必须输入正确的扩展名。

注意:

如果使用C语言编写程序,则扩展名为.C;

如果用汇编语言编写程序,则扩展名为.ASM;

8、回到编辑界面,单击“Target1”前面“+”号,然后在“SourceGroup1”上单击右键,弹出如下菜单;

9、单击“AddFiletoFroup‘SourceGroup1”选择实验程序“SY1.ASM”,然后单击“Add”,则项目中多出SY1.ASM子项;

10、单击“Project”菜单,在下拉菜单中单击“OptionsforTarget‘Target1’”;

11、在“OptionsforTarget‘Target1’”的选项中选择“Output”选项,并在“CreateHEXFile”选项前打上“√”,然后点击“OK”;

12、单击“Project”菜单,在下拉菜单中单击“Buildtarget”选项,若程序无误,编程成功后,则生成后缀为.HEX的文件,该文件是单片机下载文件。

二、STC-ISP下载软件的使用说明

1、打开“STC-ISP”下载软件,界面如下;

2、选择单片机型号,在单片机型号的下拉按钮上单击,选择一致的单片机型号,如:

STC89C52RC;

3、选择串口,在串口选择时,根据设备所接的串口号进行选择,如:

COM1、COM2、USBSerialPort(COM3);

4、单击“打开程序文件”,找到所见项目文件夹,选中后缀为.HEX的文件,并单击打开;

5、单击“下载/编程”按钮,将.HEX文件下载到单片机的ROM中,注意,在单击“下载/编程”按钮后,需要将单片机进行一次冷启动(即:

将实验箱电源关掉,稍等片刻再打开),程序才能下载成功;

6、下载成功后,程序则在单片机内运行,观察实验箱上的实验结果。

实验二端口I/O输入输出实验

1.掌握51单片机输入/输出端口的使用方法;

2.学习蜂鸣器和继电器的控制电路设计

3.掌握51单片机I/O使用的编程方法

选择单片机的某个I/O端口,连接实验设备上的按键、蜂鸣器、继电器,编写程序实现按键控制继电器和蜂鸣器。

单片机P0.0接继电器控制端;

单片机P0.1接蜂鸣器控制端;

P2.6接按键1(单脉冲输出端1);

P2.7接按键2(单脉冲输出端2)。

(注:

连接蜂鸣器电路不要选用P2和P3口,声音偏小、不响)

图2-1实验线路

图2-2继电器电路和蜂鸣器电路

四、实验步骤

1、连接串行通信电缆盒电源线;

2、根据图2-1实验线路进行电路连接;

3、将C51单片机核心板上的三个开关分别拨到“独立”、”运行”“单片机”;

5、利用KeilC51创建实验程序,并进行编译生产后缀为.HEX的文件;

五、参考程序

KEY1EQUP2.7;

定义按键1

KEY2EQUP2.6;

定义按键2

SPKEQUP0.1;

定义蜂鸣器

JDQEQUP0.0;

定义继电器

ORG0000H

LJMPMAIN

ORG0100H

JNBKEY1,M2

CLRJDQ;

按键1松开,继电器吸合

LJMPM3

M2:

SETBJDQ;

按键1按下,继电器断开

M3:

JNBKEY2,M4

CLRSPK;

按键2松开,蜂鸣器响

LJMPMAIN

M4:

SETBSPK;

按键2按下,蜂鸣器停

LJMPMAIN;

循环扫描按键

END

六、思考题

1、利用其他I/O口实现控制功能;

2、利用按键实现以下功能,要求:

按键1作为蜂鸣器和继电器的启动按钮;

按键2作为蜂鸣器和继电器的停止按钮。

蜂鸣器和继电器启动后自动工作,每隔1秒启动一次(延时方式实现)。

3、实现其他创新功能。

实验三外部中断实验

1.掌握51单片机外部中断的使用方法。

1.实验电路如图3-1所示,通过用手动逐个向单片机的

输入单脉冲,申请中断。

每中断一次,使8051单片机的P1口的数值加1。

2.接线方案

P1.0~P1.7/C51单片机接L0~L7/LED显示;

INT0/C51单片机接单脉冲。

图3-1实验线路

三、实验原理

当单片机的外部中断口(INT0)有电平变化时,单片机程序会进入中断服务程序,执行中断服务功能,对P1口数值进行加1,实现手动对P1口数值控制。

四、参考程序流程图

图3-2程序流程图

2、根据图3-1实验线路进行电路连接;

ORG0003H;

中断入口

LJMPINT

ORG0200H

MOVP1,#00H

SETBEA;

首先开启总中断

SETBEX0;

开启外部中断0,即P32引脚

SETBIT0;

设置成下降沿触发方式

SJMPM1;

主程序只等待中断

INT:

INCP1;

外部中断0中断响应,将P1口内容加1

LCALLDELAY

RETI;

中断结束返回

MOVR5,#255;

MOVR6,#255

1、利用外部中断1实现本实验的中断功能;

2、两个外部中断的同时应用(外部中断0实现LED流水灯按键控制左移;

外部中断1实现LED流水灯按键控制右移)。

实验四定时器实验

1.掌握51单片机内部定时器的使用方法。

2.学习单片机控制蜂鸣器电路设计方法。

1.实验电路如图4-1所示,用51单片机内部定时器T0定时,控制蜂鸣器发声,使之发声1秒钟,停止1秒钟,重复循环。

P1.0/51单片机接蜂鸣器

图4-1实验线路

当P1.0输出高电平时,三极管导通蜂鸣器发声,P1.0输出低电平时,三极管截止,蜂鸣器不发声。

本实验设备的晶振频率为11.0592MHZ,定时方式时,约1us计数器加1,计数初值15536时,经过50ms溢出,溢出20次约1秒钟。

图4-2程序流程图

AJMPMAIN

ORG000BH;

定时器0中断服务程序

LJMPTINT

ORG0030H

MOVTMOD,#01H;

设置定时器0,方式1

MOVDPTR,#15536;

送T0计数初值15536

MOVTH0,DPH

MOVTL0,DPL

SETBEA;

开总中断

SETBET0;

开定时器0

SETBP1.0;

蜂鸣器发生

MOVR0,#20

SETBTR0

SJMP$

TINT:

DJNZR0,EXIT

CPLP1.0;

中断20次到1S,对P1.0取反

MOVR0,#20;

重置中断次数计数器

EXIT:

MOVDPTR,#15536;

重置T0计数初值15536

RETI

1、利用定时器1实现本实验定时功能,编写程序;

使用工作方式2实现定时功能,编写程序。

实验五串行口通信实验

1.掌握51单片机串行口工作方式的设定及串行通信程序设计。

2.掌握串行通信的典型电路

1.实验电路如图5-1所示,通信的双方分别定义为甲单片机和乙单片机,甲单片机通过串行口循环发送数据0~FFH,乙单片机通过串行口接收并在LED发光二极管上显示出来,实现数据的串行通信。

本实验参考程序采用串口工作方式2。

2.接线方案(注:

P3.0和P3.1口需下载程序后再连接)

P1.0~P1.7/51单片机(甲)接LED发光二极管组;

P3.0和P3.1/51单片机(甲)接RS232模块的TXD、RXD;

P1.0~P1.7/51单片机(乙)接LED发光二极管组;

P3.0和P3.1/51单片机(乙)接RS232模块的TXD、RXD;

RS232模块用串行通信电缆连接。

图5-1实验线路

两台单片机应用系统在进行通信时,如果距离较近,接口只需三根导线,将它们的串行口直接连接,即可实现双机通信,这种通信距离一般不超过15m。

如果要加大通信距离,需加入电平转换电路,如RS-232、RS-485等。

a.发送程序b.接收程序

图5-2程序流程图

2、根据图3-1实验线路进行电路连接(先不接P3.0和P3.1);

6、利用STC-ISP软件将后缀为.HEX的文件下载到单片机ROM中(下载完成后再连接P3.0和P3.1);

发送程序:

ORG00H

MOVSCON,#10000000B;

设置串行口方式2工作

MOVA,#00H

START:

INCA

MOVSBUF,A;

将A中的内容发送

WAIT0:

JNBTI,WAIT0;

等待发送完成

CLRTI;

清发送中断标志

MOVP1,A;

送到P1口显示

CALLDELAY;

延时

LJMPSTART

MOVR0,#0;

延时子程序

MOVR1,#0

LP:

DJNZR1,LP

DJNZR0,LP

END

接收程序:

ORG00H

MOVSCON,#10010000B;

;

MOVA,#00H

JNBRI,START;

等待接收完成

MOVA,SBUF;

从接收缓冲器读入数据

CLRRI;

清接收中断标志

LJMPSTART

MOVR0,#0;

1、利用串行口工作方式1实现通信功能,编写程序;

实验六串行通信的调试实验

掌握单片机串行口调试方法;

1、编写实验程序,实现单片机与PC机的串口通信,实验电路如下图6-1所示,单片机串行口则利用51单片机核心板上的通信接口,PC机侧接COM1或COM2。

要求通信波特率为2400,串口工作方式为方式1,即:

一个起始位,8个有效数据位和一个停止位。

图6-1实验原理图

2、接线方案:

无需另外接线(利用串口通信电缆进行数据通信)。

单片机侧利用P3.0和P3.1口和PC机进行串行通信,本实验中,只需要将串行通信电缆连接到51单片机核心板上即可;

PC机侧利用STC-ISP下载软件里的串口助手进行串口通信,如下图6-2所示,在串口助手的设置中,需要设置串口、波特率、校验位、停止位,无误后点击打开串口,并在发送缓冲区输入数据,点击发送数据,则可以再接收缓冲区显示所发送的内容。

图6-2STC-ISP串口助手

图6-3程序流程图

2、将C51单片机核心板上的三个开关分别拨到“独立”、”运行”“单片机”;

3、打开实验箱上的电源开关。

4、利用KeilC51创建实验程序,并进行编译生产后缀为.HEX的文件;

5、利用STC-ISP软件将后缀为.HEX的文件下载到单片机ROM中;

6、打开STC-ISP软件的串口助手,设置串口、波特率、校验位等,打开串口后在发送缓冲区输入数据,点击发送数据,观察接收缓冲区的数据变化;

若实验现象有误请重复第4~6步。

六、参考程序:

LJMPMAIN;

MOVTMOD,#20H;

设置定时器1为模式2,为波特率发生器

MOVTL1,#0F4H;

2400波特率初值,板子使用11.0592M晶振

MOVTH1,#0F4H;

SETBTR1;

启动波特率发生

MOVSCON,#50H;

串口的工作方式,设置为方式1

M1:

JNBRI,M1;

查询是否有数据接收

数据暂存于A

CLRRI;

允许接收

MOVSBUF,A;

将接收到的数据发送出去

JNBTI,M2;

CLRTI

循环扫描串行通讯接口数据

1、理解串口调试的工作原理,可否采用串口方式2实现?

2、修改程序,实现接收数据与发送数据进行个、十位交换(如:

发送为12时,接收为21)。

实验七数码管静态显示实验

1、掌握8051单片机与七段LED数码管连接的设计方法;

2、掌握LED数码管静态显示的编程方法。

1、根据图7-1所示的LED数码管连接电路(电路中U1是74LS244作为段码驱动电路;

U5和U4是SN75452,与非门,作为位选信号电路),编写实验程序,实现1位数码管的静态显示,要求:

内容为0~9循环显示。

图7-1LED数码管的连接图

P10~P17/51单片机接a、b…dp/数码管;

P2.0~P2.3/51单片机接s1~s4/数码管。

LED数码管静态显示的显示程序简单,显示亮度高,但所需的I/O端口较多,并且功耗较大。

所以静态显示常用在显示位数较少的系统中。

下表为共阴极LED数码管的段码表

图7-2程序流程图

6、观察实验现象,并记录。

SMG_qEQUP2.0;

定义数码管阳级控制脚,千位

SMG_bEQUP2.1;

定义数码管阳级控制脚,百位

SMG_sEQUP2.2;

定义数码管阳级控制脚,十位

SMG_gEQUP2.3;

定义数码管阳级控制脚,个位

ORG0100

TABLE:

DB3Fh,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH;

共阴数码管0-9

ORG0000H;

程序开始

SETBSMG_q;

选择千位数码管,静态显示

CLRSMG_b

CLRSMG_s

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

当前位置:首页 > 解决方案 > 学习计划

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

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