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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

单片机实验报告概况.docx

1、单片机实验报告概况北京联合大学单片机实验报告学 院: 自动化 专 业: 班 级: 学 号: 姓 名: 2012年12月29日实验1单片机实验系统硬软件环境认识一 实验目的了解单片机实验板、计算机和仿真器组的连接方法,了解WAVE仿真软件,学会单步、断点和全速运行的程序调试运行方法,学会察看各存储单元、特殊寄存器等参数变化情况。二 实验设备伟福通用微控制器实验系统一台,通用计算机一台,WAVE仿真软件三 实验内容1. 编写计算1234H0FE7H的程序(程序1),要求把和的高8位存入51H单元,和的低8位存入50H单元,并用WAVE仿真软件调试运行。2. 编写一个程序(程序2),实现将20H29

2、H内的数据由小到大的顺序排列。四 实验步骤1观察了解通用微控制器实验系统的硬件组成,及其与通用计算机的连接;打开计算机可在桌面上看到WAVE仿真软件图标。2键入实验程序(1)双击桌面上的“WAVE中文版”图标,打开开发环境,选择“模拟仿真”,点击“文件”新建一个汇编程序文件,并以.asm后缀保存。(2)输入实验程序1。程序1代码: ORG 0000H LJMP MAIN ORG 0000HMAIN: MOV A,#34H ADD A,#0E7H MOV 50H,A MOV A,#12H ADDC A,#0FH MOV 51H,A END(3)点击“项目管理”选择“编译”,注意观察编译结果有无错

3、误。若有错误打开文件进行修改,若无错误转向下一步。3.运行程序(1)编译无误后,点击“窗口/CPU窗口”以便在寄存器(或特殊寄存器)查看或送入必要的初始数据;点击 “窗口/数据窗口” 以便在RAM数据区DATA中查看或送入必要的初始数据。点击”执行/复位”(2)观察寄存器的值及PSW各位的初始状态。(3)点击调试/单步(F8),单步运行各条指令,注意观察有关寄存器的值及PSW的数据变化。(4)也可点击调试/全速运行(Ctrl+F9)连续运行程序。(5)将运行结果填入表1。表1:程序1运行结果地址A51H50H运行前000000运行后22221B4. 将程序2输入,并在20H29H单元中输入10

4、个数据,点击“执行”选择“全速运行”,并将相关结果记录在表2中。程序2代码:EXCH_FLAG BIT 7FH ORG 0000H CLR R0 MOV 20H,#36 MOV 21H,#01 MOV 22H,#78 MOV 23H,#23 MOV 24H,#15 MOV 25H,#05 MOV 26H,#75 MOV 27H,#89 MOV 28H,#16 MOV 29H,#07 LJMP MAIN ORG 0030HMAIN: MOV R1,#20H MOV R5,#10 CLR EXCH_FLAG DEC R5 MOV A,R1LOOP: MOV R3,A INC R1 CLR C MO

5、V A,R1 SUBB A,R3 JNC NO_EXCH SETB EXCH_FLAG MOV A,R3 XCH A,R1 DEC R1 XCH A,R1 INC R1NO_EXCH: MOV A,R1 DJNZ R5,LOOP JB EXCH_FLAG,MAIN SJMP $END表2:程序2运行结果地址20H21H22H23H24H25H26H27H28H29H运行前24014E170F054B591007运行后0105070F1017244B4E595. 改变20H29H单元中的10个数据,调试运行程序将结果记录在表3中。表3:程序2运行结果地址20H21H22H23H24H25H26H

6、27H28H29H运行前21011917593B24311007运行后01071017192124313B59五 思考与总结1要求数据1234H和0FE7H分别存入31H、30H和33H、32H单元(高字节在高地址单元),如何编写程序。 ORG 0000HLJMP MAINORG 0030HMAIN: MOV 30H,#34H MOV 31H,#12H MOV 32H,#0E7H MOV 33H,#0FH END2在程序2中实现将20H27H内的8个数据由大到小的顺序排列,应如何修改程序? 答:LOOP中的JNC NO_EXCH改为JC_EXCH。 实验2并行输入/输出接口P1一实验目的巩固并

7、行输入输出接口的基本知识,掌握P1口的使用方法。理解CPU对P1口的操作可以是字节操作,也可以是位操作,每一位可以独立定义为输入输出。熟悉汇编语言对P1口操作的编程方法。二 实验设备伟福通用微控制器实验系统一台,通用计算机一台,WAVE仿真软件三 实验内容1 按照图1将P1.0P1.3接扳鍵开关,P1.4P1.7接发光二极管。依据P1.0P1.3接扳鍵开关状态控制P1.4P1.7发光二极管点亮。 图1并行接口实验原理图四 实验步骤2 分别输入程序,调试并运行,记录实验现象。程序代码: ORG 0000H LJMP MAIN ORG 0030HMAIN:MOV P1,#0FFH L1: MOV

8、A,P1 SWAP A ORL A,#0FH MOV P1,A SJMP L1 END3 将P1.0P1.7全部接发光二极管,要实现如下功能:开始P1.0、P1.1点亮,左移50次后,P1.6、P1.7点亮,右移30次,循环往复之。试编制程序并实验之。程序代码:ORG 0000HLJMP MAINORG 0030HMAIN: MOV A,#03H MOV R1,#50 LJMP ZY1 MOV A,#0C0H MOV R1,#30 LJMP YY1 LJMP MAINZY1: DJNZ R1,ZY2 RETZY2: DEC R1 MOV P1,A RL A LJMP DL500MS RETYY

