51单片机实验指导书

更新时间:2023-08-09 05:57:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

51系列单片机 原理与应用实验

华南师范大学物理与工程工程学院

微机实验室 2008年9月

目录

实验须知 2 实验一 交通灯控制实验

5

实验二 现实人体视觉暂留特性测试实验 8 实验三 实施时钟制作实验 实验四 简易电子琴制作实验… 实验五 EEPROM应用—数字密码锁 实验六 综合实验:教学板自检程序设计 实验七 数据采集—火灾报警装置的软硬件设计 附录一 实验教学板 附录二 实验用软件使用说明 烧录软件的使用

10 11 14 19

20

21

22 27

实 验 须 知

一、 预习要求

1.实验前认真阅读实验指导书的相关内容,明确实验目的和实验任务。 2.实验前应做好预习报告,在报告中,要求画出所设计的实验电路原理图、程

序流程图,编写好程序,并对程序加以注释,还要拟订好实验步骤。

二、 实验要求

1.按实验中心安排的时间到指定实验室上实验课,不要迟到、缺席。有特殊原

因不能在原安排时间来实验时,须提前一天通知实验中心负责教师。 2.认真完成每次实验的各项任务,实验结果要请指导教师检查。教师对实验内

容提问,并对完成者进行记录。

3.爱护设备,保持清洁,不得在实验室内大声喧哗,不要将食物带入实验室,

不擅自更换设备。

4.在实验箱(板)通电状态下,不要用手随意触摸电路板上除按键和开关以外

的芯片等其它元器件。,严禁带电操作,即所有接线、改线和拆线操作均应在不带电的状态下进行。

5.实验中若发生异常情况应立即切断电源,并向指导教师报告,检查原因,避

免再次发生类似情况。

6.实验完毕,请整理好实验设备后再离开实验室。

三、 实验报告要求

实验报告必须使用实验报告专用纸,书写要工整、清楚,并在下一次实验时交给指导教师。实验报告应包括以下内容:

1.实验名称、实验人姓名、学号、班级、同组人姓名。 2.实验目的、任务(内容)。

3.各任务程序流程图、自编程序清单,对程序须给出适量注释(例如:变量和

某些寄存器的作用,关键程序段的功能等)。 4.应画出所设计的完整实验电路图。

5.记录和分析实验调试过程中遇到的问题并给以合理的解释,简述是如何解决

的。记录实验结果, 6.解答思考题。

实验一 交通灯控制实验

一、

实验目的

1. 熟悉教学板电路及其结构。

2. 掌握利用 Kei l C51 软件编辑、调试(包括仿真调试、单步调试)、运行单

片机程序的步骤和方法,掌握利用STC-ISP V39下载线和相应的软件将程序写入单片机的方法 。

3. 通过实验熟悉51单片机的并行I/O口,并掌握它们的应用。 4. 学习延时程序的编写。 二、

实验设备

PC机一台 、 实验教学板一块。 三、

实验准备

1. 阅读实验讲义附录一、 实验教学板电路图和附录二、 Kei l C51 软件使用说明

2. 按实验题目要求设计好硬件电路,画出电路原理图,并设计出相应程序,要求画出主程序、子程序、中断服务程序流程图,并给程序加上较详细的注释。 四、

实验内容及原理

模拟实现一个路口交通灯管理

在路口当中,一条为“干线”,另一条为“支线”。两个方向上各设有红、黄、绿3盏交通灯。

一般情况下(初始状态),干线亮绿灯,支线亮红灯。当支线上有三辆车到达路口(用按键按下模拟一辆车到达),则6秒后,干线亮黄灯,持续3秒后,转为干线亮红灯,支线亮绿灯,过24秒后,支线转黄灯亮,3秒后,回到初始状态。

五、实验步骤

1. 将实验板与PC机通过COM口连接。

启动PC机,进入Kei l C51软件环境,选择建立新工程文件,即可开始输入源程序。

2.完成汇编、连接,若有错误,则修改源程序,直至汇编、连接通过为止。 3.接上实验板上的电源。

3. 运行“STC-ISP V39.EXE”,将程序代码下载到实验板的单片机中。操作的顺序是:

1)选择单片机(MCU TYPE)型号。

如:“STC89C51RC”要与实验板上所装单片机的型号一至。 2)打开文件(Open File)。

即把要下载到单片机的程序文件(已通过编译了的机器码文件——二进

制(.Bin)或十六进制(.Hex)的)调到“文件缓冲区”,这时可看到右边的“文件缓冲区” 有数字变化。

3)选择串行通信口。

选对时,软件上的小灯会变绿。否则小灯是灰色。且在左下窗口提示“出

