ImageVerifierCode 换一换
格式:DOCX , 页数:19 ,大小:29.51KB ,
资源ID:26288793      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/26288793.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(电子科技大学单片机原理与应用实验.docx)为本站会员(b****9)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

电子科技大学单片机原理与应用实验.docx

1、电子科技大学单片机原理与应用实验教师备课教案本(实验课程)系 别:电子工程系课程名称:单片机原理与应用教师姓名:张正明授课时间:20182019学年第1学期电子科技大学中山学院实 验 课 程 授 课 计 划课程名称单片机原理与应用总学时数16授课班级系别: 15级电子系 专业班级:电子信息工程,通信工程授课地点A304编号实 验 项 目 名 称计划学时周次1Keil集成开发环境练习和编程调试42走马灯实验43串口通信44并行模数转换4考核要求每次实验占25分。注:如授课时间适逢节假日冲突则顺延或另行安排。 填表日期:2008年 8月 3 日项目名称Keil集成开发环境练习和编程调试实验类别必做

2、课时安排4授课班级电子信息工程05级授课时间授课人数分组情况教学目的了解Keil系统的环境和程序调试预习要求教学内容与过程1 编写程序,完成内存中两个字节内容的交换。 建立工程文件。双击桌面的Keil 快捷图标,进入Keil 集成开发环境。点击工具栏的Project选项,在弹出的下拉菜单中选择New Project命令,建立一个新的Vision2工程,为工程取一个名字,并选择将要使用的器件的型号(Philips公司的P80/87C52X2 CPU)。编写程序,加入到刚才建立工程文件中。在File下采用New命令,建立新文件,送入程序内容,并保存为ASM类型文件。在Project Windos窗

3、口内,选中Source Group1后点击鼠标右键,在弹出的快捷菜单中选择Add files to Group “Source Group1”(向工程中添加源程序文件)命令,选择刚才创建单击Add命令即可把源程序文件添加到项目中。 ORG 0000H LJMP MAIN ORG 0100HMAIN: MOV SP,#60H; SP=? MOV R0,#30H; R0=? MOV R1,#40H; R1=? MOV R0,#55H; (30H)=? MOV R1,#0AAH; (40H)=? MOV A,R1; A=? XCH A,R0; A=? (30H)=? XCH A,R1; A=? (4

4、0H)=?;下面是另一种方法 MOV R0,#33H; (30H)=? MOV R1,#44H; (40H)=? MOV A,R0; A=? PUSH ACC; SP=? (61H)=? MOV A,R1; A=? PUSH ACC; SP=? (62H)=? NOP POP ACC; SP=? A=? MOV R0,A; (30H)=? POP ACC; SP=? A=? MOV R1,A; (40H)=? NOP SJMP $ END选择Project下的Rebuild all target files 对工程文件进行汇编和连接,如果出错,系统会提示出错并指出出错地方和出错类型,请按照提示

5、返回程序进行修改,直到系统提示没有错误,表明程序没有语法错误,可以进行动态调试了。选择Project下的Options for target Target1进行动态调试的参数设置,点击debug,再点击 Use Simulator,最后点击完成。对程序进行动态调试,查看相关寄存器、内存和外部存储器的内容。常用的工具条上的命令有开始/暂停动态调试,单步执行或,执行到光标处等。查看存储器内容的方式是在存储区地址写上要查看的初始地址就可以了。比如D:0000H,C:0000H,X:0000H。将每行程序执行后的结果写到该行程序的注释部分。2 编写一个数据填充和数据块搬移程序。仿照实验内容和步骤1的过

6、程,建立、编辑、汇编、连接和动态调试程序,查看和验证数据区的内容是否正确。 ORG 0000H LJMP MAIN ORG 0100HMAIN: MOV R0,#30H ; R0指向30H单元 MOV R2,#16 ; R2作循环计数器NEXT1: MOV R0,#*; 填充当前单元 INC R0 ; 指针下移一个单元 DJNZ R2,NEXT1 ; 未填完16个单元,继续;以下程序将30H开始的16个字节内容送到100H开始的外部存储器中 MOV R1,#30H MOV DPTR,#0100H MOV R3,#10HNEXT2: MOV A,R1 MOVX DPTR,A INC R1 INC

