您好,欢迎来到六九路网。
搜索
您的当前位置:首页51单片机实验指导书

51单片机实验指导书

来源:六九路网


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

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

微机教研室

20010年9月

目录

实验须知 „„„„„„„„„„„„„„„2 实验一 数字量输入输出实验 „„„„„„„„„„„„„„„4 实验二 交通灯控制实验

„„„„„„„„„„„„„„„ 6

实验三 定时与中断实验 实验四 串行通信实验 实验五 串行A/D转换实验

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

2

„„„„„„„„„„„„„„„8 „„„„„„„„„„„„„„„11 „„„„„„„„„„„„„„ 13

„„„„„„„„„„„„„„ 14 „„„„„„„„„„„„„„17 „„„„„„„„„„„„„„18 „„„„„„„„„„„„„„„20 „„„„„„„„„„„„„„„25

„„„„„„„„„„„„„„„26

„„„„„„„„„„„„„„„27

„„„„„„„„„„„„„ „28

实 验 须 知

一、 预习要求

1. 实验前认真阅读实验指导书的相关内容,明确实验目的和实验任务。

2. 实验前应做好预习报告,在报告中,要求画出所设计的实验电路原理图、程序流程图,编

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

二、 实验要求

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

排时间来实验时,须提前一天通知实验中心负责教师。

2. 认真完成每次实验的各项任务,实验结果要请指导教师检查。教师对实验内容提问,并对

完成者进行记录。

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

备。

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

元器件。,严禁带电操作,即所有接线、改线和拆线操作均应在不带电的状态下进行。 5. 实验中若发生异常情况应立即切断电源,并向指导教师报告,检查原因,避免再次发生类

似情况。

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

三、 实验报告要求

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

验报告应包括以下内容:

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

3. 各任务程序流程图、自编程序清单,对程序须给出适量注释(例如:变量和某些寄存器的作用,关键程序段的功能等)。 4. 应画出所设计的完整实验电路图。

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

结果, 6. 解答思考题。

3

1.2. 实验一 数字量输入输出实验 一、 实验目的

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

2. 掌握利用μVision C51 软件编辑、调试(包括仿真调试、单步调试)、运行单片机程序的

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

3. 通过实验熟悉51单片机的并行I/O口,并掌握它们的应用。 4. 掌握矩阵键盘、LED动态显示的工作原理。 二、 实验设备

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

三、 实验准备

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

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

四、 实验内容

1.实验线路如附图所示,51单片机的P0口输出接8个发光二极管的阴极,P2.4经NPN三极管9011控制发光管的阳极。P3口支持一个8位行列式键盘,其中P3.4~P3.7供键盘扫描输出, P3.2、P3.3作键盘扫描输入。

实验要求:编程实现键盘对发光二极管的控制,每按一个按键,使对应的二极管点亮。 2.51单片机P0口输出同时接4个数码管的阴极,P2.0~P2.3,经NPN三极管9011接数

码管的阳极,该端口用于分别控制相应数码管的导通。

实验要求:编程实现对任意按键动作的次数进行计数(最大99次),同时将计数值实时显示。

五、实验步骤

1. 将实验板与PC机通过COM口连接。启动PC机,进入μVision软件环境,选择建立新工

程文件,即可开始输入源程序。

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

3. 运行“STC-ISP V39.EXE”,将程序代码下载到实验板的单片机中。操作的顺序是: 1)选择单片机(MCU TYPE)型号。

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

即把要下载到单片机的程序文件(已通过编译了的机器码文件——二进制(.Bin)或十六进制(.Hex)的)调到“文件缓冲区”,这时可看到右边的“文件缓冲区” 有数字变化。

3)选择串行通信口。

选对时,软件上的小灯会变绿。否则小灯是灰色。且在左下窗口提示“出错信息”。 4)下载:按“Download/下载”按键下载。

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

位)。

4

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

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

六、 参考程序流程图

实验内容1流程图

实验内容2流程图

键盘处理程序流程图

七、 思考题

1. 在调试程序过长中,你是如何发现程序中的错误? 2. 按键程序为什么要有去抖动功能,如何去抖动?

3. 在显示时,为什么要延时1ms,这个时间过长或过短,会出现什么现象?

5

实验二 交通灯控制实验

一、

实验目的

通过实验熟悉51单片机的并行I/O口,并掌握它们的应用。

