《单片机原理与接口技术》实验指导书.doc
单片机原理与接口技术 实 验 指 导 书 编 写 适用专业:09计算机科学与技术 10计算机科学与技术 闽江学院计算机系2010年 7月 前 言 “单片机原理与接口技术实验”是一门实践性、综合性、应用性较强的计算机基础课程,是必修课程。对开发单片机应用及程序有重大意义,有利于理解单片机系统中软件和硬件的关系。通过实验学生掌握各个单元模块的工作原理,可进一步深化和掌握课堂理论教学内容,为学生提供必要的实践机会,以加强其感性认识和增强其实际动手能力,能使学生更好的领会单片机原理以及相关接口技术实践知识,激励学生勇于创新,全面提高学生解决实际问题的动手能力。 本实验主要训练和培养学生利用所学的单片机知识进行应用系统开发的能力,如程序编写、仿真、调试和优化,硬件和接口的设计与调试,抗干扰技术的应用等方面的技能,以及开发单片机应用系统的设计思路、具体过程和步骤等,激发学生的学习热情和创新性思维。 本指导书中设置的实验项目,包括验证性、综合性和设计性实验,分为必做和选做,可根据学生的专业方向和课时安排以及学生的能力和兴趣等对实验项目的内容和顺序等重新调整安排。 目 录 1、实验一:单片机仿真软件wave实验32、实验二:多字节加法运算程序设计实验 53、实验三:数据排序编程及仿真实验64、实验四:仿真器的在线仿真练习实验85、实验五:外部中断和定时器的应用编程实验106、实验六:单片机I/O的应用编程实验12附录:实验报告基本内容要求29 实验一 单片机仿真软件wave实验实验学时:2实验类型:验证实验要求:必修一 实验目的11了解仿真软件wave6000的基本操作和使用12 学习简单程序的编写和调试方法。二 实验内容21观察复位时,CPU,SFR,DATA,CODE,XDATA,XCODE的值。21 单片机硬件资源的观察、修改及仿真等23 程序的运行并观察结果三、实验原理、方法和手段仿真软件wave6000的基本操作和调试方法四、实验组织运行要求根据本实验的特点、要求和具体条件,采用“以学生自主训练为主的集中授课形式”,按每人一组分组进行。五、实验条件PC机及WAVE仿真软件六、实验步骤6.1根据要求准备一小段程序;6.2输入并编辑源程序;6.3源程序的编译、链接;6.4程序的调试及运行七、思考题71通过本次实验熟悉了wave6000软件的各种操作,有几种方法可以运行程序?72 在实际操作中,主要碰到哪些问题使程序不能顺利执行?八、实验报告实验报告的内容及要求包括实验预习、实验记录和实验报告三部分。1wave6000软件的操作2wave6000软件的调试及运行 九、其它说明(参考程序)ORG 0000H ORG 8000HMAIN:MOV R0,#20H MOV R1,#30H MOV R2,#10HLOOP:MOV A,R0 ANL A,#0F0H SWAP A ADD A,#30H MOV R1,A MOV A,R0 ANL A,#0FH ADD A,#30H INC R1 MOV R1,A INC R0 INC R1 DJNZ R2,LOOP LJMP MAIN实验二 多字节加法运算编程实验实验学时:2实验类型:验证实验要求:必修一、实验目的1.1通过本实验,熟悉和掌握算术运算指令的灵活应用。1.2通过本实验,熟悉和掌握汇编语言程序的编写、编译和调试。1.3通过本实验,熟悉和掌握汇编语言程序的运行验证。二、实验内容编程实现不带符号多字节数的加法运算。 三、实验原理、方法和手段分别运用带进位和不带进位的加法算术运算指令实现多字节的加法运算。四、实验组织运行要求根据本实验的特点、要求和具体条件,采用“以学生自主训练为主的集中授课形式”,按每人一组分组进行。五、实验条件PC机及WAVE 仿真软件六、实验步骤6.1根据题目要求编写源程序;6.2输入并编辑源程序;6.3源程序的编译、链接;6.4程序的调试及运行七、思考题7.1多字节16进制数的加法运算如何实现?7.2加法程序如何修改成减法程序? 7.3如若最高位还有进位程序又怎么改?八、实验报告实验报告的内容及要求包括实验预习、实验记录和实验报告三部分。1 明确压缩的8421BCD码定义;2循环程序设计的应用;九、其它说明实验三 数据排序的编程及仿真实验学时:2实验类型:验证实验要求:必修一、实验目的1.1通过本实验,熟悉和掌握循环程序的编程及应用。1.2通过本实验,熟悉和掌握汇编语言程序的编写、编译和调试。1.3通过本实验,熟悉和掌握汇编语言程序的运行验证。1.4熟练掌握实用的冒泡排序法程序设计。二、实验内容设在内存数据区ARRAY为首地址,开始存放一有符号的字节数据表,表长为LEN,用“冒泡排序法”编写程序将表中数据从小到大排序。三、实验原理、方法和手段用“冒泡排序法”编写程序,: 外循环数 内循环数 数据表首址偏移量 置交换标志初值0 两相邻数比较,若顺序队,不交换,转 若顺序不对,两数据交换位置 交换标志置1 修改数据地址 内循环计数器减1,若不为0则转 检查交换标志若为0,表示已全部排好序,可转结束 外循环计数器减1,若不为0则转结束。四、实验组织运行要求根据本实验的特点、要求和具体条件,采用“以学生自主训练为主的集中授课形式”,按每人一组分组进行。五、实验条件PC机及WAVE 仿真软件六、实验步骤6.1根据题目要求编写源程序;6.2输入并编辑源程序;6.3源程序的编译、链接;6.4程序的调试及运行七、思考题1 如何检查已排好序的数表结果?2 如何编写显示数表的程序段?3 若要用降序排列,那程序又如何修改?八、实验报告实验报告的内容及要求包括实验预习、实验记录和实验报告三部分。1循环程序设计的应用;2冒泡排序法的原理及实现。 九、其它说明实验四 单片机在线仿真实验实验学时:2实验类型:验证实验要求:必修一、实验目的1、熟悉Keil C51集成开发环境的使用方法2、熟悉DP-51PRO单片机综合仿真实验仪的使用3、掌握基于Keil C51的硬件仿真功能的使用二、实验内容1、Keil C51集成开发环境的使用方法2、DP-51PRO单片机综合仿真实验仪的使用3、基于Keil C51的硬件仿真功能的使用三、实验原理、方法和手段四、实验组织运行要求根据本实验的特点、要求和具体条件,采用“以学生自主训练为主的集中授课形式”,按每人一组分组进行。五、实验条件PC机及 Keil C51仿真软件DP-51PRO单片机综合仿真实验仪六、实验步骤6.1 Keil C51的使用1、 熟悉uVision3集成开发环境2、 创建一个新的项目选择一个相应的设备,即单片机型号3、 提示如下: 选择否。(当用C语言开发时,可选是)。4、 新建一个文本文档File -> New,输入实验源码:5、 在工程项目窗口中,将源文件加入工程中。6、 编译链接程序,如出错改正后再执行此命令直到链接成功。6.2 仿真调试功能的使用1.仿真软件的设置2.实验仪的设置3.单步调试 4.断点调试5.查看结果6.4程序的调试及运行七、思考题1.如何检查程序的运行结果?2.如何用不同的方法对程序进行调试?八、实验报告实验报告的内容及要求包括实验预习、实验记录和实验报告三部分。1程序实验过程的截图。2程序的运行结果截图。 九、其它说明 实验五 外部中断和定时器的应用编程实验实验学时:2实验类型:验证实验要求:必修一、 实验目的 通过本次实验学习使用程序查询实现实时时钟的设计二、 实验内容编程实现实时时钟的功能,包括时、分、秒。三、实验原理、方法和手段运用定时器编程实现实时时钟的功能四、实验组织运行要求根据本实验的特点、要求和具体条件,采用“以学生自主训练为主的集中授课形式”,按每人一组分组进行。五、实验条件PC机及 Keil C51仿真软件DP-51PRO单片机综合仿真实验仪六、实验步骤6.1根据题目要求编写源程序;6.2输入并编辑源程序;6.3源程序的编译、链接;6.4程序的调试及运行6.5程序运行的结果及优化七、思考题1.如何检查程序的运行结果?2.如何对程序进行调试?3.如何实现在此基础上增加年月日的功能。4.若时间和实际时间不一致,可能的问题是什么?八、实验报告实验报告的内容及要求包括实验预习、实验记录和实验报告三部分。1程序实验过程的截图。2程序的运行结果截图。 九、其它说明(参考程序)11ORG 0000HLJMP MAINORG 8000H MAIN:MOV TMOD,#01H MOV 23H,#0AH CLR A MOV 20H,A MOV 21H,A MOV 22H,ALOOP:MOV TH0,#3CH MOV TL0,#0B0H SETB TR0 JNB TF0,$ CLR TF0 DEC 23H MOV TH0,#3CH MOV TL0,#0B0H MOV A,23H CJNE A,#00H,LOOP MOV 23H,#0AH MOV A,#01H ADD A,22H DA A MOV 22H,A CJNE A,#60H,LOOP MOV 22H,#00H MOV A,#01H ADD A,21H DA A MOV 21H,A CJNE A,#60H,LOOP MOV 21H,#00H MOV A,#01H ADD A,20H DA A MOV 20H,A CJNE A,#24H,LOOP MOV 20H,#00H END实验六 单片机I/O的应用编程实验实验学时:2实验类型:验证实验要求:必修三、 实验目的 通过本次实验学习单片机I/O的应用设计与编程四、 实验内容编程实现LED的显示驱动或模拟电子琴的实现。三、实验原理、方法和手段利用单片机I/O实现输入/输出功能四、实验组织运行要求根据本实验的特点、要求和具体条件,采用“以学生自主训练为主的集中授课形式”,按每人一组分组进行。五、实验条件PC机及 Keil C51仿真软件DP-51PRO单片机综合仿真实验仪六、实验步骤6.1根据题目要求编写源程序;6.2输入并编辑源程序;6.3源程序的编译、链接;6.4程序的调试及运行6.5程序运行的结果及优化七、思考题1.如何检查程序的运行结果?2.如何对程序进行调试?3.若电子琴的音调和实际不一致,可能的问题是什么?八、实验报告实验报告的内容及要求包括实验预习、实验记录和实验报告三部分。1程序实验过程的记录。2程序的运行结果演示。 九、其它说明(参考程序)附件:实验报告基本要求 每门课程的学生实验报告格式原则上使用现在各系使用的实验报告格式,若需要修改或完善,各系、部视具体情况需要参照本规定进行修订。学生实验报告应事先准备好,用来做预习报告、实验记录和实验报告。1、实验预习 在实验前每位同学都需要对本次实验进行认真的预习,并写好预习报告,在预习报告中要写出实验目的、要求,需要用到的仪器设备、物品资料以及简要的实验步骤,形成一个操作提纲。对实验中的安全注意事项及可能出现的现象等做到心中有数,但这些不要求写在预习报告中。 设计性实验要求进入实验室前写出实验方案,并经指导教师审阅后实施。2、实验记录 学生开始实验时,应该将记录本放在近旁,将实验中所做的每一步操作、观察到的现象和所测得的数据及相关条件如实地记录下来。 实验记录中应有指导教师的签名。3、实验报告 主要内容包括对实验数据、实验中的特殊现象、实验操作的成败、实验的关键点等内容进行整理、解释、分析总结,回答思考题,提出实验结论或提出自己的看法等。1