中断实验报告_第1页
中断实验报告_第2页
中断实验报告_第3页
中断实验报告_第4页
中断实验报告_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

实验四中断实验一、实验目的1、掌握单片机系统中断的原理及使用方法。2、理解键盘扫描和去抖动的原理。3、掌握键盘扫描实现方法。二、实验内容1、见图一。假设单片机晶振频率设定为6MHz。用中断方式来完成以下要求,且通过虚拟示波器观看波形。A、使用定时器1以方式0产生周期为500us的等宽方波连续脉冲,并由P1.0输出。ORG0000HLJMPMAINORG001BHLJMPIT1PORG0100HMAIN:MOVSP,#60HMOVTMOD,#00HMOVTL1,#03HMOVTH1,#0FCHSETBTR1SETBET1SETBEASJMP$IT1P:MOVTL1,#03HMOVTH1,#0FCHCPLP1.0RETIENDB、使用定时器0以方式2产生周期为200us的等宽方波连续脉冲,并由P1.1输出。ORG0000HLJMPMAINORG000BHLJMPIT0PORG0100HMAIN:MOVSP,#60HMOVTMOD,#02HMOVTL0,#0CEHMOVTH0,#0CEHSETBTR0SETBET0SETBEASJMP$IT0P:CPLP1.1RETIENDC、编程使T0工作于定时工作方式1,产生500us等宽方波从P2.7输出。T1工作于计数工作方式2,其计数外部脉冲由T0产生,即P2.7引脚与P3.5(T1引脚)相连,T1每计数100个,P1.2取反输出一次。ORG0000HLJMPMAINORG000BHLJMPIT0PORG001BHLJMPIT1PORG0100HMAIN:MOVSP,#60HMOVTMOD,#61HMOVTL0,#83HMOVTH0,#0FFHMOVTL1,#9CHMOVTH1,#9CHSETBTR0SETBTR1MOVIE,#8AHCLRTF1SJMP$IT0P:MOVTL0,#83HMOVTH0,#0FFHCPLP2.7RETIIT1P:JBTF1,IT1PMOVTL1,#9CHCPLP1.2RETIENDD、编程使T0工作于定时工作方式1,产生500us等宽方波从P2.6输出到P3.3(INT1脚),如图所示。T1工作于定时工作方式2,由T1来测量P3.3脚信号的正脉冲宽度,并通过示波器加以验证。图一2、见图二。假设单片机晶振频率设定为12MHz。用定时查询或中断方式完成以下功能。A、通过外部按键(INT1引脚连接)以中断方式控制LED的上移和下移。ORG0000HLJMPMAINORG0013HLJMPINTORG1000HMAIN:MOVSP,#60HSETBEX1CLRIT1SETBEALIGHT:MOVA,#7FHLOOP:RLAMOVP1,ALCALLDELLJMPLOOPINT:MOVA,#0FEHLOOP1:RRAMOVP1,ALCALLDELJNBP3.3,LOOP1MOVA,#7FHEXIT:RETIDEL:MOVR7,#200DEL1:MOVR6,#248NOPDEL2:DJNZR6,DEL2DJNZR7,DEL1RETENDB、通过外部按键(T0引脚连接)以中断方式控制LED的上移和下移。ORG0000HLJMPMAINORG000BHLJMPIT1PORG1000HMAIN:MOVSP,#60HMOVR5,#08HSETBET0SETBTR0SETBEALIGHT:MOVA,#7FHLOOP:RLAMOVP1,ALCALLDELLJMPLOOPIT1P:JBP3.4,EXITMOVA,#0FEHLOOP1:RRAMOVP1,ALCALLDELJNBP3.4,LOOP1MOVA,#7FHEXIT:RETIDEL:MOVR7,#200DEL1:MOVR6,#248NOPDEL2:DJNZR6,DEL2DJNZR7,DEL1RETENDC、以查询方式重做A。ORG0000LJMPMAINORG0030HMAIN:MOVP1,#55HSETBEX1SETBEALOOP1:SETBIT1LOOP0:JNBIE1,LOOP0MOVA,P1RLAMOVP1,ALJMPLOOP1ENDD、以查询方式重做B。ORG0000LJMPMAINORG0030HMAIN:MOVTMOD,#06HMOVP1,#0AAHLOOP1:MOVTL0,#0FFHMOVTH0,#0FFHSETBTR0LOOP0:JNBTF0,LOOP0CLRTF0CLRTR0MOVA,P1RLAMOVP1,ALJMPLOOP1ENDE、通过INT0引脚外界4输入与门扩展外部中断,编程实现扩展出的四个开关以中断方式,分别实现LED的上移、下移、亮和灭。ORG0000LJMPMAINORG0013HLJMPOUTORG0030HMAIN:MOVSP,#0060HMOVP1,#7FHSETBIT1SETBEX1SETBEAWAIT:LJMPWAITOUT:JBP2.0,OUT1LJMPPLAY0OUT1:JBP2.1,OUT2LJMPPLAY1OUT2:JBP2.2,OUT3LJMPPLAY2OUT3:LJMPPLAY3PLAY0:MOVA,P1RRAMOVP1,ARETIPLAY1:MOVA,P1RLAMOVP1,ARETIPLAY2:MOVP1,#00HRETIPLAY3:MOVP1,#0FFHRETIENDF、以查询方式重做E。ORG0000LJMPMAINORG0030HMAIN:MOVSP,#0060HSETBIT1MOVP1,#7FHWAIT:JNBIE1,WAITJBP2.0,OUT1LJMPPLAY0OUT1:JBP2.1,OUT2LJMPPLAY1OUT2:JBP2.2,OUT3LJMPPLAY2OUT3:LJMPPLAY3PLAY0:MOVA,P1RRAMOVP1,ARETIPLAY1:MOVA,P1RLAMOVP1,ARETIPLAY2:MOVP1,#00HRETIPLAY3:MOVP1,#0FFHLJMPWAITEND图二3、见图三,编程实现以下功能:数码管初始显示数字0。每按键一次,数字加1,直到F。再加1,数字变为1,以后重复以上变化。ORG0000HLJMPMAINORG1000HMAIN:MOVSP,#60HMOVR0,#0FHMOVA,#0FFHMOVB,#3FHMOVP3,BREDO:LCALLINTLJMPREDOINT:JBP1.7,EXITLCALLDELJNBP1.7,EXITINCALCALLLOOPDJNZR0,INTLCALLLOOP1LJMPINTLOOP:PUSHACCMOVDPTR,#TABMOVCA,@A+DPTRMOVP3,APOPACCRETLOOP1:MOVA,#0FFHMOVR0,#0FHEXIT:RETTAB:DB06H,5BH,4FH,66H,6DH,7DH,07HDB7FH,6FH,77H,7CH,39H,5EH,79H,71HDEL:MOVR7,#50DEL1:MOVR6,#100DJNZR6,$DJNZR7,DEL1RETEND图三4、见图四,编程实现以下功能。按不同位置按键,数码管显示该按键代表数值。若无按键按下时,显示上一次按键的数值。ORG0000HMOV32H,#10HSETBF0MAIN:LCALLDISPLCALLKEYJBF0,MAINLCALLDELAYLCALLKEYJBF0,MAINMOV32H,30HMAIN1:LCALLDELAYLCALLKEYJNBF0,MAIN1LCALLDELAYLCALLKEYJNBF0,MAIN1SJMPMAINKEY:MOVR0,#7FHMOV30H,#00HSETBF0MOVR1,#04HKEY1:MOVP2,R0MOVA,P2SWAPAMOVR2,#04HKEY2:RLCAJNCKEYEND1INC30HDJNZR2,KEY2MOVA,R0RRAMOVR0,ADJNZR1,KEY1SETBF0SJMPKEYENDKEYEND1:CLRF0KEYEND:RETDELAY:MOVR7,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论