二、 实验设备

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

一、 实验内容及原理

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

在路口当中,一条为“干线”,另一条为“支线”。两个方向上各设有红、黄、绿3盏交通灯。 一般情况下(初始状态),干线亮绿灯,支线亮红灯。当支线上有三辆车到达路口(用按键按下模拟一辆车到达),则6秒后,干线亮黄灯,持续3秒后,转为干线亮红灯,支线亮绿灯,过24秒后,支线转黄灯亮,3秒后,回到初始状态。

二、 思考题

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

附:交通灯实验 程序

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

6

JNB P3.3,$ ;等键释放

DJNZ R7,STA1 MOV R6,#200

STA2: LCALL DELAY30MS ;延时30MS DJNZ R6,STA2

;延时6秒

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

;延时3秒

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

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

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

实验三 定时与中断实验

三、 实验目的

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

四、 实验设备

PC机一台 、 实验教学板一块。 图2-1

三、 实验内容

实验线路如图2-1, 通过定时器的定时,产生一定频率的波形信号,经P2.5输出,驱动蜂鸣器,便可发出某一频率的音调,若按乐曲的音调连续发出,并使其按节拍变化,便可演奏一首乐曲。

实验要求:编程实现演奏一首乐曲

C调常用音频及其对应频率如下表: 音符 7 SI 频率 494 523 587 659 698 T值 603 6 751 837 875 音符 5 So 6 La 7 Si 频率 784 880 987 1046 1174 T值 948 65012 65069 65095 65143 1 DO 2 Re 3 Mi 4 Fa  DO 1 RE 2定时器初值计算方法:由于软件是通过定时器溢出后对P2.5取反产生方波,故定时器溢出时间为1//2f,则计数器计数初值为:

X = 65536 — n = 65536— (1/2f)/12/fosc = 65536— fosc/24f

电路板上的晶振频率为 11.0593MHZ,根据不同音调的频率值,就可以计算出上表的初值。

用乐曲最短的1/4拍为一个基本节拍时间,定为0.5秒,基本节拍时间由另一个定时器产生,设此定时器定时时间为50ms,定时时间常数(计数器初值)= 65536 —(50000*12/11.0593)=02C13H,可以分别通过该定时中断10、20、40、80次满足1/4拍、1/2拍、1拍、2拍的定时要求。

软件编程时,要先将乐谱转换成包含有音符和音长信息的代码,然后,以查表方式通过乐谱代码控制喇叭演奏出乐曲。具体方法如下:

(1) 乐谱代码用字节结构,字节高4位代表音符,从SI到RE分别用0到9表示;字节低4

位代表该音符的节拍,用1、2、3、、、8分别表示1/4拍、1/2拍、1拍、、、4拍,按照这

8

样的规则,将整段音乐变换成相应的代码数据表,最后一个字节内容为00H,代表数据表的结束。

(2) 在程序执行时按顺序查表,从字节数据中取出音符代码和节拍代码,查频率表得该音

符对应频率的定时初值,再根据节拍代码控制音长,启动两个定时器后,即可发出要求的音,这样就控制演奏出完整的乐曲。

四、实验参考汇编主程序:

ORG 0000H RESET: AJMP MAIN

ORG 000BH AJMP TT0P ORG 001BH

AJMP TT1P 0RG 0020H MAIN: MOV SP,#70H CLR P2.5 MOV IE,#**H MOV R1,#0H ACALL PTOM2 CLR TR0 CLR TR1 CLR P2.5 HERR: AJMP HERR

PTOM: MOV TMOD,#****H PTOM1: MOV DPTR,#MUCI MOV A,R1

MOVC A,@A+DPTR JNZ PTOM2 RET PTOM2: MOV R2,A ANL A,#0F0H SWAP A RL A MOV R3,A

MOV DPTR,#TABL MOVC A,@A+DPTR MOV TH0,A MOV A,R3 INC A

MOVC A,@A+DPTR MOV TL0,A MOV A,R2 ANL

A,#0FH

;定时器0中断入口 ;定时器1中断入口

;设堆栈区 ;关声音

;开中断(参数自己填写) ;乐谱数据表偏移量 ;调乐曲输出子程序 ;停止定时器的工作 ;关声音 ;程序结束

