分享

51单片机通用汇编延时子程序

 共同成长888 2015-07-13

51单片机通用汇编延时子程序 

[DELY]:通用延时子程序 
[地址]:7FEBH - FFEBH 
[功能]:延时 
[入口]:延时常数放在 R2 寄存器中。时间常数 N(十六进制)所对应的延时时间(6MZH 晶振时)见下表: 
  [出口]:R2=0 
  [占用寄存器]:R2 
  [调用]:无 
例:延时1 秒子程序 
   MOV   R2,#18H 
   LCALL 7FEBH 
   RET 
 
         ORG     7FEBH        ;通用延时子程序(07EBH & 0FEBH & ...) 
L7FEB:  PUSH    02H            ;R2(复位后R2即为 02H)存放时间常数,进栈保护 
L7FED:  PUSH    02H            ; R2 进栈保护 
L7FEF:  PUSH    02H            ; 进栈 
L7FF1:  DJNZ    R2,$            ;R2 不为零等待 
        POP     02H            ;出栈 
        DJNZ    R2,L7FEF        ; R2 不为零转 
        POP     02H            ; 出栈 
        DJNZ    R2,L7FED        ; R2 不为零转 
        POP     02H            ; 出栈 
        DJNZ    R2,L7FEB        ; R2 不为零转 
        RET                     ;子程序返回 
        END 
 
N(十六进制数)T(机器周斯)T(秒) 子程序地址 
1    11    0.000044     
C    2728    0.010912     
18    26323    0.105292    2800 
1D    50838    0.203352    2808 
21    80323    0.321292    2810 
24    109666    0.438664    2818 
26    133248    0.532992    2820 
28    160431    0.641724    2828 
29    175481    0.701024    2830 
2E    267146    1.068584    2838 
37    516836    2.067344    2840 
3D    760366    3.041464    2848 
42    1021681    4.086724    2850 
46    1275016    5.100064    2858 
54    2543878    10.175512    2860 
65    5144436    20.577744    2868 
70    7654053    30.616212    2870 
78    9986491    39.945964    2878 
7F    12432158    49.728632    2880 
98    24956083    99.824332    2888 
A9    37708623    150.83453     
B6    50353668    201.41467    2890 
CA    75697683    302.79073    2898 
D9    100218410    400.87365    28A0 
E6    125909940    503.63974    28A8 
F1    151248830    605.03532    28B0 
FF    188839490    755.35794     
0    191768000    767.072    28B8

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多