




已阅读5页,还剩16页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
单片机原理及应用实验教学大纲课程编号:B04611016课程类别:专业课实验学时:16学时学 分:2.5适用专业:计算机科学与技术一、实验教学目的和任务 本课程是计算机及应用专业一门重要的专业课。其教学内容直接面向生产。同时,微机向小型化、超小型化方面发展愈来愈迅猛。单片机应用已渗透社会各个领域,特别在通信技术中的应用,大大提高了通信技术水平。学生应具备这方面的知识与技能,为今后参加工作,打下坚实的基础。二、实验教学基本要求本课程是一门很注重实践的课程。以研究MCS51系列单片机入手,掌握其硬件结构、指令系统和程序设计,以及常用接口技术和典型应用实例。三、实验教学内容实验项目一:清零程序1、实验目的及要求要求学生掌握软件的结构和键盘的调试。2、实验内容及学时分配(2学时)(1)了解MCS-51软件的构造 (2)掌握清零程序的输入方法 (3)了解起始伪指令的输入方法实验项目二:拼字和拆字程序1、实验目的及要求 要求学生掌握存储器分配和汇编语言的简单应用。2、实验内容及学时分配(2学时)(1)进一步掌握MCS-51软件的基本使用方法(2)掌握指令的寻址方式 (3)掌握数据传送指令和地址内容的分配实验项目三:数据区传送子程序1、实验目的及要求要求学生掌握RAM数据存储器实际操作。2、实验内容及学时分配(2学时)(1)掌握MCS-51逻辑运算指令和位操作指令(2)进一步掌握数据传送子程序的简单方法(3)掌握查表程序的编写实验项目四:数据排序实验1、实验目的及要求 要求学生掌握汇编语言的应用和实际操作。2、实验内容及学时分配(2学时)(1)掌握MCS51逻辑运算指令和位操作指令(2)进一步掌握简单顺序程序的编写和调试方法(3)掌握查表程序的编写实验项目五:查找相同个数1、实验目的及要求熟悉汇编语言程序,使用环移指令和加1指令。2、实验内容及学时分配(2学时)(1)掌握赋值指令(2)掌握带进位的环移指令和加1程序的编写实验项目六:双字节无符号数的乘法实验1、实验目的及要求 要求学生掌握MCS-51汇编语言设计和调试方法。2、实验内容及学时分配(2学时)(1)掌握分支程序的设计方法(2)提高调试程序的能力(3)掌握SJMP、AJMP、LJMP的区别和应用场合实验项目七:P1口亮灯实验1、实验目的及要求学习延时子程序的编写。2、实验内容及学时分配(2学时)(1)掌握P1口的使用方法(2)学习延时子程序的编写实验项目八:仿真模拟驱动实验1、实验目的及要求学习仿真程序的编写。2、实验内容及学时分配(2学时)(1)掌握P1口的使用方法(2)学习仿真程序的编写实验项目与学时分配表序号实验项目名称学时实验类型实验主要仪器设备备注1实验项目一:清零实验2验证性微机必做2实验项目二:拼字和拆字程序2验证性微机必做3实验项目三:数据区传送子程序2验证性微机必做4实验项目四:数据排序实验2验证性微机必做5实验项目五:查找相同个数2验证性微机必做6实验项目六:双字节无符号数的乘法实验2验证性微机必做7实验项目七:P1口亮灯实验2验证性微机必做8实验项目八:仿真模拟驱动程序2设计性微机必做五、实验考核办法与成绩评定要注重学生的平时实验考勤和学生实验准备情况,了解学生做实验时自主完成实验情况和动手操作能力,以及学生自主设计实验内容的综合能力,表现情况成绩评定占总成绩的20%。六、实验教材单片机原理与应用实验指导书 黄石理工学院计算机学院编写执笔人:田嵩 审核人:晏伯武 (盖章)2012年9月1日微机原理与接口实验教案授课教师:缪贤浩适用专业:物联网工程使用班级:14物联网工程授课时间:2016年 春季授课学时:40/24/16学时使用教材:单片机原理及应用教程 范立南主编 北京大学出版社实验指导书:单片机原理与接口实验指导书,计算机学院编,2007年版湖北理工学院计算机学院实验项目与学时分配表序号实验项目名称学时实验类型实验主要仪器设备备注1实验项目一:清零实验2验证性微机必做2实验项目二:拼字和拆字程序2验证性微机必做3实验项目三:数据区传送子程序2验证性微机必做4实验项目四:数据排序实验2验证性微机必做5实验项目五:查找相同个数2验证性微机必做6实验项目六:双字节无符号数的乘法实验2验证性微机必做7实验项目七:P1口亮灯实验2验证性微机必做8实验项目八:仿真模拟驱动程序2设计性微机必做第一部分 软件实验实验一 清零程序一、 实验目的 掌握汇编语言设计和调试方法,熟悉键盘操作。二、 实验内容 把2000H20FF的内容清零。三、 实验步骤 用连续或单步方式运行程序,检查2000H20FF执行程序前后的内容变化。四、 思考 1、假使把2000H20FF中的内容改为FF,如何修改程序。 2、将程序中的汇编语言中每条单步执行的指令阐述出来。五、 程序清单 (sw01.asm) ORG 0000H LJMP SE01 ORG 0640HSE01:MOV R0,#00H MOV DPTR,#2000H ;(2000H)送DPTRLOO1:CLR A MOVX DPTR,A ;0送DPTR INC DPTR ;DPTR+1 INC R0 ;字节数加1 CJNE R0,#00H,LOO1 ;不到FF个字节再清LOOP:SJMP LOOP END实验二 拼字和拆字程序1、拆字程序一、 实验目的 掌握汇编语言设计和调试方法。二、 实验内容 把2000H的内容拆开,高位送2001H低位,低位送2002H低位,2001H、2002H高位清零,一般本程序用于把数据送显示缓冲区时用。开 始三、 实验程序框图2000H的内容送A 高低位交换 屏蔽高低位后送2001H2000H内容送A2002H屏蔽高位后送结束四、实验步骤 用连续或单步方式运行程序,检查2000H2002H中内容变化情况。五、思考 1、如何用断点方式调试本程序。 2、将程序中的汇编语言中每条单步执行的指令阐述出来。六、程序清单 (sw02.asm) ORG 0000H LJMP SE02 ORG 0660HSE02: MOV DPTR,#2000H MOVX A,DPTR MOV B,A ;(2000H)AB SWAP A ;交换 ANL A,#0FH ;屏蔽高位 INC DPTR MOVX DPTR,A ;送2001H INC DPTR MOV A,B ANL A,#0FH ;(2000H)内容屏蔽高位 MOVX DPTR,A ;送2002HLOOP: SJMP LOOP END2、 拼字程序一、实验目的 进一步掌握汇编语言设计和调试方法。二、实验内容 把2000H、2001H的低位分别送入2002H高低位,一般本程序用于把显示缓冲区的数据取出拼装成一字节。三、实验程序框图开 始(2000H)送A,屏蔽高位交换高低位,送B(2001H)送A,屏蔽高位A和B相或后送2002H结束四、实验步骤 单步或用断点方式运行程序,检查2002H内容变化情况。五、程序清单(sw03.asm) ORG 000H LJMP START ORG 0680H START: MOV DPTR,#2000H MOVX A,DPTR ANL A,#0FH ;(2000H)内容屏蔽高位 SWAP A ;交换 MOV B,A ;保存 INC DPTR MOVX A,DPTR ;(2000H)内容送A ANL A,#0FH ;屏蔽高位 ORL A,B ;或 INC DPTR MOVX DPTR,A ;送2002H SJMP END实验三 数据区传送子程序一、 实验目的 掌握RAM的数据操作。二、 实验内容 把R2、R3源RAM区首址内的R6、R7字节数据传送到R4、R5目的RAM区三、实验程序框图开 始源地址内容送A(A)送目的地址源地址加1目的地址加1字节数到么?结 束N四、实验步骤 在R2、R3中输入源首址(例如0000H),R4、R5中输入目的地址(例如2000H),R6、R7中输入字节数(例如1FFFH),运行程序,检查0000H1FFFH中的内容是否和2000H3FFFH中内容完全一致。五、程序清单(sw04.asm) ORG 0000H LJMP SE22 ORG 07B0H SE22: MOV DPL,R3 MOV DPH,R2 ;建立源程序首址 MOVX A,DPTR ;取数 MOV DPL,R5 MOV DPH,R4 ;目的地首址 MOVX DPTR,A ;传送 CJNE R3,#0FFH,LO42 INC R2 LO42: INC R3 ;源地址加1 CJNE R5,#0FFH,LO43 INC R4 LO43: INC R5 ;目的地址加1 CJNE R7,#00H,LO44 CJNE R6,#00H,LO45 ;字节数减1 LOOP: SJMP LOOP NOP LO44: DEC R7 SJMP SE22 LO45: DEC R7 DEC R6 SJMP SE22 ;未完继续 END 实验四 数据排序实验一、 实验目的 熟悉51指令系统,掌握程序设计方法。二、实验内容 编写并调试一个排序子程序,其功能为用冒泡法将内存RAM中几个单字节无符号的正整数,按从小到大的次序重新排列。开 始清标志位根据(R0)取数A(R0)+1R0A(R0)?置标志位,交换内容长度减1=0?标志位=0?结 束YNN三、程序框图四、实验步骤 将RAM50H5AH中放入不等的数据,用断点方法运行本实验程序后检查50H5AH的内容是否按从小到大的次序排列。五、思考 修改程序把50H5AH中内容从小到大排列。六、程序清单(sw05.asm) ORG 0000H LJMP QUE ORG 09B0H QUE: MOV R3,#50H QUE1: MOV A,R3 MOV R0,A ;指针送R0 MOV R7,#0AH ;长度送R7 CLR 00H ;清标志位 MOV A,R0 QL2: INC R0 MOV R2,A CLR C MOV 22H,R0 CJNE A,22H,QL3 ;相等么? SETB C QL3: MOV A,R2 JC QL1 ;大于交换位置 SETB 00H XCH A,R0 DEC R0 XCH A,R0 INC R0 QL1: MOV A,R0 DJNZ R7,QL2 JB 00H,QUE1 ;一次循环中有交换继续 LOOP: SJMP LOOP ;无交换退出 END实验五 查找相同个数一、实验目的 熟悉汇编语言编程。二、实验内容 在2000H200FH的N个单元中填入零,运行本程序后检查2100H中是否为N。三、实验程序框图开 始字节数送R0,查找字节送R1相同?TONGDPTR+1字节数到么?(R1)送2100H结 束R1+1YN四、实验步骤 在2000H200FH的几个单元中填入零,运行本程序后检查2100H中是否是几个单元数。五、思考 修改程序,查找其它内容。六、程序清单 (sw06.asm) ORG 0000H LJMP L5800 ORG 0AA0H L5800:MOV R0,#10H ;查找16个字节 MOV R1,#00H MOV DPTR,#2000H L5811 :MOVX A,DPTR CJNE A,#00H,L5816 ;取出内容与00H相等吗? INC R1 ;取出个数加1 L5816 :INC DPTR DJNZ R0,L5811 ;未完继续 MOV DPTR,#2100H MOV A,R1 MOVX DPTR,A ;相同数的个数送2100H L581E:SJMP L581E END实验六 无符号双字节快速乘法子程序一、实验目的 掌握MCS-51汇编语言设计和调试方法。二、预备知识 本程序利用单字节的乘法指令,根据下面的公式进行乘法运算的。(R2R3)*(R6R7)=(R2)*28+(R3)*(R6)*28+R7)=(R2)*(R6)*216+(R2)*(R7)+(R3)*(R6)*28+(R3)*(R7)三、实验内容 将(R2R3)和(R6R7)中双字节无符号整数相乘,积送到R4R5R6R7中。四、实验程序框图 开 始被乘数和乘数低字节相乘积高位送R5,低位送R7被乘数高字节和乘数低字节相乘积低位加R5送R4,高位+CY送R5 被乘数低字节和乘数高字节相乘积低位加R4送R6,高位+R5送R5,CY送F0 被乘数和乘数高字节相乘积低位加R5,CY送R5,高位加F0送R4 结 束五、实验步骤 在R2R3和R6R7中输入无符号整数,断点或单步运行本实验程序后检查R4R5R6R7的内容。六、程序清单 (sw07.asm)ORG 0000HLJMP QKULORG 0970HQKUL:MOV A,R3MOV B,R7MUL AB ;R3*R7XCH A,R7 ;R7=(R3*R7)低字节MOV R5,B ;R5=(R3*R7)高字节MOV B,R2MUL AB ,R2*R7ADD A,R5MOV R4,ACLR AADDC A,BMOV R5,A ;R5=(R2*R7)高字节MOV A,R6MOV B,R3MUL AB ;R3*R6ADD A,R4XCH A,R6XCH A,BADDC A,R5MOV R5,AMOV PSW.5,C ;存CYMOV A,R2MUL AB ,R2*R6ADD A,R5MOV R5,ACLR AMOV ACC.O,CMOV C,PSW.5 ;加上次加法的进位ADDC A,B MOV R4,ALOOP: SJMP LOOP END实验七 P1口亮灯实验一、实验目的与要求1、了解Keil uVISION3的开发环境2、了解Keil uVISION3的功能模块的构成3、掌握进行项目的开发设计的主要流程4、初步掌握Keil uVISION3对硬件模拟的方法二、实验重点与难点1、理解单片机C当中部分库文件的含义。2、常用库文件的使用方法。3、掌握单片机中变量的定义方法三、实验内容任务一 调试如下程序#include /预处理文件里面定义了特殊寄存器的名称如P1 口定义为P1void main(void)/定义花样数据const unsigned char design32=0xFF,0xFE,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0x7F,0x7F,0xBF,0xDF,0xEF,0xF7,0xFB,0xFD,0xFE,0xFF,0xFF,0xFE,0xFC,0xF8,0xF0,0xE0,0xC0,0x80,0x0,0xE7,0xDB,0xBD,0x7E,0xFF;unsigned int a; /定义循环用的变量unsigned char b; /在C51 编程中因内存有限尽可能注意变量类型的使用/尽可能使用少字节的类型,在大型的程序中很受用dofor (b=0; b32; b+)for(a=0; a30000; a+); /延时一段时间P1 = designb; /读已定义的花样数据并写花样数据到P1 口while(1); 编译运行上面的程序,然后按外部设备菜单PeripheralsI/O PortsPort1 就打开Port1 的调试窗口了,如图2 中的2。这时程序运行了,但我们并不能在Port1 调试窗口上看到有会什么效果,这时我们可以用鼠标左击图53 中1 旁边绿色的方条,点一下就有一个小红方格在点一下又没有了,哪一句语句前有小方格程序运行到那一句时就停止了,就是设置调试断点,同样图1 中的1 也是同样功能,分别是增加/移除断点、移除所有断点、允许/禁止断点、禁止所有断点,菜单也有一样的功能,另外菜单中还有Breakpoints 可打开断点设置窗口它的功能更强大,不过我们这里先不用它。我们在“P1 = designb;”这一句设置一个断点这时程序运行到这里就停住了,再留意一下Port1 调试窗口,再按图5-2中的2 的运行键,程序又运行到设置断点的地方停住了,这时Port1 调试窗口的状态又不同了。也就是说Port1 调试窗口模拟了P1 口的电平状态,打勾为高电平,不打勾则为低电平,窗口中P1 为P1 寄存器的状态,Pins 为引脚的状态,注意的是如果是读引脚值必须把引脚对应的寄存器置1 才能正确读取。图1 中2 旁边的样的按钮分别为单步入,步越,步出和执行到当前行。图中3 为显示下一句将要执行的语句。图2 中的3 是Watches 窗口可查看各变量的当前值,数组和字串是显示其头一个地址,如本例中的design 数组是保存在RAM 存储区的首地址为D:0x08,可以在图中4 Memory 存储器查看窗口中的Address 地址中打入D:0x08 就可以查看到design 各数据和存放地址了。如果你的uVision2 没有显示这些窗口,可以在View 菜单中打开在图1 中3 后面一栏的查看窗口快捷栏中打开。图1 调试用快捷菜单栏图2 各调试的窗口任务二 调试下列程序sfr P1 = 0x90; /这里没有使用预定义文件,sbit P1_0 = P1 0; /而是自己定义特殊寄存器sbit P1_7 = 0x90 7; /之前我们使用的预定义文件其实就是这个作用sbit P1_1 = 0x91; /这里分别定义P1 端口和P10,P11,P17 引脚void main(void)unsigned int a;unsigned char b;dofor (a=0;a50000;a+)P1_0 = 0; /点亮P1_0for (a=0;a50000;a+)P1_7 = 0; /点亮P1_7for (b=0;b255;b+)for (a=0;a10000;a+)P1 = b; /用b 的值来做跑马灯的花样P1 = 255; /熄灭P1 上的LEDfor (b=0;b255;b+)for (a=0;a10000;a+) /P1_1 闪烁P1_1 = 0;for (a=0;a10000;a+)P1_1 = 1
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 服务行业工作述职报告
- 危险废物暂存库管理
- 酒鲜花养护知识培训课件
- 2025年学年年度学校工作方案
- 2025年个人下半年工作方案
- 2025年校长学期工作任务方案
- 2025年幼儿班级工作方案
- 护理专业就业市场需求
- 社团管理部工作汇报
- 丰城市2025届五下数学期末联考试题含答案
- ICD-O-3形态学编码汇总
- 报联商——有效沟通PPT通用课件
- 奔驰基础电学培训Basic electrics-electronics training for new comer
- APQP培训试习题(含答案)
- 防雷安全管理制度(责任制)
- 水电交接确认单
- IEC61400-3海上风力发电机组设计要求-中文版
- 2019变送器标准考核复查申请书.doc
- 《多重PCR技术》PPT课件.ppt
- 【精选】部编版五年级下册语文第四单元习作《他 了》优秀范文
- 湖北省实验幼儿园:淬砺教育园本课程探索与实践
评论
0/150
提交评论