错信息”。

4)下载:按“Download/下载”按键下载。

5)把实验板上的供电的直流电源拔掉或关掉3秒钟--再插入或打开电源(为

单片机上电复位)。

注意: 4)和5)顺序不能反!

4.观察单片机运行情况,验证程序是否能完成题目给出的控制要求,若不能达到要求,分析原因、查找错误,修改源程序,再次汇编、连接,重新下载、运行,直至达到题目的控制要求。

六、 思考题

如何仿真和调试单片机应用程序?

附:交通灯实验 程序

ORG 0000H STA:

MOV P0,#11011011B ;干线亮绿灯,支线亮红灯 MOV P2,#0001000B ;选通LED

MOV P3,#11101111B ;K1列线置0

MOV R7,#3

;无按键等待

STA1: JB P3.3,$ LCALL DELAY30MS ;去抖动 JB P3.3,STA1 JNB

P3.3,$

;等键释放

DJNZ R7,STA1

MOV R6,#200

STA2: LCALL DELAY30MS DJNZ R6,STA2

MOV P0,#10111011B

MoV

R6,#100

STA3: LCALL DELAY30MS DJNZ R6,STA3

MOV P0,#01111110B

MOV R5,#4

STA4: MOV R6,#200 STA5: LCALL DELAY30MS DJNZ R6,STA5 DJNZ R5,STA4

MOV P0,#01111101B

MOV R6,#100

STA6: LCALL DELAY30MS DJNZ R6,STA6

LJMP STA

DELAY30MS:MOV R4,#55 DELAY:MOV R3,#250 DJNZ R3,$

DJNZ R4,DELAY

RET

;延时30MS ;延时6秒

;干线亮黄灯,支线亮红灯 ;延时3秒

;干线亮红灯,支线亮绿灯 ;延时24秒

;干线亮绿灯,支线亮黄灯 ;延时3秒

;1.085us(指令周期)*2*250+2=547.5us

实验二 人体视觉暂留特性测试实验

一、 实验目的

1.进一步熟悉利用 Kei l C51 软件编辑、调试(包括仿真调试、单步调试)和运行单片机程序的步骤和方法。

2.通过实验熟悉51单片机的定时/计数器,并掌握它们的应用。 3.掌握键盘、LED显示的工作原理。 4. 学习编写定时和外中断服务程序

二、 实验设备

PC机一台 、 实验教学板一块。

三、 实验内容及原理

人体视觉暂留特性测试实验

编程从一个I/O口输出一扫频信号,驱动一支LED灯闪动,频率范围为10HZ~99HZ,扫描时间为30秒,在LED闪动期间观察,一旦发现无法识别LED灯闪动时,按下按键K1,立即停止输出,并将此时的信号频率显示在数码管上,该信号的周期为测试者的视觉暂留时间。

四、实验要求

1.按实验题目要求设计好硬件电路,画出电路原理图。

2. 要求画出主程序、子程序、中断服务程序流程图,设计出相应程序并给程序加上较详细的注释。

3. 在Keil C51编译环境下完成程序编译。

4. 通过下载线和下载软件STC-ISP V39将编译后的程序下载到单片机。 5. 运行程序,用实验结果验证程序的正确性。若不能达到要求,分析原因、查找错误,修改源程序,再次汇编、连接,重新下载、运行,直至达到题目的要求。 五、思考题

1、实验中频率数据是怎样计算出来的? 2、总结数码管动态显示方法。

程序流程图

主程序

输出波形

输出频率与定时器初值关系表

实验三 实时时钟制作实验

一、 实验目的

1.通过实验进一步掌握51单片机的定时/计数器的应用。 2.掌握矩阵键盘、LED动态显示的工作原理。

3.学习编写实用的时钟程序和矩阵键盘处理、LED动态显示控制程序。 二、实验设备

PC机一台 、 实验教学板一块。 三、实验内容及原理

在内存中设置若干个单元存放时钟参数:年、月、日、时、分、秒,开机时所有参数设定一起始值。编程利用定时器T0或T1定时,在定时中断服务程序中修改时钟参数,而主程序则完成按键处理和时钟显示。

要求:可通过按键对各参数进行修改,并可根据按键循环设置时钟显示内容,显示格式如下:

年 2008 时分 XX.XX 分秒 XX.XX.

月日 XX.XX

按键的设置和使用方法自行决定。 四、实验要求

1.按实验题目要求设计好硬件电路,画出电路原理图。 2. 制定按键的功能和使用方法。

3. 要求画出主程序、子程序、中断服务程序流程图,设计出相应程序并给程序加上较详细的注释。

