- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
 - 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
 - 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
 - 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
 - 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
 - 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
 - 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
 
                        查看更多
                        
                    
                浅析51超声波测距器设计--中国矿业大学徐海学院电子04-1 鲍海鸿
                    程序清单
以下是用汇编语言编写的超声波测距控制源程序:
采用AT89S51  12MHz晶振
显示缓冲单元在40H~43H,使用内存44H、45H、46H用于计算距离
20H用于标志
VOUT   EQU    P1.0   ;脉冲输出端口
*中断入口程序*
ORG  0000H
      LJMP  START
ORG  0003H
      LJMP  PINT0
ORG  000BH
      LJMP  INTT0
ORG  0013H
      RETI
ORG  001BH
      LJMP  INTT1
ORG  0023H
RETI
ORG  002BH
      RETI
 
*主程序*
START: MOV  SP, #4FH
       MOV  R0, #40H   ;40~43H为显示数据存放单元(40为最高位)
       MOV  R7,#0BH
CLEARDISP:MOV  @R0, #00H
            INC   R0
            DJNZ  R7, CLEARDISP
            MOV  20H, #00H
            MOV  TMOD, #21H    ;T1为8位自动重装模式,T0为16位定时器
            MOV  TH0, #00H      ;65ms初值
            MOV  TL0, #00H      ;40KHz初值       
            MOV  TH1, #0F2H
            MOV  TL1, #0F2H
            MOV  P0, #0FFH
MOV  P1, #0FFH
            MOV  P2, #0FFH
            MOV  P3, #0FFH
MOV  R4, #04H        ;超声波脉冲个数控制(为赋值的一半)
SETB  PX0
SETB  ET0
STEB  EA
CLR   00H
SETB  TR0	            ;开启测距定时器
START1:    LCALL  DISPLAY
            JNB     00H, START1       ;收到反射信号时标志位为1
            CLR  EA
            LCALL  WORK          ;计算距离子程序
            SETB    EA
            CLR     00H
            SETB    TR0             ;重新开启测距定时器
            MOV    R2, #64H         ; 测量间隔控制(约4*100=400ms)
LOOP:      LCALL  DISPLAY
            DJNZ   R2, LOOP 
            SJMP   START 1
*中断程序*
;T0中断,65ms中断一次
INTT0:      CLR    EA
            CLR    TR0
            MOV   TH0, #00H
            MOV   TL0, #00H
            SETB   ET1
            SETB   EA
            SETB   TR0                ;启动计时器T0,用以计算超声波来回时间
            SETB   TR1                ;开启发超声波用定时器T1
OUT:        RETI
;T1中断,发超声波用
INTT1:      CPL    VOUT
            DJNZ   R4,RETIOUT
            CLR    TR1               ;超声波发送完毕,关T1
            CLR    ET1
            MOV   R4,#04H
            SETB   EX0               ;开启接收回波中断
RETIOUT:   RETI
;外中断0,收到回波时进入
PINT0:       CLR   TR0                ;关计数器
             CLR   TR1
             CLR   ET1
             CLR   EA
             CLR   EX0
             MOV  44H, TL0            ;将
                您可能关注的文档
最近下载
- 苏教版一年级数学上册基础练习题《分与合》.pdf VIP
 - 左宗棠收复新疆公开课-完整课件.ppt VIP
 - 二年级上册《称赞》教学设计一等奖 .docx VIP
 - TB10413-2018 铁路轨道工程施工质量验收标准.docx VIP
 - 高中信息技术《初识PS图层蒙版》优质教学课件设计.ppt VIP
 - 对外汉语教学-初级-我的一天.ppt VIP
 - 小学语文三年级修改病句专项训练题.docx VIP
 - 全国职业院校技能大赛(植物病虫害防治)赛项备考试题库大全(含答案).docx VIP
 - 16G362《钢筋混凝土结构预埋件》--书签.pdf VIP
 - 部编版小学语文六年级上册阅读技巧及解答1.pdf VIP
 
原创力文档
                        

文档评论(0)