题目七段显示器29.docVIP

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
題目: 七段顯示器 喇叭之聲調控制 班級:四技微電三甲 學號:4973A040 姓名:朱仁宏 指導老師:陳昭綾 功能描述: 當接上電源時,七段顯示器由1顯示到8,並配合蜂鳴器由Do、Re、Mi、Fa、So、La、Si、Do的順序變化做循環。 原理步驟: 七段顯示器顯示1 ,配合蜂鳴器發出聲響Do 七段顯示器顯示2 ,配合蜂鳴器發出聲響Re 七段顯示器顯示3 ,配合蜂鳴器發出聲響Mi 七段顯示器顯示4 ,配合蜂鳴器發出聲響Fa 七段顯示器顯示5 ,配合蜂鳴器發出聲響So 七段顯示器顯示6 ,配合蜂鳴器發出聲響La 七段顯示器顯示7 ,配合蜂鳴器發出聲響Si 七段顯示器顯示8 ,配合蜂鳴器發出聲響Do 程式碼: SEG EQU P1 ;定義P1為SEG(LED) SPK EQU P1.7 ;定義P1.7為SPK TEMP_LO DATA 30H ;位址30H命名為TEMP_LO,存Tone_L值 TEMP_HI DATA 31H ;位址31H命名為TEMP_HI,存Tone_H值 MAX EQU 65536 ;常數MAX=65536 ;----------------------------------------------------------------------------- ORG 00H ; MOV SP,#5FH ;將堆疊指標SP改為5F ;----------------------------------------------------------------------------- LOOP: MOV R0,#0 ;清除R0(計數器) MOV R1,#8 ;發音計數器,設定為8 LP1: MOV DPTR,#SEG_TABLE ;將7段計數表之起始位址載入DPTR MOV A,R0 ;7段指標載入A MOVC A,@A+DPTR ;將(A+DPTR)位址之7段計數值載入A MOV SEG,A ; MOV R7,#6 ; CALL DELAY ;呼叫延遲副程式 LP2: MOV DPTR,#TONE_TABLE ;將音階計數表之起始位址載入DPTR MOV A,R0 ;音階指標載入A RL A ;並成以2(Tone_H之位址) PUSH ACC ;暫存A之值於堆疊區 MOVC A,@A+DPTR ;將(A+DPTR)位址之音階計數值載入A MOV TEMP_HI,A ;並存放於TEMP_HI POP ACC ;自堆疊區取回A之值 INC A ;A內之位址增一 MOVC A,@A+DPTR ; 將(A+DPTR)位址之音階計數值載入A MOV TEMP_LO,A ; 並存放於TEMP_L0 CALL MUSIC ;呼叫「MUSIC副程式」 MOV R7,#6 ; CALL DELAY ; 呼叫延遲副程式 INC R0 ; DJNZ R1,LP1 ; JMP LOOP ;重新開始 ;--------------DELAY 5ms SECOND------------------------------------ ; DELAY: MOV TMOD, ; 延遲副程式: LOOPDY: MOV R6,#100 ; 使用Timer 0計數 LOOPDY1: MOV TH0,#HIGH(65536-500) ;工作於Mode 1 MOV TL0,#LOW(65536-500) ;計數值為5000 SETB TR0 ;Timer本身計時時間約5 JNB TF0,$ ;毫秒,由R6控制迴路100

文档评论(0)

tcpe + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档