;设定时器的工作方式(参数自己填写) ;乐曲数据表首地址送DPTR ;取乐谱数据 ;数据为00时结束 ;暂存

;保留音符数据

;乘2(每个音符要2个字节的定时值) ;频率表

;查表得定时高8位

;查表得定时值低8位

;保留节拍数据

9

MOV B,#8 MUL AB ;乘8得定时中断次数 MOV R0,A MOV TH1,#2CH ; 50ms定时的初值 MOV TL1,#13H SETB TR1 ;启动定时器 SETB TR0

HERE: CJNE R0,#0H,HERE ;当前的节拍时间完成了? INC R1 ;是,准备取下一个数据 AJMP PTOM1

TT0P: 自编定时器0中断服务程序 … …

TT1P: 自编定时器1中断服务程序 … …

TABL: DW 603,6,751,837… …

;乐曲“送别”的数据表

MUCI: DB H,32H,52H,88H,H,82H,62H,58H,H,12H,22H,34H

DB 22H,12H,2CH,H,32H,52H,86H,72H,H,84H,58H,H DB 22H,32H,46H,02H,1CH,H,84H,88H,74H,62H,72H,88H DB 62H 72H,82H,62H,62H,52H,32H,12H,28H,28H,H,32H DB 52H 84H 72H,H,86H,58H,H,22H,32H,46H,02H,1CH DB 00H

五、思考题

1.总结程序调试的方法。

2.根据实验板,设计一个任意乐曲的音乐盒子,并给出程序流程图。

10

实验四 串行通信实验

一、实验目的

1.了解51单片机串行口的结构、串行通讯的原理。 2.掌握51单片机与PC机之间通讯的方法。 3. 学习系统应用程序的设计和调试

二、实验设备

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

三、实验原理

51单片机的串行接口是全双工的,它能做异步接收器/发送器(UART),也能做同步移位寄存器使用。在做UART使用时,相关的寄存器有SBUF、SCON、和PCON中的波特率倍增位SMOD。

SBUF是数据发送缓冲器和接收缓冲器,逻辑上用同一个地址,物理上是分开的,用读写操作来选择。SCON是串行口控制寄存器,用于设定串行口的工作方式;保存方式2和方式3的第9位数据;存放发送、接收的中断标志。在串行通讯的方式1和方式3中,通信的波特率是可以设置的,满足下式:

2SMOD(定时器/计数器1的溢出率) 波特率 32

PC机的串行通讯口是借助通用异步接收发送器8250(或16C550等)实现的,可使用comdebug.exe等提供了有关串行口的收、发操作窗口的软件实现通讯。PC机的串行通讯采用RS232电平,因此要求单片机的实验板也要配置RS232接口,解决逻辑电平的配接。如果通讯距离较远,则要配接调制解调器。

四、实验内容

1, 自发自收 用一根短路线,将实验板中RS232插口的RXD和TXD两个插孔短路。然后编程设定串行口为工作方式1,传送55H和0AAH两个数据。

实验要求:程序采用查询方式。每传送、接收一个数据,做一次检查,看是否正确,若两次都正确,则在显示器上显示“GOOD”,若不正确,则不显示,并要重新传送。

2, 单片机与PC机的通信

先使用通讯电缆将单片机的RS232接口与PC机的COM1口连接,PC机起动并运行comdebug.exe软件,窗口上设置波特率为1200,8位数据、一个停止位。单片机端也采用工作方式1,波特率为1200,完成单片机与PC机的通信。

实验要求:编程实现先由单片机发送8个数据,01、02、03、04、05、0ABH、0CDH、0EFH。然后进入接收状态,在PC机发送窗口上设置发送数据,点击发送按钮,单片机接收数据后将数据显示在显示器上。

五 、程序参考流程图

11

(a)自发自收程序流程图 (b)与PC机通讯程序流程图

六、思考题

1.波特率能否置为1000,为什么?

2.数据传输时,若要加奇偶校验,单片机和PC机要怎样做?

12

实验五 串行A/D转换实验

一、实验目的

2. 了解串行总线接口A/D转换器件TLC9的工作原理,掌握其使用和编程。 3. 掌握模拟数据采集的方法。 二、实验设备

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

三、实验原理

