正文

【021】 延时法实现1个LED隔1s闪一次(汇编)2007-05-02 11:13:00

【评论】 【打印】 【字体: 】 本文链接:http://blog.pfan.cn/wentao/25456.html

分享到:

;**************************************************************************    ; 标题: 延时法实现1个LED隔1s闪一次(汇编)    ; 作者: wentao     http://blog.liuwentao.net    ;                  http://wentao.programfan.com    ; 参考: 延时子程序参考 http://blog.liuwentao.net/read.php?122    ; 日期: 2007.2.21    ; 软件: Keil A51 V8.00     ; 芯片: AT89X51    ; 说明: 实验板实测通过,这里1s并非精确值    ; 声明: 自用存档!另仅供需要的朋友参考,请勿用做不道德转载及商业用途!     ;**************************************************************************                     org  0000h                 jmp  start       start:        clr  p1.0        ;P1.0口置为低电平,灯亮                  call delay500ms  ;延时500毫秒                  setb p1.0        ;P1.0口置为高电平,灯灭                  call delay500ms  ;延时500毫秒                  jmp  start       ;循环       ;延时500毫秒子程序,12M晶振下,指令周期为12M×(1/12)=1us       delay500ms:                  ;1us*500701=500.701ms                 mov  r5, #4     ;1+[1+(1+2*255)*244+2*244]*4+2*4=500701    temp1:       mov  r6, #244   ;1+(1+2*255)*244+2*244    temp2:       mov  r7, #255   ;1+2*255                 djnz r7, $                 djnz r6, temp2                 djnz r5, temp1                 ret      end

阅读(3124) | 评论(0)


版权声明:编程爱好者网站为此博客服务提供商,如本文牵涉到版权问题,编程爱好者网站不承担相关责任,如有版权问题请直接与本文作者联系解决。谢谢!

评论

暂无评论
您需要登录后才能评论,请 登录 或者 注册