




免费预览已结束,剩余33页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
学 生 实 验 报 告(理工类)课程名称: 单片机原理及应用 专业班级: 07电子信息工程(2)班 学生学号: 学生姓名: 所属院部: 信息技术学院 指导教师: 20 10 20 11 学年 第 1 学期 金陵科技学院教务处制实验报告书写要求实验报告原则上要求学生手写,要求书写工整。若因课程特点需打印的,要遵照以下字体、字号、间距等的具体要求。纸张一律采用a4的纸张。实验报告书写说明实验报告中一至四项内容为必填项,包括实验目的和要求;实验仪器和设备;实验内容与过程;实验结果与分析。各院部可根据学科特点和实验具体要求增加项目。填写注意事项(1)细致观察,及时、准确、如实记录。(2)准确说明,层次清晰。(3)尽量采用专用术语来说明事物。(4)外文、符号、公式要准确,应使用统一规定的名词和符号。(5)应独立完成实验报告的书写,严禁抄袭、复印,一经发现,以零分论处。实验报告批改说明实验报告的批改要及时、认真、仔细,一律用红色笔批改。实验报告的批改成绩采用百分制,具体评分标准由各院部自行制定。实验报告装订要求实验批改完毕后,任课老师将每门课程的每个实验项目的实验报告以自然班为单位、按学号升序排列,装订成册,并附上一份该门课程的实验大纲。实验项目名称: 存储器块清零 实验学时: 2学时 同组学生姓名: 实验地点: b403 实验日期: 2010-10-12 实验成绩: 批改教师: 批改时间: 一、实验目的和要求1、实验目的(1)掌握存储器读写方法(2)了解存储器的块操作方法2、实验要求指定存储器中某块的起始地址和长度,要求能将其内容清零。二、实验仪器和设备伟福lab6000仿真实验系统,奔腾以上计算机,装有wave集成调试软件三、实验过程设置块长度设置块起始地址地址加1当前地址内容清零是否清除完结束是否实验程序:block equ 4000h mov dptr, #block ; 起始地址 mov r0, #0 ; 清 256 字节 clr aloop: movx dptr, a inc dptr ; 指向下一个地址 djnz r0, loop ; 记数减一 ljmp $ end四、实验结果与分析1、实验程序:2、编译:3、运行结果:五、实验注意事项通过本实验,了解单片机读写存储器的读写方法,同时也了解单片机编程,调试方法。六、讨论、思考题如何将存储器块的内容置成某固定值(例全填充为0ffh)? 请学生修改程序,完成此操作修改后程序:编译:运行结果:七、心得体会 通过本实验,我了解到单片机读写存储器的读写方法,同时也了解到单片机编程,调试方法。学会了内存的移动方法,也加深对存储器读写的认识。实验项目名称: 内存块移动 实验学时: 2学时 同组学生姓名: 张 炎 实验地点: b403 实验日期: 2010-10-12 实验成绩: 批改教师: 批改时间: 一、实验目的和要求1、实验目的 (1)了解内存的移动方法 (2)加深对存储器读写的认识2、实验要求 将指定源地址和长度的存储块移到指定目标位置。二、实验仪器和设备伟福lab6000仿真实验系统,奔腾以上计算机,装有wave集成调试软件三、实验过程设置块的源地址设置块的目标地址设置移动长度从源地址取数保存到目标地址中源地址加1目标地址加1是否移动完结束是否实验程序:; 移动 3000h - 4000h, 256 字节 mov r0, #30h mov r1, #00h mov r2, #40h mov r3, #00h mov r7, #0loop: mov dph, r0 mov dpl, r1 movx a, dptr mov dph, r2 mov dpl, r3 movx dptr, a cjne r1, #0ffh, goon1 inc r0goon1: inc r1 cjne r3, #0ffh, goon2 inc r2goon2: inc r3 djnz r7, loop ljmp $ end四、实验结果与分析1、实验程序:2、编译:3、运行结果:五、实验注意事项块移动是计算机常用操作之一,多用于大量的数据复制和图象操作六、讨论、思考题 本程序是给出起始地址,用地址加一方法移动块,请思考给出块结束地址,用地址减一方法移动块的算法。另外,若源块地址和目标块地址有重叠,该如何避免?答:比较两个地址大小决定复制方向,假设使用rep movs指令,如果源地址大就要从低地址向高地址拷贝,df=0,否则df=1并且要从末尾拷贝。七、心得体会 通过本实验,我学会了内存的移动方法,也加深对存储器读写的认识。了解到单片机读写存储器的读写方法,同时也了解到单片机编程,调试方法。实验项目名称: p1口输入输出 实验学时: 2学时 同组学生姓名: 张 炎 实验地点: b403 实验日期: 2010-10-19 实验成绩: 批改教师: 批改时间: 一、实验目的和要求1、实验目的(1)学习p1口的使用方法(2)学习延时子程序的编写和使用2、实验要求(1)p1口做输出口,接八只发光二极管,编写程序,使发光二极管循环点亮(2)p1.0、p1.1作输入口接两个拨动开关,p1.2、p1.3作输出口,接两个发光二极管,编写程序读取开关状态,将此状态,在发光二极管上显示出来。(3)编程时应注意p1.0、p1.1作为输入口时应先置1,才能正确读入值。二、实验仪器和设备伟福lab6000仿真实验系统,奔腾以上计算机,装有wave集成调试软件三、实验过程1、实验电路及连线连线连接孔1连接孔21s0p1.02s1p1.13p1.2l44p1.3l5实验2: p1口输入输出连线连接孔1连接孔21p1.0l02p1.1l13p1.2l24p1.3l3实验1: p1口循环点灯实验1:p1口循环点灯 实验2:p1口输入输出 2、实验程序 loop: mov a, #01h mov r2, #8output: mov p1, a rl a call delay djnz r2, output ljmp loopdelay: mov r6, #0 mov r7, #0delayloop: djnz r6, delayloop djnz r7, delayloop ret end8051延时子程序的延时计算问题,对于程序查指令表可知mov,djnz指令均需用两个机器周期,在6mhz晶振时,一个机器周期时间长度为12/6mhz,所以该段程序执行时间为:(256255+2)2126 261ms3、实验框图(a) p1口循环点灯程序框图(b) p1口输入输出程序框图四、实验结果与分析1、实验程序:2、编译:3、运行结果:4、在proteus7中电路图:五、实验注意事项p1口是准双向口,它作为输出口时与一般的双向口使用方法相同。由准双向口结构可知当p1口用为输入口时,必须先对它置“1”。若不先对它置“1”,读入的数据是不正确的。六、讨论、思考题若是12mhz的晶振,延时程序如何修改?若是12mhz的晶振,延时程序如何修改?答:晶振12mhz,延时1秒程序如下:delay:mov 72h,#100loop3:mov 71h,#100loop1:mov 70h,#47loop0:djnz 70h,loop0 nop djnz 71h,loop1 mov 70h,#46loop2:djnz 70h,loop2 nop djnz 72h,loop3 mov 70h,#48loop4:djnz 70h,loop4七、心得体会此次实验我学习了p1口的使用方法,也学习了延时子程序的编写和使用;实现了p1口做输出口,接八只发光二极管,编写程序,使发光二极管循环点亮。在编程时应注意p1.0、p1.1作为输入口时应先置1,才能正确读入值。实验项目名称: 计数器实验 实验学时: 2学时 同组学生姓名: 张 炎 实验地点: b403 实验日期: 2010-10-19 实验成绩: 批改教师: 批改时间: 一、实验目的和要求 1、实验目的学习8051内部定时/计数器使用方法2、实验要求8051内部定时计数器t0,按计数器模式和方式1工作,对p3.4(t0)引脚进行计数。将其数值按二进制数在p1口驱动led灯上显示出来二、实验仪器和设备伟福lab6000仿真实验系统,奔腾以上计算机,装有wave集成调试软三、实验过程连线连接孔1连接孔21p1.0l02p1.1l13p1.2l24p1.3l35单脉冲输出t01、实验电路单次脉冲 2、实验框图开始设置工作方式开始计数计数,输出计数值3、实验程序mov tmod, #00000101b ; 方式1,记数器 mov th0, #0 mov tl0, #0 setb tr0 ; 开始记数loop: mov p1, tl0 ; 将记数结果送p1口 ljmp loop end四、实验结果与分析1、实验程序:2、在proteus7中电路图:五、实验注意事项本实验中内部计数器起计数器的作用。外部事件计数脉冲由p3.4引入定时器t0。单片机在每个机器周期采样一次输入波形,因此单片机至少需要两个机器周期才能检测到一次跳变。这就要求被采样电平至少维持一个完整的机器周期,以保证电平在变化之前即被采样。同时这就决定了输入波形的频率不能超过机器周期频率 六、讨论、思考题若定时计数器t0,按计数器模式和方式0工作,程序如何修改?答:mov tmod, #00000101b 修改为mov tmod, #00000100b 七、心得体会此次实验我学习了8051内部定时/计数器使用方法;了解到8051内部定时计数器t0,按计数器模式和方式1工作,对p3.4(t0)引脚进行计数。通过此次实验我对内部计数器的工作原理更加了解。实验项目名称: 外部中断实验 实验学时: 2学时 同组学生姓名: 张 炎 实验地点: b403 实验日期: 2010-10-25 实验成绩: 批改教师: 批改时间: 一、实验目的和要求1、实验目的(1)学习外部中断技术的基本使用方法。(2)学习中断处理程序的编程方法。2、实验要求用单次脉冲申请中断,在中断处理程序中对输出信号进行反转二、实验仪器和设备伟福lab6000仿真实验系统,奔腾以上计算机,装有wave集成调试软三、实验过程1、实验电路单次脉冲连线连接孔1连接孔21p1.0l02单脉冲输出int0 (51系列)2单脉冲输出eint (96系列)2、实验框图开始设置初始状态设置中断控制寄存器中断允许等待中断中断入口保护现场状态位取反状态位输出恢复现场中断返回主程序框图 外部中断子程序框图3、实验程序led equ p1.0ledbuf equ 0 ljmp start org 3interrupt0: push psw ; 保护现场 cpl ledbuf ; 取反led mov c, ledbuf mov led, c pop psw ; 恢复现场 retistart: clr ledbuf clr led mov tcon, #01h ; 外部中断0下降沿触发 mov ie, #81h ; 打开外部中断允许位(ex0)及总中断允许位(ea) ljmp $ end四、实验结果与分析1、实验程序:2、编译:3、在proteus7中电路图:五、实验注意事项中断服务程序的关键是: 1.保护进入中断时的状态,并在退出中断之前恢复进入时的状态。2.必须在中断程序中设定是否允许中断重入,即设置exo位。本例中使用了into中断,一般中断程序进入时应保护psw,acc以及中断程序使用但非其专用的寄存器。本例的中断程序保护了psw,acc等三个寄存器并且在退出前恢复了这三个寄存器。另外中断程序中涉及到关键数据的设置时应关中断,即设置时不允许重入。本例中没有涉及这种情况。into(p32)端接单次脉冲发生器。p1.0接led灯,以查看信号反转。六、讨论、思考题若采用int1中断源,电路如何连接,程序如何修改?答:将mov tcon, #01h改为mov tcon, #00h七、心得体会通过本次实验我学习了外部中断技术的基本使用方法;也学习了中断处理程序的编程方法。在实验过程中实现了用单次脉冲申请中断,在中断处理程序中对输出信号进行反转等。实验项目名称: 定时器实验 实验学时: 2学时 同组学生姓名: 张 炎 实验地点: b403 实验日期: 2010-10-25 实验成绩: 批改教师: 批改时间: 一、实验目的和要求1、实验目的(1)学习8051内部计数器的使用和编程方法。(2)进一步掌握中断处理程序的编程方法。2、实验要求用cpu内部定时器中断方式计时,实现每一秒钟输出状态发生一次反转二、实验仪器和设备伟福lab6000仿真实验系统,奔腾以上计算机,装有wave集成调试软件三、实验过程1、实验电路连线连接孔1连接孔21p1.0l0定时中断入口遇开始置t0中断工作方式保护现场设置定时常数秒计数值减1否设置初始状态位是否到1秒是 重新设置秒计数值设置秒计数值 y中断允许状态位取反输出状态位中断返回恢复现场等待中断 主程序框图 定时中断子程序框图2、实验框图3、实验程序tick equ 10000 ; 10000 x 100us = 1s t100us equ 256-50 ; 100us时间常数(6m) c100us equ 30h ; 100us记数单元 ledbuf equ 0 led equ p1.0 ljmp start org 000bht0int: push psw mov a, c100us+1 jnz goon dec c100usgoon: dec c100us+1 mov a, c100us orl a, c100us+1 jnz exit ; 100us 记数器不为0, 返回 mov c100us, #high(tick) mov c100us+1, #low(tick) cpl ledbuf ; 100us 记数器为0, 重置记数器 ; 取反ledexit: pop psw retistart: mov tmod, #02h ; 方式2, 定时器 mov th0, #t100us mov tl0, #t100us mov ie, #10000010b ; ea=1, it0 = 1 setb tr0 ; 开始定时 clr ledbuf clr led mov c100us, #high(tick) mov c100us+1, #low(tick)loop: mov c, ledbuf mov led, c ljmp loop end四、实验结果与分析1、实验程序:2、编译:3、在proteus7中电路图:五、实验注意事项 1、关于内部计数器的编程主要是定时常数的设置和有关控制寄存器的设置。内部计数器在单片机中主要有定时器和计数器两个功能。本实验使用的是定时器。2、定时器有关的寄存器有工作方式寄存器tmod和控制寄存器tcon。tmod用于设置定时器/计数器的工作方式0-3,并确定用于定时还是用于计数。tcon主要功能是为定时器在溢出时设定标志位,并控制定时器的运行或停止等。3、内部计数器用作定时器时,是对机器周期计数。每个机器周期的长度是12个振荡器周期。因为实验系统的晶振是6mhz,本程序工作于方式2,即8位自动重装方式定时器, 定时器100us中断一次, 所以定时常数的设置可按以下方法计算:机器周期=126mhz=2us(256-定时常数)2us=100us定时常数=206. 然后对100us中断次数计数10000次,就是1秒钟.4、在例程的中断服务程序中,因为中断定时常数的设置对中断程序的运行起到关键作用,所以在置数前要先关对应的中断,置数完之后再打开相应的中断。六、讨论、思考题若定时时间为500us,计数器初始值是多少?答:1s七、心得体会通过本次实验我学习了8051内部计数器的使用和编程方法;也进一步掌握中断处理程序的编程方法。在实验过程中,用cpu内部定时器中断方式计时,实现每一秒钟输出状态发生一次反转。也知道了定时器有关的寄存器有工作方式寄存器tmod和控制寄存器tcon。tcon主要功能是为定时器在溢出时设定标志位,并控制定时器的运行或停止等。实验项目名称: a/d转换实验 实验学时: 2学时 同组学生姓名: 张 炎 实验地点: b403 实验日期: 2010-11-01 实验成绩: 批改教师: 批改时间: 一、实验目的和要求1、实验目的(1)掌握a/d转换与单片机的接口方法。(2)了解a/d芯片adc0809转换性能及编程。(3)通过实验了解单片机如何进行数据采集。2、实验要求利用实验板上的adc0809做a/d转换器,实验板上的电位器提供模拟量输入,编制程序,将模拟量转换成二进制数字量,用8255的pa口输出到发光二极管显示。二、实验仪器和设备伟福lab6000仿真实验系统,奔腾以上计算机,装有wave集成调试软件三、实验过程1、实验电路连线连接孔1连接孔21in0电位器输出2ad_cscs03eocint048255_cscs15pa0l06pa1l17pa2l28pa3l39pa4l410pa5l511pa6l612pa7l72、实验框图主程序框图 3、实验程序mode equ 082h ; 方式0,pa,pc输出,pb输入cs0809 equ 8000hporta equ 9000h ; port aportb equ 9001h ; port bportc equ 9002h ; port ccaddr equ 9003h ; 控制字地址 org 0 mov dptr,#caddr mov a,#mode movx dptr,a mov dptr, #cs0809 mov a, #0 movx dptr, a ; 起动 a/d mov a, #40h djnz acc, $ ; 延时 100us movx a, dptr ; 读入结果 mov r7,#100 dly: mov dptr,#porta movx dptr,a djnz r7,dly ;延时 ljmp 0 end四、实验结果与分析1、实验程序:2、编译:3、运行结果:五、实验注意事项(1) a/d转换器大致有三类:一是双积分a/d转换器,优点是精度高,抗干扰性好;价格便宜,但速度慢;二是逐次逼近a/d转换器,精度,速度,价格适中;三是并行a/d转换器,速度快,价格也昂贵。(2)实验用的adc0809属第二类,是八位a/d转换器。每采集一次一般需100us。本程序是用延时查询方式读入a/d转换结果,也可以用中断方式读入结果。六、讨论、思考题试编程用中断方式读回a/d结果。mode equ 082h ; 方式0,pa,pc输出,pb输入cs0809 equ 8000hporta equ 9000h ; port aportb equ 9001h ; port bportc equ 9002h ; port ccaddr equ 9003h ; 控制字地址 org 0 mov dptr,#caddr mov a,#mode movx dptr,a mov dptr, #cs0809 mov a, #0 movx dptr, a ; 起动 a/d mov a, #40h djnz acc, $ ; 延时 100us movx a, dptr ; 读入结果 mov r7,#100七、心得体会通过本次实验我掌握了a/d转换与单片机的接口方法,了解a/d芯片adc0809转换性能及编程。也学会了如何利用实验板上的adc0809做a/d转换器,实验板上的电位器提供模拟量输入,编制程序,将模拟量转换成二进制数字量,用8255的pa口输出到发光二极管显示。实验项目名称: 八段数码管显示 实验学时: 2学时 同组学生姓名: 张 炎 实验地点: b403 实验日期: 2010-11-01 实验成绩: 批改教师: 批改时间: 一、实验目的和要求1、实验目的(1)了解数码管动态显示的原理。(2)了解用总线方式控制数码管显示2、实验要求利用实验仪提供的显示电路,动态显示一行数据二、实验仪器和设备伟福lab6000仿真实验系统,奔腾以上计算机,装有wave集成调试软件三、实验过程1、实验电路位选通信号 (0x002h) 段码输出(0x004h)数据总线连线连接孔1连接孔21key/led_cscs02、实验框图开始初始化显示参数关所有位显示取显示数据输出段码数据 输出位选通信号延时位选通信号移位指向下一个显示数据返回6位完成 否 是3、实验程序outbit equ 08002h ; 位控制口outseg equ 08004h ; 段控制口in equ 08001h ; 键盘读入口ledbuf equ 60h ; 显示缓冲num equ 70h ; 显示的数据delayt equ 75h ; ljmp startledmap: ; 八段管显示码 db 3fh, 06h, 5bh, 4fh, 66h, 6dh, 7dh, 07h db 7fh, 6fh, 77h, 7ch, 39h, 5eh, 79h, 71hdelay: ; 延时子程序 mov r7, #0delayloop: djnz r7, delayloop djnz r6, delayloop retdisplayled: mov r0, #ledbuf mov r1, #6 ; 共6个八段管 mov r2, #00100000b ; 从左边开始显示loop: mov dptr, #outbit mov a, #0 movx dptr, a ; 关所有八段管 mov a, r0 mov dptr, #outseg movx dptr,a mov dptr, #outbit mov a, r2 movx dptr, a ; 显示一位八段管 mov r6, #01 call delay mov a, r2 ; 显示下一位 rr a mov r2, a inc r0 djnz r1, loop mov dptr, #outbit mov a, #0 movx dptr, a ; 关所有八段管 retstart: mov sp, #40h mov n
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026届河北省石家庄市普通高中化学高二上期中监测试题含解析
- 多语宝宝:如何高效利用黄金期
- 香格里拉酒店面试题及答案
- 颜料绘画测试题及答案
- java数据结构面试题及答案顺序表
- 家电公司降级降职管理办法
- 家电公司生产设备管理细则
- 小学数学六年级上册-期末口算题专项突破练习(含答案)北师大版
- 2022年河北省唐山一中(唐山市)高三下学期二模考试英语试题
- 室内物业绿化管理方案(3篇)
- 兰花花叙事曲二胡曲谱
- 调解协议书电子版5篇(可下载)
- 材料性能学(第2版)付华课件1-弹性变形
- GB/T 4909.4-2009裸电线试验方法第4部分:扭转试验
- PDCA质量持续改进案例一:降低ICU非计划拔管发生率
- 2023年烟台蓝天投资开发集团有限公司招聘笔试题库及答案解析
- 企业标准编写模板
- 初中道德与法治 九年级(维护祖国统一)初中道德与法治九年级作业设计样例
- 幼儿园绘本故事:《骄傲的大公鸡》 课件
- 江西省赣州市于都县2022-2023学年九年级化学第一学期期中监测试题含解析
- 新冠核酸检测实验室PCR管八联管滤芯吸头等耗材质检和储存程序
评论
0/150
提交评论