欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2199|回復: 0
打印 上一主題 下一主題
收起左側

DIY 較為準確的單片機延時

[復制鏈接]
跳轉到指定樓層
樓主
ID:80436 發表于 2015-5-20 18:30 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
自己總結,不完善,歡迎指正!!!!

主函數調用Delay10us( )時,先執行一個LCALL指令(2 μs),然后執行6個_NOP_( )語句(6 μs),最后執行了一個RET指令(2 μs),所以執行上述函數時共需要10 μs。
void Delay10us( )
{
    _NOP_( );
    _NOP_( );
    _NOP_( );
    _NOP_( );
    _NOP_( );
    _NOP_( );
  }
/*****************************************************/
//12MHZ 晶振 延時1s
/****************************************************/
void delay1s()
{
        unsigned char h,i,j,k;        
        for(h=5;h>0;h--)      
        for(i=4;i>0;i--)        
        for(j=116;j>0;j--)        
        for(k=214;k>0;k--);
}
/*****************************************************/
//12MHZ 晶振 延時10ms
/****************************************************/
void delay10ms()
{
          unsigned char i,j,k;   
        for(i=5;i>0;i--)        
        for(j=4;j>0;j--)        
        for(k=248;k>0;k--);
}
/*****************************************************/
//12MHZ 晶振 延時200ms
/****************************************************/
void delay200ms(void)
{
          unsigned char i,j,k;
        for(i=5;i>0;i--)        
        for(j=132;j>0;j--)         
        for(k=150;k>0;k--);
}
/*****************************************************/
//12MHZ 晶振 延時500ms
/****************************************************/
void delay500ms()
{
        unsigned char i,j,k;         
        for(i=15;i>0;i--)         
        for(j=202;j>0;j--)         
        for(k=81;k>0;k--);
}


延時模塊:其中問號代表要填的數,要延時多少,到表格中去找數據,然后填上就OK!切忌3條FOR語句不能顛倒順序
void Delay()
{
    unsigned char a,b,c;
    for(a=0;a<?;a++)
    for(b=0;b<?;b++)
    for(c=0;c<?;c++);
}  
延時時間           a的值                 b的值               c的值       延時誤差(us)
10us                       1                       1                       1                         -0.5      
20us                       1                       1                       8                         0  
30us                       1                       1                       15                       +0.5
40us                       2                       1                       9                         0  
50us                       1                       1                       28                           0  
60us                       1                       1                       35                       +0.5
70us                       1                       1                       42                       +1
80us                       1                       1                       48                           0
90us                       1                       1                       55                       +0.5  
100us                     1                       1                       61                       -0.5  
200us                     1                       1                       128                       0  
300us                     3                       1                       63                       +1.5  
400us                     2                       1                       129                       0  
500us                     5                       1                       63                       +0.5  
600us                     6                       1                       63                         0  
700us                     7                       1                       63                           -0.5  
800us                     1                       3                       175                       +0.5  
900us                     9                       1                       63                         -1.5  
1ms                        1                       3                       219                       -1.5
2ms                        2                       3                       220                       +3
3ms                        3                       3                       220                       +3
Xms                        X                       3                       220                       +3         
(X的范圍為2到255)


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表