9、1: DJNZ R1,YY2 RETYY2: DEC R1 MOV P1,A RR A LJMP DL500MS RETDL500MS: MOV R2,#100DL1: MOV R3,#10DL2: MOV R4,#250DL3: DJNZ R4,DL3 DJNZ R3,DL2 DJNZ R2,DL1 RET END 五 思考与总结1. 在实验程序2中,若要将循环次数分别改为100和60,应如何修改程序?答:可直接将程序相应指令的50和30改为100和60,也可以再主程序中分别调用2次左移和右移子程序2. 在实验程序2中,若要将循环方向改为先右循环再左循环,应如何修改程序?答:可将主程序中相应

10、的左移和右移部分交换调用次序。3. 本次实验你有哪些收获?答:感觉自己学到的东西很有趣,很实用,能用自己的思维将功能要求通过程序转化为可以实际看到的,很有成就感。实验3定时器/计数器一实验目的巩固定时器/计数器的基本知识,掌握定时器/计数器方式控制字的设定方法,会应用定时器/计数器实现定时和计数功能。熟悉汇编语言对定时/计数器编程的方法。二 实验设备伟福通用微控制器实验系统一台,通用计算机一台,WAVE仿真软件三 实验内容按照图1将P1.7接发光二极管。要求利用定时器控制使LED亮一秒停一秒,周而复始。注意:其中长时间延时利用内部计数器方式。四 实验原理原理图如图1: 图1定时/计数器实验原理

11、图定时/计数器方式控制字:定时器1:方式2,计数方式,10次初值:F6H定时器0:方式1,定时方式,50ms初值:3CB0H五 实验步骤1根据实验内容要求设计程序并实验之。程序代码: ORG 0000H LJMP MAIN ORG 0030HMAIN: MOV TMOD,#61H MOV TH1, #0F6H MOV TL1, #0F6H SETB TR1LOOP: MOV TH0, #3CH MOV TL0, #0B0H SETB TR0T3_10: JBC TF0,T3_20 SJMP T3_10T3_20: CPL P1.0 NOP JBC TF1,T3_30 SJMP LOOPT3_3

12、0: CPL P1.7 SJMP LOOP END2若要使LED亮0.5秒停0.5秒循环,应如何修改程序?实验之。答:子程序LOOP改为LOOP: MOV TH0,#9EH MOV TL0,#58H SETB TR0六 思考与总结1定时器的方式控制字TMOD应如何确定,其值是多少?答:61H=0110 0001B2T1、T0的初值是如何刷新的?答:T1没有进行刷新,T0由定时1s后重新进入LOOP重装T0初值3若要用R7做计数器计定时器0溢出次数实现1秒钟定时,应当怎样修改程序?答: ORG 0000H LJMP MAIN ORG 0030HMAIN: MOV TMOD,#01H MOV R7

13、, #10LOOP: MOV TH0, #3CH MOV TL0, #0B0H SETB TR0T3_10: JBC TF0,T3_20 SJMP T3_10T3_20: CPL P1.0 NOP DEC R7 DJNZ R7,T3_30 SJMP LOOPT3_30: MOV R7,#10CPL P1.7 SJMP LOOP END4本次实验你遇到了哪些问题?是如何解决的?答:试验中定时器的初值计算和试验箱的晶振周期不清楚,出现了LED灯亮灭时间不符合要求,最后请教老师解决了。实验4中断的使用一实验目的进一步理解中断的概念,掌握使用中断功能的一般方法,识记中断服务程序的入口地址。理解中断服务

14、程序的编程方法。二实验设备伟福通用微控制器实验系统一台,通用计算机一台,WAVE仿真软件三实验内容由中断信号控制P1.7,并连接发光二极管LED,使其亮灭交替变换。四实验原理如图1:图1 中断实原理图五实验步骤1根据实验内容要求设计程序并实验之。程序代码: ORG 0000H LJMP MAIN ORG 0003H ;外部中断0入口地址 LJMP EX0_INT ORG 001BH ;定时器T1中断入口地址 LJMP T1_INT ORG 0030HMAIN: MOV SP,#5FH SETB P3.2 ;初始化P3.2即外部中断口 CLR IT1 ;初始化定时器1中断 CLR PX0 ;初始

15、化外部0中断优先 SETB EX0 ;外部中断0允许 SETB EA ;中断总允许 SJMP $ ORG 1000HEX0_INT: MOV TMOD,#10H ;外部中断0 MOV TH1,#0DCH ;定时器1初值 MOV TL1,#00H SETB TR1 ;启动T1 SETB ET1 ;允许T1中断 SETB PT1 ;T1优先 MOV R7,#100 ;计数100次 JNB P3.2,$ ;无外部中断 CLR TR1 ;由外部中断,停止计时 RETI ORG 2000HT1_INT:MOV TH1,#0DCH ;T1初值 MOV TL1,#00H DJNZ R7,BREAK ;R7计满100次,跳转BREAK返回 MOV R7,#100 CPL P1.7 ;脉冲取反BREAK: RETI END六思考与总结1外部中断0、定时器1的中断处理程序入口地址分别是多少?答:0003H,001BH2给实验程序写出注释。答:注释如上。3修改程序使LED亮1秒灭1秒并实验之。4若要使LED灯在开关SB打开时总是处于灭的状态,试修改程序并实验之。答:EX0_INT中JNB P3.2,$之后加一句 CLR P1.7

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

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