当前位置:文档之家› 修改新编单片机实验指导书

修改新编单片机实验指导书

- - -.51系列单片机原理与应用实验华南师X大学物理与工程工程学院微机教研室20010年9月目录实验须知 (2)实验一数字量输入输出实验 (4)实验二定时与中断实验 (6)实验三串行通信实验 (9)实验四串行A/D转换实验 (11)实验五交通灯控制实验 (12)实验六现实人体视觉暂留特性测试实验 (14)实验七实时时钟制作实验 (17)实验八简易电子琴制作实验 (18)实验九EEPROM应用—数字密码锁 (20)实验十综合实验:教学板自检程序设计 (25)实验十一数据采集—火灾报警装置的软硬件设计 (26)附录一实验教学板 (27)附录二实验用软件使用说明 (28)实验须知一、预习要求1.实验前认真阅读实验指导书的相关内容,明确实验目的和实验任务。

2.实验前应做好预习报告,在报告中,要求画出所设计的实验电路原理图、程序流程图,编写好程序,并对程序加以注释,还要拟订好实验步骤。

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

有特殊原因不能在原安排时间来实验时,须提前一天通知实验中心负责教师。

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

教师对实验内容提问,并对完成者进行记录。

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

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

,严禁带电操作,即所有接线、改线和拆线操作均应在不带电的状态下进行。

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

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

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

实验报告应包括以下内容:1.实验名称、实验人XX、学号、班级、同组人XX。

2.实验目的、任务(内容)。

3.各任务程序流程图、自编程序清单,对程序须给出适量注释(例如:变量和某些寄存器的作用,关键程序段的功能等)。

4.应画出所设计的完整实验电路图。

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

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

实验一数字量输入输出实验一、实验目的1.熟悉教学板电路及其结构。

2.掌握利用μVision C51 软件编辑、调试(包括仿真调试、单步调试)、运行单片机程序的步骤和方法,掌握利用STC-ISP V39软件和下载线将程序写入单片机的方法。

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

4.掌握矩阵键盘、LED动态显示的工作原理。

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

三、实验准备1.阅读实验讲义附录一、实验教学板电路图和附录二、μVision软件使用说明2.按实验题目要求设计好硬件电路,画出电路原理图,设计出相应程序,并给程序加上较详细的注释。

四、实验内容1. 1.实验线路如附图所示,51单片机的P0口输出接8个发光二极管的阴极,P2.4经NPN三极管9011控制发光管的阳极。

P3口支持一个8位行列式键盘,其中P3.4~P3.7供键盘扫描输出,P3.2、P3.3作键盘扫描输入。

2.实验要求:编程实现键盘对发光二极管的控制,每按一个按键,使对应的二极管点亮。

2.51单片机P0口输出同时接4个数码管的阴极,P2.0~P2.3,经NPN三极管9011接数码管的阳极,该端口用于分别控制相应数码管的导通。

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

五、实验步骤1.将实验板与PC机通过口连接。

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

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

3.接上实验板上的电源。

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

操作的顺序是:1)选择单片机(MCU TYPE)型号。

如:“STC89C51RC”要与实验板上所装单片机的型号一至。

2)打开文件(Open File)。

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

3)选择串行通信口。

选对时,软件上的小灯会变绿。

否则小灯是灰色。

且在左下窗口提示“出错信息”。

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

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

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

六、参考程序流程图实验内容1流程图实验内容2流程图键盘处理程序流程图七、思考题1.在调试程序过长中,你是如何发现程序中的错误?2.按键程序为什么要有去抖动功能,如何去抖动?3. 在显示时,为什么要延时1ms,这个时间过长或过短,会出现什么现象?实验二定时与中断实验一、实验目的1.通过实验掌握51单片机的定时/计数器的应用。

2.掌握51单片机的中断原理及应用。

3. 进一步学习系统应用程序的设计和调试方法二、实验设备PC机一台、实验教学板一块。

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

实验要求:编程实现演奏一首乐曲C调常用音频及其对应频率如下表:音符频率T值音符频率T值7SI 494 64603 5 So 784 649481 DO 523 64654 6 La 880 650122 Re 587 64751 7 Si 987 650693 Mi 659 64837 1DO 1046 650954 Fa 698 64875 2RE 1174 65143定时器初值计算方法:由于软件是通过定时器溢出后对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拍,按照这样的规则,将整段音乐变换成相应的代码数据表,最后一个字节内容为00H,代表数据表的结束。

(2)在程序执行时按顺序查表,从字节数据中取出音符代码和节拍代码,查频率表得该音符对应频率的定时初值,再根据节拍代码控制音长,启动两个定时器后,即可发出要求的音,这样就控制演奏出完整的乐曲。

四、实验参考汇编主程序:ORG 0000HRESET: AJMP MAINORG 000BH ;定时器0中断入口AJMP TT0PORG 001BH ;定时器1中断入口AJMP TT1P0RG 0020HMAIN: MOV S P,#70H ;设堆栈区CLR P2.5 ;关声音MOV I E,#**H ;开中断(参数自己填写)MOV R1,#0H ;乐谱数据表偏移量ACALL PTOM2 ;调乐曲输出子程序CLR TR0 ;停止定时器的工作CLR TR1CLR P2.5 ;关声音HERR: AJMP HERR ;程序结束PTOM: MOV T MOD,#****H ;设定时器的工作方式(参数自己填写)PTOM1: MOV D PTR,#MUCI ;乐曲数据表首地址送DPTRMOV A,R1MOVC A,A+DPTR ;取乐谱数据JNZ PTOM2RET ;数据为00时结束PTOM2: MOV R2,A ;暂存ANL A,#0F0H ;保留音符数据SWAP ARL A ;乘2(每个音符要2个字节的定时值)MOV R3,AMOV D PTR,#TABL ;频率表MOVC A,A+DPTR ;查表得定时高8位MOV T H0,AMOV A,R3INC AMOVC A,A+DPTR ;查表得定时值低8位MOV T L0,AMOV A,R2ANL A,#0FH ;保留节拍数据MOV B,#8MUL AB ;乘8得定时中断次数MOV R0,AMOV T H1,#2CH ; 50ms定时的初值MOV T L1,#13HSETB TR1 ;启动定时器SETB TR0HERE: CJNE R0,#0H,HERE ;当前的节拍时间完成了?INC R1 ;是,准备取下一个数据AJMP PTOM1TT0P: 自编定时器0中断服务程序……TT1P: 自编定时器1中断服务程序……TABL: DW64603,64654,64751,64837……;乐曲“送别”的数据表MUCI: DB 54H,32H,52H,88H,64H,82H,62H,58H,54H,12H,22H,34H DB 22H,12H,2CH,54H,32H,52H,86H,72H,64H,84H,58H,54HDB 22H,32H,46H,02H,1CH,64H,84H,88H,74H,62H,72H,88HDB 62H 72H,82H,62H,62H,52H,32H,12H,28H,28H,54H,32HDB 52H 84H 72H,64H,86H,58H,54H,22H,32H,46H,02H,1CHDB 00H五、思考题1.总结程序调试的方法。

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

实验三 串行通信实验一、实验目的1.了解51单片机串行口的结构、串行通讯的原理。

2.掌握51单片机与PC 机之间通讯的方法。

3. 学习系统应用程序的设计和调试二、实验设备PC 机一台 、 实验教学板一块。

三、实验原理51单片机的串行接口是全双工的,它能做异步接收器/发送器(UART ),也能做同步移位寄存器使用。

相关主题