4. 在Keil C51编译环境下完成程序编译。

5. 通过下载线和下载软件STC-ISP V39将编译后的程序下载到单片机。 6. 运行程序,用实验结果验证程序的正确性。若不能达到要求,分析原因、查找错误,修改源程序,再次汇编、连接,重新下载、运行,直至达到题目的要求。 五、

思考题

1. 如何增加显示的亮度?

2. 若想用按键快速修改时间参数,有什么好办法?

实验四 制作简易电子琴的实验

一、 实验目的

1.通过实验进一步掌握51单片机的定时/计数器的应用。 2.掌握51单片机的外断原理及应用。 3. 学习系统应用程序的设计和调试方法

二、实验设备

PC机一台 、 实验教学板一块。

三、实验原理

实验线路见图4-1,通过定时器的定时,产生一定频率的信号,经P2.5输出,驱动蜂鸣器,便可发出某一频率的音调,若按一支乐曲规定的音调和节拍改变输出的变化,即可演奏一首乐曲。

图4-1 音乐输出线路

四、实验内容

1.电子琴功能

用实验板上K1~K7作为电子琴的7个按键,每个按键对应一个音符,规定频

要求当按下其中一个按键,就通过P2.5口输出对应频率信号使蜂鸣器发出特定音符声音。

2.乐曲演奏

若按下K8键,完成自动弹奏“送别”歌曲。(乐谱见教材258页)

其原理为:乐曲的弹奏的旋律,除了用声音的大小来表现外,主要是用音符和节

拍来控制。不同的音符表示不同的发出不同的高低音,声音的频率也就不同。单片机产生音符的输出控制是由定时器来完成,不同的定时值产生不同的输出频率,使蜂鸣器发生对应的音调声音,表1给出了音符与频率之间的关系。节拍据是表示当前音符输出时间长短,每一个节拍的时间长短表示了乐曲的旋律的快慢。对于节拍控制单片机可以用延时子程序来完成,方法是以乐曲1/4拍为单位,进行延时控制,单位延时时间的长短代表了乐曲不同的演奏的速度。若要实现1/2节拍的时间控制,则用2个延时单位来完成,假定1/4拍是延时0.125秒,1/2拍则延时0.25秒,1拍为延时0.5秒,其余依此类推。

程序设计时应先将乐曲音符和节拍转换成数据表,存于计算机的ROM中。 数据表的设计方法如下:

(1)表中的一个字节代表乐曲的中一位简谱的音符与该音符的节拍。高4位用于表示音符,数字与音符的关系如表2;低4位用于表示节拍,数字与节拍及延时时间关系如表3.

(2)按乐曲中乐谱顺序将所有的音符和节拍进行编码,得出数据表,最后以00H作为音乐结束标志。

表2: 表3:

四、实验要求

1.按实验题目要求设计好硬件电路,画出电路原理图。

2. 要求画出主程序、子程序、中断服务程序流程图,设计出相应程序并给程序加上较详细的注释。

3. 在Keil C51编译环境下完成程序编译。

4. 通过下载线和下载软件STC-ISP V39将编译后的程序下载到单片机。 5. 运行程序,用实验结果验证程序的正确性。若不能达到要求,分析原因、查找错误,修改源程序,再次汇编、连接,重新下载、运行,直至达到题目的要求。

六、思考题

1、结合实验板上的电路,设计一个可以任意选曲播放的电子音乐盒。 2、总结矩阵键盘的识别方法。

参考流程图

实验五、EEPROM应用—数字密码锁

一、实验目的

1.通过实验掌握EEPROM使用 2. 学习I2C的使用

3.学习系统应用程序的设计和调试方法。

二、实验设备

PC机一台 、 实验教学板一块。

三、实验内容及原理

设计数字密码锁的电路和应用程序。密码锁的基本功能如下:

1.密码锁有两个密码:一是设计密码,放存在ROM中;另一个是使用密码,存于EEPROM中。

2..密码锁的密码用4位有效数字,输入超过4位时以最后输入4位数字为准,数字范围由1~6。

3. 用实验板上K1—K6键作密码数字输入键,分别表示1~6数字,K7,K8键为命令键。其中,K7为密码设置键,K8为开锁键。蜂鸣器用作开锁指示。

4. 开机后进入初始状态,显示器显示“— — — —” 且最高一位闪动,闪动位亦表示当前数字输入位,以后每输入一位数字,闪动位向右循环移动。 5.开锁功能:在初始状态下,从K1—K6键输入密码,再按K8键。