7、 DPTR DJNZ R3,NEXT2 SJMP $ END 3 编写一个多字节的算术运算程序。仿照实验内容和步骤1的过程,建立、编辑、汇编、连接和动态调试程序,将运行结果写到程序的注释部分。 ORG 0000H LJMP MAIN ORG 0100HMAIN: MOV SP,#60H MOV R1,#12H MOV R0,#34H ;R1R0=? MOV R2,#21H MOV R3,#0EFH ;R3R2=?;下面是加法运算 MOV A,R0 ADD A,R2 ; 低8位相加 MOV R4,A ; MOV A,R1 ADDC A,R3 ; 高8位相加 MOV R5,A MOV A,#0 A

8、DDC A,#0 MOV R6,A ; R6存放进位 R6R5R4=? NOP;以下是减法运算 CLR C MOV A,R2 SUBB A,R0 MOV R4,A MOV A,R3 SUBB A,R1 MOV R5,A MOV ,#00H SUBB A,#00H MOV R6,A ;R6R5R4=? ;以下是乘法运算 NOP MOV A,R0 MOV B,R2 MUL AB MOV R4,A MOV R5,B MOV A,R1 MOV B,R2 MUL AB ADD A,R5 MOV R5,A MOV A,B ADDC A,#00H MOV R6,A NOP MOV A,R0 MOV B,R3

9、 MUL AB ADD A,R5 MOV R5,A MOV A,B ADDC A,R6 MOV R6,A MOV A,R1 MOV B,R3 MUL AB ADD A,R6 MOV R6,A MOV A,B ADDC ,#00H MOV R7,A; R7R6R5R4=? SJMP $ END教学后记项目名称实验二 走马灯实验实验类别必做课时安排4授课班级电子信息工程05级授课时间授课人数分组情况教学目的1、学会DP-51PRO实验仪监控程序下载、动态调试功能的使用;2、理解和学会单片机并口的作为通用I/O的使用;3、理解和学会单片机外部中断的使用;4、了解单片机定时器/计数器的应用。预习要求教

10、学内容与过程1 编写一段程序,用P1口作为控制端口,使D1区的LED 轮流点亮。仿照实验一的过程,编写程序、汇编、连接、软件仿真,基本达到功能要求。ORG 0000H LJMP MAIN ORG 0100HMAIN: MOV A,#0FEH ;准备点亮第一只发光管NEXT: MOV P1,A ACALL DELAY RL A ; 准备点亮下一只发光管 SJMP NEXT ; 延时子程序DELAY: MOV R2,#5DELAY2: MOV R3,#100DELAY3: MOV R4,#100 DJNZ R4,$ DJNZ R3,DELAY3 DJNZ R2,DELAY2 RET END 调试成

11、功以后,将程序中的ORG部分的偏移地址再加上8000H,重新编译。按照原理图,将A1区P1口的引线分别连接到D1区J52上。下载监控程序到实验仪上。短接A1区的JP15,连接实验仪串口和主机的串口,将MOD-SW1拨到LOAD一边,FLASH-E和SRAM-E断开,运行主机上DPFLASH,下在MON51.HEX到实验仪上。在Keil系统上,完成程序的动态调试。在主菜单DEBUG下的Options for Target Target 1,点击Debug,选择Use Keil Monitor-51 Driver,并且设置其他参数,将MOD-SW1拨到RUN一边,就可以进行动态调试了。观察和记录各

12、个寄存器内容的变化,端口P1的内容变化,以及对应的LED的变化。全速运行时,观察LED的变化。2编写一段程序,用P1 口作为控制端口,使D1 区的LED 轮流点亮。用外部中断0控制走马灯的暂停/继续。 ORG 0000H LJMP MAIN ORG 0003 LJMP ZEX0 ORG 0100HMAIN: MOV SP,#60H CLR IT0 SETB EX0 SETB EAMOV A,#0FEH ;准备点亮第一只发光管 MOV R5,#00HNEXT: CJNE R5,#00H,NEXT;00表示继续,FF表示暂停 MOV P1,A ACALL DELAY RL A ; 准备点亮下一只发