TLC9是一个串行方式传输的8位A/D芯片,可与通用微处理器、控制器通过I/OCLOCK、CS、DATAOUT三条口线进行串行连接。其片内有4MHz的系统时钟和软、硬件控制电路,转换时间最长17μs。总失调误差最大为±0.5LSB,典型功耗值为6mW。TLC549的片内系统时钟与I/OCLOCK是工作的,无须特殊的速度或相位匹配,其工作时序如图2所示。当CS为高时,数据输出(DATAOUT)端处于高阻状态,此时I/OCLOCK不起作用。这种CS控制作用允许在同时使用多片TLC549时,共用I/OCLOCK,以减少多路(片)A/D并用时占用的I/O控制端口。一组常用控制时序为:

(1) 将CS置低, 内部电路在测得CS下降沿后, 在等待两个内部时钟上升沿和一个下降沿后, 再确认这一变化, 最后自动将前一次转换结果的最高位(D7)输出到DATA OUT端;

(2) 在前四个I/O CLOCK周期的下降沿依次移出第2、3、4 、5个转换位(D6, D5, D4, D3), 片上采样保持电路在第4个I/O CLOCK下降沿开始采样模拟输入;

(3) 接下来的3个I/O CLOCK周期的下降沿可移出第6、7、8 (D2, D1, D0) 各转换位。然后使保持功能持续4个内部时钟周期, 接着开始进行32个内部时钟周期的A/D转换。在这第8个I/O CLOCK后, CS必须为高或I/OCLOCK保持低电平, 这种状态需要维持36个内部系统时钟周期以等待保持和转换工作的完成。如果CS 为低时, I/O CLOCK上出现一个有效干扰脉冲, 则微处理器/控制器将与器件的I/O 时序失去同步; 而在CS为高时若出现一次有效低电平, 则将使引脚重新初始化, 从而脱离原转换过程。在36个内部系统时钟周期结束之前, 实施步骤(1)~ (4), 可重新启动一次新的A/D 转换, 与此同时, 正在进行的转换将终止。但应注意, 此时的输出是前一次的转换结果而不是正在进行的转换结果。若要在特定的时刻采样模拟信号, 则应使第8个I/O CLOCK时钟的下降沿与该时刻对应。因为芯片虽在第4个I/O CLOCK时钟的下降沿开始采样, 却在第8个I/O CLOCK的下降沿才开始保存。

四、实验内容

1. 编程采集模拟数据,并进行A/D转换,采集周期为0.1秒,时间要求用定时器来控制,每次定时结束,启动一次A/D,并将转换值用二十进制数方式在数码管上显示。

实验要求:程序运行后先将A/D的输入置0(接地),观察显示值是否为0,再将A/D的输入端接5V,观察A/D显示值是否为255,然后用手直接接触A/D的输入端,用人体感应作为A/D的输入,观察显示器上显示数值的变化。

五、实验参考程序流程图

六、思考题

1.给出A/D转换的程序流程图

2.说明A/D转换值与输入电压的关系。 主程序 流程框图

13

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

一、 实验目的

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

2. 学习运用单片机完成一个较为简单的一应用系统的设计

二、实验设备

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

三、实验内容及原理

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

四、实验要求

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

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

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

4. 通过下载线和下载软件STC-ISP V39将编译后的程序下载到单片机。

5. 运行程序,用实验结果验证程序的正确性。若不能达到要求,分析原因、查找错误,修改源程序,再次汇编、连接,重新下载、运行,直至达到题目的要求。

五、思考题

1、实验中频率数据是怎样计算出来的?

2、总结数码管动态显示方法。

14

程序流程图

主程序

输出波形

15

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

定时器初值 偏移地址 初值216 11.05926频率 21210频率值 TABL+0 TABL+2 TABL+4 TABL+6 TABL+8 „ TABL+194 TABL+196 TABL+198

TH TL TH TL TH TL TH TL TH TL TH TL TH TL TH TL

4CH 00H 5CH 5DH 6AH 00H 75H H 7FH 6DH „ EDH 71H EDH A1H EDH D1H 10HZ 11HZ 12HZ 13HZ 14HZ „ 97HZ 98HZ 99HZ

16

实验七 实时时钟制作实验

一、 实验目的

通过实验掌握51单片机的定时/计数器、键盘、LED显示的综合运用。

二、实验设备

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

三、实验内容及原理

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

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

年 2008

月日 XX.XX

时分 XX.XX 分秒 XX.XX.

