欢迎来到冰豆网! | 帮助中心 分享价值,成长自我!
冰豆网
全部分类
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • 党团工作>
  • ImageVerifierCode 换一换
    首页 冰豆网 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    电子时钟实验报告电子时钟Word文档格式.docx

    • 资源ID:21428870       资源大小:161.20KB        全文页数:16页
    • 资源格式: DOCX        下载积分:3金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    电子时钟实验报告电子时钟Word文档格式.docx

    1、COH7F8H1F9H880H2A4H990H3B0HA88H499HB83H592H无显示FFH682H(2)音节设置原理:由不同频率的方波产生,音节与频率的关系如表1所示。要产生音频方波,只要算出某一音频的周期(1/频率),然后将此周期除以2,即为半周期的时间。利用计时器计时此半周期时间,每当计时到后就将输出方波的I/0反相,然后重复计时此半周期时间再对I/O反相,就可在I/O脚得到此频率的方波。在ZKS-03实验仪上,产生方波的I/O脚选用,通过跳线选择器JP1将单片机的与蜂鸣器的驱动电路相连。这样输出不同频率的方波,蜂鸣器便会发出不同的声音。另外,音乐的节拍是由延时实现的,如果1拍为秒

    2、,1/4拍是秒。只要设定延时时间,就可求得节拍的时间。延时作为基本延时时间,节拍值只能是它的整数倍,每个音节相应的定时器初值X可按下法计算:(1/2)*(1/f)=(12/fose)*(216-x)即x=216-(fose/24f)其中f:音调频率,当晶振fose=时,音节“1”相应的定时器初值为x,则可得x=63777D=F921H其它的可同样求得。在单片机上控制一个音符唱多长可采用循环延时的方法来实现。将乐谱中的每个音符的音调及节拍变换成相应的音调参数和节拍参数,将他们做成数据表格,存放在存储器中,通过程序取出一个音符的相关参数,播放该音符,该音符唱完后,接着取出下一个音符的相关参数,如此

    3、直到播放完毕最后一个音符,根据需要也可循环不停地播放整个乐曲。另外,对于乐曲中的休止符,一般将其音调参数设为FFH,FFH,其节拍参数与其他音符的节拍参数确定方法一致,乐曲结束用节拍参数为00H来表示。(3)实验流程图:闹钟模块:计数模块:五、源程序代码及注释注:首先将单片机用到的主要寄存器做下说明(如下);作秒的闪烁控制位;作响铃控制电平; 、作模式选择键S2、S1; 作分调整键S3(分钟数+1); 作时调整键S4(小时数+1);R0为计数5ms的次数;R1为秒数;R2为分钟数;R3为时钟数;R4在显示程序中作为向LED传递数据时的左移次数标志位;R4在音乐闹铃程序中读取TABLE中的数据;

    4、R5作为节拍长度;40H作显示的分;41H作显示的时;42H作闹钟的分;43H作闹钟的时;63H、64H存放延时程序DELAY的延时数;60H、61H作定时器T1的初值。;*主程序*S1 BIT ;定义模式选择键S2、S1S2 BIT S3 BIT ;定义时调整键S4,分调整键S3S4 BIT SDA BIT CLK BIT ORG0000HAJMP MAINORG 000BH ;T0的中断服务程序的入口地址AJMP TIMER ;跳转到时钟走时中断服务程序ORG 001BH ;T1的中断服务程序的入口地址AJMP ALARM_OPEN ;跳转到闹钟响铃中断服务程序ORG0030HMAIN:

    5、MOV 40H,#00 ;显示的分 MOV 41H,#00 ;显示的时 MOV 42H,#58 ;闹钟的分 MOV 43H,#23 ;闹钟的时 MOV R0,#00H;寄存器清零(RO为计数5ms的次数,R1为秒数, MOV R1,#00H ;R2为分钟数,R3为时钟数) MOV R2,#00H MOV R3,#00H MOV TMOD,#11H;设置T0,T1处于工作方式1 MOV TH0,#0EEH;设置定时器的初值 MOV TL0,#00H SETB EA ;允许总中断 SETB ET0 ;允许T0,T1中断 SETB ET1 SETB TR0 ;启动T0LOOP: LCALL DISP

    6、LAY1 ;调用显示程序 LCALL ALARM ;调用闹铃程序 LCALL MODE ;调用模式判断程序 AJMP LOOP*时钟显示部分*DISPLAY1: MOV DPTR,#TAB1MOV A,41HMOV B,#10DIV ABLCALL DISP1CLR ;LED1数码管显示数码,即小时的高位LCALL DELAYSETB JB ,TD ;控制LED2数码管的小数点dp闪烁 AJMP TD1TD: MOV A,BAJMP TD2TD1: MOV A,BADD A,#10TD2: LCALL DISP1 ;LED2数码管显示数码,即小时的低位CLR MOV A,40HLED3数码管显

    7、示数码,即分钟的高位MOV A,BLED4数码管显示数码,即分钟的低位RETDISP1: MOVC A,A+DPTR ;LED串并转换口从接收MOV R4,#08H ;R4记作左循环的次数DUP1: RLC A ;A带进位左循环移位MOV SDA,CCLR CLK ;上升沿触发数据接收SETB CLKDJNZ R4,DUP1*闹钟显示部分*DISPLAY2: MOV A,43H MOV B,#10 DIV AB LCALL DISP2 CLR ; LCALL DELAY SETB MOV A,42H RETDISP2: MOV R4,#08H ;DUP2: MOV SDA,C CLR CLK

    8、; SETB CLK DJNZ R4,DUP2*判断闹钟时间是否到来*ALARM: MOV A,40H CJNE A,#00H,MUSIC ;整点闹铃 LJMP B2MUSIC: MOV A,43H CJNE A,41H,B1 MOV A,42H CJNE A,40H,B1 ;音乐闹铃 MOV 70H,#00HNEXT: MOV A,70H MOV DPTR,#TABLE ;从TABLE中读取数据声响时间 MOVC A,A+DPTR MOV R4,A ;将TABLE中读取的数据存放在R4 JZ END0 ANL A,#0FH MOV R5,A ;R5作为节拍长度 MOV A,R4 SWAP A

    9、 JNZ SING CLR TR1 JMP D1SING: DEC A MOV 62H,A RL A MOV DPTR,#TABLE1 ;从TABLE1中读取数据声调 MOV TH1,A ;设定TH1值 MOV 61H,A MOV A,62H INC A MOV TL1,A ;设定TL1值 MOV 60H,A MOV TH1,61H MOV TL1,60H SETB TR1D1: ACALL DELAY0 ;声音延时 INC 70HLCALLMODE JMP NEXTEND0: JMP MUSICDELAY0:MOV R7,#2 ;R5的值就是声响持续时间D2: MOV R6,#214D3:

    10、MOV R4,#245 DJNZ R4,$ DJNZ R6,D3 DJNZ R7,D2 DJNZ R5,DELAY0 RETB1: CLR TR1B2:MOV 61H,#0FEH MOV 60H,#033H MOV TH1,61H MOV TL1,60H ;方波频率设为1KHz SETB TR1*闹钟响铃中断服务程序*ALARM_OPEN: PUSH ACC PUSH PSW CPL POP PSW POP ACC RETI*时钟走时中断服务程序*TIMER: MOV TH0,#0ECH ;重新对T0赋值,设置中断时间为5ms MOV TL0,#78H MOV 40H,R2 MOV 41H,R

    11、3 INC R0 ;计数5ms的次数加1 CJNE R0,#200,BACK ;不够200次,跳转到BACK CPL ;够200次,翻转控制LED闪动一下 MOV R0,#00H ;计数5ms的次数清0,秒数加1 INC R1 CJNE R1,#60,BACK ;不够60秒,跳转到BACK够60秒,秒数清0,分钟加1 INC R2 CJNE R2,#60,BACK ;够60分钟,跳转到BACK MOV R2,#00H ;够60分钟,分钟数清0,小时数加1 INC R3 CJNE R3,#24,BACK ;够24小时,跳转到BACK MOV R3,#00H ;够24小时,小时数清0BACK:*按

    12、键判断部分*MODE: MOV A,P3 ;软件消抖后再判断CJNE A,P3,MODEANL A,#0CH ;对S2、S1的值判断CJNE A,#00H,LOP1 AJMP T_BACK ;模式为00,开T1中断LOP1: CJNE A,#04H,LOP2 AJMP T_CHANGE ;模式为01,进行时间调整LOP2: CJNE A,#08H,LOP3 AJMP A_CHANGE ;模式为10,进行闹铃调整LOP3: AJMP A_CLOSE ;模式为11,关闭闹钟.时钟调整.T_CHANGE: LCALL DISPLAY1LCALL DELAY1JNB S3,T_HOUR ;S3为0,判

    13、断S4T_MIN: MOV R5,40H INC R5 ;S3为1,分钟数加1 CJNE R5,#60,LOP4 MOV R5,#00HLOP4: MOV 40H,R5MOV R2,40HAJMP MODET_HOUR:JNB S4,MODE ;S4为0,跳转到MODEMOV R5,41HINC R5 CJNE R5,#24,LOP5MOV R5,#00HLOP5: MOV 41H,R5MOV R3,41H.闹铃调整.A_CHANGE: LCALL DISPLAY2LCALL DELAY2JNB S3,A_HOUR ;A_MIN: MOV R5,42HINC R5 ;S3为1,分钟数加1CJN

    14、E R5,#60,LOP6LOP6: MOV 42H,R5A_HOUR:S4为0,跳转到MODEMOV R5,43HS4为1,小时数加1CJNE R5,#24,LOP7LOP7: MOV 43H,R5.返回.T_BACK: SETB ET1 ;开T1中断A_CLOSE: CLR ET1 ;关T1中断*延时程序*DELAY:MOV 63H,#5H D5: MOV 64H,#0FFH DJNZ 64H,$ DJNZ 63H,D5*延时程序1*DELAY1:MOV R7,#50HD6: DJNZ R7,D6*延时程序2*DELAY2:D7: DJNZ R7,D7*数码管显示的字形表*TAB1:DB0

    15、C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H ;数字09,不带小数点DB40H,79H,24H,30H,19H,12H,02H,78H,00H,10H ;数字09,带小数点*音乐的节拍表*TABLE: DB82H,01H,81H,94H,84H,0B4H,0A4H,04H DB82H,01H,81H,94H,84H,0C4H,0B4H,04H DB82H,01H,81H,0F4H,0D4H,0B4H,0A4H,94H DB0E2H,01H,0E1H,0D4H,0B4H,0C4H,0B4H,04H DB82H,01H,81H,94H,84H,0B4H,0

    16、A4H,94H DB00H*由音乐音符设置的T1计数值*TABLE1: DW64260,64440,64524,64580,64684,64777,64820,64898 ;音符计数值 DW64968,65030,65058,65110,65157,65178,65217END六、实验过程:启动Keil,新建一个工程,然后选择芯片(PhilipsP80/P87C52X2)。编写汇编语言程序,保存并添加至工程中,然后进行编译。进行调试,直至程序正确,将、的跳线接相应的A位,的跳线接相应的C位,拔掉其它不用的跳线。插好电源,插好通信线,打开实验仪电源开关,在实验上将工作模式开关SX拨到“LOAD”

    17、一档,按下复位开头RESET,然后启动DPFlash,进行程序装载,地址将会改变,单击“编程”,选择编程文件区,若出现错误,将实验台上的工作模式开关SX拨到“MON”位置,按下RESET复位开关,设置S0、S1、S3和S4的状态,再运行程序,拨动S0、S1、S3和S4对应的开头,检查电子时钟功能是否完整。多次调试、修改程序,直至功能实现。相应截图如下:实验感想:七、实验感想:本次实验做的还是比较艰难的.实验过程中我们遇到了很多很多的问题.首先是程序,不知道一开始有什么问题,实验程序就是不行,结果换了好几次才敲定了最终的程序.有了程序并不代表我们就成功了.我们也是在这里意识到理论和现实有多么大的差距,不知道调试了多少次,不是信号中断就是没有现象.当时都有些灰心了.不知跑了多少趟实验室换了多少个实验箱.这次实验我们算是得到了磨练.每当我们想放弃的时候我们都在互相鼓励.遇到的问题多不一定是件坏事,遇到的困难多了,我们了解电路板了解这个实验就更多了.


    注意事项

    本文(电子时钟实验报告电子时钟Word文档格式.docx)为本站会员主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2022 冰点文档网站版权所有

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

    收起
    展开