13、光管 SJMP NEXT ; 延时子程序DELAY: MOV R2,#5DELAY2: MOV R3,#100DELAY3: MOV R4,#100 DJNZ R4,$ DJNZ R3,DELAY3 DJNZ R2,DELAY2 RET;外部中断0服务子程序ZEX0: PUSH ACC MOV A,R5 XRL A,#0FFH MOV R5,A POP ACC RETI END 将A1区P1口的引线分别连接到D1区J52上,将D1区的J53的KEY1连接到A1区的外部中断0上。 3编写一段程序,用P1 口作为控制端口,使D1 区的LED 轮流点亮。用定时/计数器0控制走马灯的闪烁速度。 ORG

14、 0000H LJMP MAIN ORG 000BH LJMP ZIT0 ORG 0100HMAIN: MOV SP,#60H MOV TMOD,#01H MOV TH0,#3CH MOV TL0,#0B0H MOV R6,#20 MOV R7,#0FEH ;准备点亮第一只发光管 SETB ET0 SETB EA SETB TR0 SJMP $;定时中断0服务子程序ZIT0: DJNZ R6,ZRET MOV A,R7 MOV P1,A RL A MOV R7,A MOV R6,#20ZRET: RETI END 改变程序中R6的值,观察走马灯的移动速度。教学后记项目名称实验三 串口通信实验类

15、别必做课时安排4授课班级电子信息工程05级授课时间授课人数分组情况教学目的1、学会实验仪用户程序的下载和执行;2、理解单片机的串口通信原理,学会单片机串行口的使用;3、学会单片机串行口中断的使用。预习要求教学内容与过程1、编写一段程序,利用单片机的串行口向PC机发送字符串。在下面的原理图中,短接JP15就将单片机的串口,通过MAX232和插座连接到主机的串口信号线上了。编写程序,成功通过KEIL系统的编辑、编译和部分程序的动态调试。ORG 0000H LJMP MAIN ORG 0050H DB WELCOME TO ZSC ORG 0100HMAIN: CLR EA MOV SP,#60H

16、;给堆栈指针赋初值 MOV TMOD,#20H ;设置T1 为方式2 MOV TH1,#0FDH ;设置波特率为9600 MOV TL1,#0FDH MOV SCON,#40H ;设置串口位方式1 MOV PCON,#00H SETB TR1 ;定时器1 开始计数 MOV R7,14 MOV DPTR,#0050HLOOP: MOV A,#00H MOVC A,A+DPTR MOV SBUF,A ;开始发送 JNB TI,$ CLR TI INC DPTR DJNZ R7,LOOP SJMP $ END连接实验仪的串口和主机的串口,参照实验二中的方法将用户程序下载到单片机的FLASH中。运行主

17、机上的DPFLASH,点击主菜单上的串口调试器,并设置相应的参数。将MOD-SW1拨到RUN一边,按一下复位键,程序就开始运行了。观察主机上接收到的字符串。2、编写一段程序,接收主机串行口发送来的字符,在单片机接收到A的时候返回一个T表示正确,否则返回一个F表示错误。 ORG 0000H LJMP MAIN ORG 0100HMAIN: CLR EA MOV SP,#60H ;给堆栈指针赋初值 MOV TMOD,#20H ;设置T1 为方式2 MOV TH1,#0FDH ;设置波特率为9600 MOV TL1,#0FDH MOV SCON,#50H ;设置串口位方式1 MOV PCON,#00

18、H SETB TR1 ;定时器1 开始计数LOOP: JNB RI,$ CLR RI MOV A,SBUF CJNE A,#A,FSEND MOV A,#T AJMP SENDFSEND: MOV A,#FSEND: JNB TI,$ CLR TI MOV SBUF,A ;开始发送 SJMP LOOP END3、采用串行口中断方式,实现实验内容和步骤2的要求。 ORG 0000H LJMP MAIN ORG 0023H LJMP ZRS232 ORG 0100HMAIN: CLR EA MOV SP,#60H ;给堆栈指针赋初值 MOV TMOD,#20H ;设置T1 为方式2 MOV TH1

