国产成人av人人爽人人澡-亚洲国产日韩欧美一区-好吊日视频这里只有精品-日本高清精品视频在线

你好!歡迎來(lái)到深圳市穎特新科技有限公司!
語(yǔ)言
當(dāng)前位置:首頁(yè) >> 技術(shù)中心 >> 單片機(jī)入門 >> 單片機(jī)精確毫秒延時(shí)函數(shù)

單片機(jī)精確毫秒延時(shí)函數(shù)

關(guān)鍵字:單片機(jī) 延時(shí) 作者:admin 來(lái)源:不詳 發(fā)布時(shí)間:2018-05-18  瀏覽:21

對(duì)于需要精確延時(shí)的應(yīng)用場(chǎng)合,需要精確知道延時(shí)函數(shù)的具體延時(shí)時(shí)間。以C語(yǔ)言編寫(xiě)的單片機(jī)延時(shí)函數(shù)網(wǎng)上有兩個(gè)不同的版本(都說(shuō)是延時(shí)n毫秒),分別如下:

void delay(uint x) //延時(shí)X毫秒
{
uint y,z;
for(z=x;z>0;z--)
for(y=110;y>0;y--);
}

void delay_ms(uint n)   //延時(shí)n毫秒
{
   uchar i;
   while(n--)
   {
     for(i=0;i<120;i++);
}
}

上述兩個(gè)函數(shù)的實(shí)現(xiàn)方法是一樣的,只是給的時(shí)間常數(shù)不同,一個(gè)是110,另一個(gè)是120。近來(lái)工作因?yàn)閷?duì)時(shí)間的精度要求很高,就特地驗(yàn)證了下這兩個(gè)函數(shù)運(yùn)行時(shí)所用的時(shí)間。 主程序?yàn)椋?/p>

void main(void)
{
   delay(1);
}

反匯編之后(推薦用C51智能反編譯器,不過(guò)要手工加上ORG地址和END結(jié)束符):

標(biāo)號(hào)                   指令                                    地址        機(jī)器碼        機(jī)器周期

                         ORG 0000H
Q0000:             LJMP Q0021                        ;0000   02 00 21
;==========================================================================
                   ORG   0003H
Q0003:             SETB C                                ;0003   D3                       1
                   MOV   A,R7                                  ;0004   EF                        1
                   SUBB A,#00H                            ;0005   94 00                   1
                   MOV   A,R6                                 ;0007   EE                        1
                   SUBB A,#00H                             ;0008   94 00                    1
                   JC    Q0020                                 ;000A   40 14                    2
                   MOV   R5,#6EH                             ;000C   7D 6E                 1
                   MOV   R4,#00H                            ;000E   7C 00                   1
Q0010:          MOV   A,R5                            ;0010   ED                            1
                   DEC   R5                                    ;0011   1D                           1
                   JNZ   Q0015                                ;0012   70 01                      2
                   DEC   R4                                    ;0014   1C                          1
Q0015:             MOV   A,R5                          ;0015   ED                          1
                   ORL   A,R4                                ;0016   4C                           1
                   JNZ   Q0010                              ;0017   70 F7                          2
                   MOV   A,R7                               ;0019   EF                              1
                   DEC   R7                                  ;001A   1F                              1
                   JNZ   Q0003                             ;001B   70 E6                          2
                   DEC   R6                                  ;001D   1E                               1
                   SJMP Q0003                            ;001E   80 E3                          2
Q0020:             RET                                     ;0020   22                                 2
;====================RESET 00-7F AND SET SP=07H============================
                         ORG   0021H
Q0021:             MOV   R0,#7FH                         ;0021   78 7F
                        CLR   A                                       ;0023   E4
Q0024:             MOV   @R0,A                           ;0024   F6
                         DJNZ R0,Q0024                       ;0025   D8 FD
                        MOV   SP,#07H                        ;0027   75 81 07
                         LJMP Q002D                            ;002A   02 00 2D
;====================MAIN PROGRAM==========================================
                       ORG   002DH
Q002D:             MOV   R7,#01H                         ;002D   7F 01             1
                       MOV   R6,#00H                        ;002F   7E 00               1
                          LJMP Q0003                             ;0031   02 00 03          2
;==========================================================================
                        END

單步執(zhí)行可以跟蹤程序的運(yùn)行,給個(gè)最終的結(jié)果就是總的執(zhí)行機(jī)器周期數(shù)為 :

第一個(gè)函數(shù):4+9+8*110+4+9=906

第二個(gè)函數(shù):4+9+8*120+4+9=986

如果單片機(jī)的晶振是12M,則一個(gè)機(jī)器周期的時(shí)間為12/(12*10e6)=1us

可見(jiàn)第二個(gè)程序更接近1ms(0.986us)的時(shí)間,第一個(gè)是0.906us

當(dāng)晶振是11.05926M時(shí),第一個(gè)延時(shí)函數(shù)的精確延時(shí)時(shí)間是983us,第二個(gè)是1069.8us,可見(jiàn)第一個(gè)函數(shù)的延時(shí)時(shí)間更精確一些。

而且延時(shí)時(shí)間越長(zhǎng),誤差就越大。

編輯:admin  最后修改時(shí)間:2018-05-18

聯(lián)系方式

0755-82591179

傳真:0755-82591176

郵箱:vicky@yingtexin.net

地址:深圳市龍華區(qū)民治街道民治大道973萬(wàn)眾潤(rùn)豐創(chuàng)業(yè)園A棟2樓A08

Copyright © 2014-2023 穎特新科技有限公司 All Rights Reserved.  粵ICP備14043402號(hào)-4

国产精品一区欧美二区| 久久经典一区二区三区| 日本男人女人干逼视频| 激情综合五月开心久久| 不卡视频免费一区二区三区| 男女午夜视频在线观看免费| 国产色偷丝袜麻豆亚洲| 国产免费一区二区三区不卡| 97人妻人人揉人人躁人人| 中文字幕在线五月婷婷| 日本大学生精油按摩在线观看| 日韩免费国产91在线| 欧美一区二区三区性视频| 麻豆印象传媒在线观看| 欧美久久一区二区精品| 中文文精品字幕一区二区 | 亚洲伊人久久精品国产| 久久国产精品热爱视频| 国产在线成人免费高清观看av| 国产高清精品福利私拍| 九九热最新视频免费观看| 国产色偷丝袜麻豆亚洲| 欧美一级内射一色桃子| 日韩精品在线观看完整版| 亚洲一区二区三在线播放| 色偷偷偷拍视频在线观看| 日韩成人动作片在线观看| 国产精品午夜小视频观看| 日本中文在线不卡视频| 精品视频一区二区三区不卡| 亚洲欧美日韩中文字幕二欧美| 欧美日韩中黄片免费看| 大香蕉久久精品一区二区字幕| 欧洲一级片一区二区三区| 精品精品国产自在久久高清| 日本在线视频播放91| 亚洲一区二区三区在线免费| 麻豆果冻传媒一二三区| 亚洲国产香蕉视频在线观看| 亚洲国产天堂av成人在线播放| 国产三级黄片在线免费看|