按键的设置和使用方法自行决定。

四、实验要求

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

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

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

5. 通过下载线和下载软件STC-ISP V39将编译后的程序下载到单片机。

6. 运行程序,用实验结果验证程序的正确性。若不能达到要求,分析原因、查找错误,修改源程序,再次汇编、连接,重新下载、运行,直至达到题目的要求。

五、思考题

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

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

17

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

一、 实验目的

1.通过实验学习系统应用程序的设计和调试方法 二、 实验设备

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

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

图4-1 音乐输出线路

四、 实验内容

1.电子琴功能

用实验板上K1~K7作为电子琴的7个按键,每个按键对应一个音符,规定频率如表1: 音符 7 SI 频率 494 523 587 659 698 T值 603 6 751 837 875 音符 5 So 6 La 7 Si 频率 784 880 987 1046 1174 T值 948 65012 65069 65095 65143 1 DO 2 Re 3 Mi 4 Fa  DO 1 RE 2要求当按下其中一个按键,就通过P2.5口输出对应频率信号使蜂鸣器发出特定音符声音。 2. 乐曲演奏

参考实验二的内容,设计一个音乐盒,可自动弹奏多首歌曲。

五、实验要求

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

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

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

18

4. 通过下载线和下载软件STC-ISP V39将编译后的程序下载到单片机。

5. 运行程序,用实验结果验证程序的正确性。若不能达到要求,分析原因、查找错误,修改源程序,再次汇编、连接,重新下载、运行,直至达到题目的要求。

六、思考题

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

参考流程图

19

实验九、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. 确定系统功能。

20

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

5. 通过下载线和下载软件STC-ISP V39将编译后的程序下载到单片机。

6. 运行程序,用实验结果验证程序的正确性。若不能达到要求,分析原因、查找错误,修改源程序,再次汇编、连接,重新下载、运行,直至达到题目的要求。

五、 思考题

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

参考流程图

21

22

23

24

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

一、实验目的

1. 掌握串行A/D的应用

2. 掌握单片机串行通信收发接口的使用 3.学习一般应用系统自检程序的设计方法。

二、实验设备

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

三、实验内容及原理

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

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

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

四、实验要求

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

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

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

4. 通过下载线和下载软件STC-ISP V39将编译后的程序下载到单片机。

5. 运行程序,用实验结果验证程序的正确性。若不能达到要求,分析原因、查找错误,修改源程序,再次汇编、连接,重新下载、运行,直至达到题目的要求。

五 、思考题

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

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

25

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

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. 运行程序,用实验结果验证程序的正确性。若不能达到要求,分析原因、查找错误,修改源程序,再次汇编、连接,重新下载、运行,直至达到题目的要求。

五、编写设计报告

26

附录一 实验教学板电路原理图

27

附录二 µVision3 软件使用说明

1、打开程序: 双击程序

2、新建工程:Project → New Project→保存工程→选择CPU(一般选ATMEL公司的ATS51)

28

3、设置工程:右击→Options for ‘Target 1’ →

(输出HEX文件)。

→选择Create HEX

29

4、新建源文件:选File→New→输入、编辑源程序→保存序:文件名.c)

(汇编源程序:文件名.asm;C源程

5、为工程

添加源文件:在

Project出口File页上单击文件组,选择Add Files to Group‘Source Group 1’选项,选择你的源文件和文件类型,然后点击ADD,再点击close。

6、编译:点击 ,或右击Target 1 →Build Target F7,就可对源程序进行编译。当程序有语法错误时,会在输出窗口(Output Windows)中显示错误信息和警告信息,修改编译成功后会生成 HEX文件。

7、下载、调试: 编译成功后,用在线烧录程序将.HEX文件下载到单片机内部ROM中运行,在运行过程中若发现错误要重新修改程序,并编译后再下载运行。

30

STC-ISP V39软件的使用

1、打开在线烧录程序 2、选择MCU类型(STCC51RC)

3、点击, 打开工程目录下的hex文件 4、选择端口(一般是COM1) 5、点击Download烧录程序

6、 打开实验板上的电源(如果烧录的时候出现问题,点击stop)

注意: 5、6 两步骤的顺序不能颠倒!即在点击Download之前要先关掉实验板上的电源。

31

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- 69lv.com 版权所有 湘ICP备2023021910号-1

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务