若输入密码的最后4位数与存EEPROM的使用密码内容相同或与存于ROM中的设计密码相同,则开锁成功,并用蜂码器发声指示。 否则输入错误返回初始状态。

开锁状态维持 60秒,超过时间,则自动关闭开锁状态,同时停止声音输出。 6.修改密码功能,在开锁状态下,用K1~K6键输入4位新的使用密码,若超过4位数则以最后4位数为准,然后按K7键,则完成密码修改。新密码存到

EEPROM中,覆盖原来的使用密码,且新密码闪动三下,表示修改成功。完成

后自动回到初始状态。 若不在开锁状态或在开锁状态下数字键输入不足4位,按K7键就无效,返回初始状态。

以上3~6项也可根据自己的喜好自行设计。 四、实验要求

1.按实验题目要求设计好硬件电路,画出电路原理图。 2. 确定系统功能。

3. 根据给出的程序流程图,设计出相应程序并给程序加上较详细的注释。 4. 在Keil C51编译环境下完成程序编译。

5. 通过下载线和下载软件STC-ISP V39将编译后的程序下载到单片机。 6. 运行程序,用实验结果验证程序的正确性。若不能达到要求,分析原因、查找错误,修改源程序,再次汇编、连接,重新下载、运行,直至达到题目的要求。

六、

思考题

1、编写I2C总线的应用程序时要注意哪些问题?

参考流程图

实验六 教学板自检程序设计

一、实验目的

1.通过实验掌握EEPROM使用 2. 掌握串行A/D的应用

3. 掌握单片机串行通信收发接口的使用 4.学习系统应用程序的设计和调试方法。 二、实验设备

PC机一台 、 实验教学板一块。 三、实验内容及原理

程序运行前先将TXD、RDX短接。 程序完成以下功能:

1.自检程序先将所有的数码管点亮,显示0~9,每秒变换一次。 2. 编写走马灯程序,使LED逐位显示一次

3.自检程序将EEPROM所有单元置0,并读出检查是否为0,再置EEPROM所有单元为FFH,并读出检查是否为全1。若不成功则显示器显示“Er r 1” 。

4.启动串行口进行自发自收,检查发、收的数据是否相同。不成功则显示“Er r 2” 。 5. 启动A/D,并在数码管上显示A/D转换值。 6. 等待按键,按任一键则蜂鸣器发声0.5秒一次。 四、实验要求

1.按实验题目要求设计好硬件电路,画出电路原理图。

2. 要求画出主程序、子程序、中断服务程序流程图,设计出相应程序并给程序加上较详细的注释。

3. 在Keil C51编译环境下完成程序编译。

4. 通过下载线和下载软件STC-ISP V39将编译后的程序下载到单片机。 5. 运行程序,用实验结果验证程序的正确性。若不能达到要求,分析原因、查找错误,修改源程序,再次汇编、连接,重新下载、运行,直至达到题目的要求。 五、思考题

1、若要8路A/D,在原有的电路上应作如何修改?

2、这块实验板的串行通信的速度最高能够做到多少波特率?请给出计算方法 和初始设置的程序。

实验七:数据采集—火灾报警装置的软硬件设计 一、实验目的

1.掌握串行A/D的应用 2. 掌握单总线器件18B20的应用 3. 掌握温度的检测方法

4.学习系统应用程序的设计和调试方法。

二、实验设备

PC机一台 、 实验教学板一块。18B20芯片一块,390欧电阻、1K电位器各一个

三、实验内容及原理

完成一个火灾数据采集系统的硬件电路的设计。编写和调试运行程序。系统主要技术指标如下:

1.系统监测1路可燃气体的浓度

注:传感器在浓度从00~100%LEL(Low Expiosion Limit,爆炸极限)输出4~20mA的信号(可用电位器替代)

2.系统监测1路温度的变化值

3.设若干位显示,设置按键进行浓度、温度显示转换。 4.系统可设置气体浓度安全值,温度变化的安全值。 5.一旦超出安全范围则进入自动报警。 四、实验要求

1.按实验题目要求设计好硬件电路,画出电路原理图。 2. 说明电路原理,设计指标,系统操作方法。

3. 要求画出主程序、子程序、中断服务程序流程图,设计出相应程序并给程序

加上较详细的注释。

4. 在Keil C51编译环境下完成程序编译。

5. 通过下载线和下载软件STC-ISP V39将编译后的程序下载到单片机。 6. 运行程序,用实验结果验证程序的正确性。若不能达到要求,分析原因、查

找错误,修改源程序,再次汇编、连接,重新下载、运行,直至达到题目的要求。

五、编写设计报告

本文来源:https://www.bwwdw.com/article/ihkj.html

Top