19、,#0FDH ;设置波特率为9600 MOV TL1,#0FDH MOV SCON,#50H ;设置串口位方式1 MOV PCON,#00H SETB ES SETB TR1 ;定时器1 开始计数 SETB EA SJMP $ZRS232: JB RI,ZRZT: CLR TI AJMP ZENDZR: CLR RI MOV A,SBUF CJNE A,#A,FSEND MOV A,#T AJMP SENDFSEND: MOV A,#FSEND: MOV SBUF,A ;开始发送ZEND: RETI END教学后记项目名称实验四 并行模数转换实验类别必做课时安排4授课班级电子信息工程05级授课

20、时间授课人数分组情况教学目的1、了解系统设计的基本概念;2、掌握A/D 芯片ADC0809 与单片机的接口方法及ADC0809 芯片性能;3、了解单片机实现数据采集的方法。预习要求教学内容与过程1. 编写一段程序,使P3.5 口输出不同频率的脉冲,控制蜂鸣器发出不同的音调,并且输入0255 用以改变蜂鸣器的音调;将P3.5和J8相连接。DAC DATA 30H ORG 0000H LJMP MAIN ORG 0100HMAIN: MOV DAC,#44LOOP: MOV R7,DAC SETB P3.5LOOP1: MOV R6,#3 DJNZ R6,$ DJNZ R7,LOOP1 MOV R

21、7,DAC CLR P3.5LOOP2: MOV R6,#3 DJNZ R6,$ DJNZ R7,LOOP2 AJMP LOOP END改变DAC的值,观察声调的变化。2. AD0809 DATA 7000HDAC DATA 30HTIME0H EQU 00HTIME0L EQU 00H ORG 0000H LJMP MAIN ORG 0003H LJMP ZEX0 ORG 000BH LJMP ZINT0 ORG 0100HMAIN: MOV SP,#60H SETB IT0 SETB EX0 SETB EA MOV DPTR,#AD0809 MOVX DPTR,A MOV TMOD,#01

22、H MOV TH0,#TIME0H MOV TL0,#TIME0L MOV DAC,#44LOOP: MOV R7,DAC SETB P3.5LOOP1: MOV R6,#3 DJNZ R6,$ DJNZ R7,LOOP1 MOV R7,DAC CLR P3.5LOOP2: MOV R6,#3 DJNZ R6,$ DJNZ R7,LOOP2 AJMP LOOPZEX0: PUSH PSW PUSH ACC MOV DPTR,#AD0809 MOVX A,DPTR MOV DAC,A POP ACC POP PSW RETIZINT0: CLR TR0 MOV TH0,#TIME0H MOV T

23、L0,#TIME0L MOV DPTR,#AD0809 MOVX DPTR,A SETB TR0 RETI ENDADC0809 的时钟从B2 区的时钟源获取,选用时钟源的1/32 分频(也可以通过D触发器将单片机ALE 信号分频获取)。使用导线把A2 区的J66 接口与B4 区的J1 接口从A0A2 到ADDA ADDC 分别对应相连;使用导线把A2 区的J63 接口的A15 与B4 区J1 接口的/0809CS 相连;使用导线把A2 区的J58 接口的INT0 与B4 区J1 接口的/EOC 相连;使用导线把A2 区的J58 接口的T1 与D4 区的J8 接口的BUZZ 相连;使用导线把B4 区的J1 接口的+Vref、-Vref 分别与VCC、GND 相连;使用导线把B4 区的J44 接口的IN0 与D2 区的J18 中间接口相连;将B2 区J112 的1/32 分频与B4 区J1 的AD_CLK 连接,短接B2 区JP20 跳线,X2 上接上晶振;使用短路片把W2 电位器与VCC、GND 相连;编写汇编程序,实现本实验的模拟要求;下载程序,运行程序,调节电位器电压,观察蜂鸣器声调的变化;教学后记

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

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