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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3489|回復: 16
收起左側

新手請教單片機延時問題

  [復制鏈接]
ID:230023 發表于 2017-8-30 11:21 | 顯示全部樓層 |閱讀模式
void delay (void)
{
unsinged char i j;
for(i=0;i<250;i++)
for(j=0;j<250;j++)

        ;
}

為什么是小于250呢?
回復

使用道具 舉報

ID:198530 發表于 2017-8-30 12:30 | 顯示全部樓層
因為計250個數就是從零到250,實際是0~249就是250個數,如0~9是10個數
回復

使用道具 舉報

ID:230035 發表于 2017-8-30 12:49 | 顯示全部樓層
因為unsighed char定義的東西為8位二進制,2^8就是256,只要不超過255都可以,至于你設置的250,是為了計算延時時間方便
回復

使用道具 舉報

ID:230023 發表于 2017-8-30 13:59 | 顯示全部樓層
恩,謝謝
回復

使用道具 舉報

ID:230046 發表于 2017-8-30 14:12 | 顯示全部樓層
純粹延時作用而已
回復

使用道具 舉報

ID:230023 發表于 2017-8-30 15:12 | 顯示全部樓層
dudoumayou 發表于 2017-8-30 12:49
因為unsighed char定義的東西為8位二進制,2^8就是256,只要不超過255都可以,至于你設置的250,是為了計算 ...

親我是初學者,麻煩給解釋下,如果是這樣
for(i=0;i<170;i++)
for(j=0;j<250;j++)計算時間是按170的來,那250是什么作用?
回復

使用道具 舉報

ID:7485 發表于 2017-8-30 15:40 | 顯示全部樓層
樓主還沒弄清楚什么是“for循環”。
回復

使用道具 舉報

ID:111634 發表于 2017-8-30 16:24 | 顯示全部樓層
應先學些基礎理論,才能事半功倍。
回復

使用道具 舉報

ID:229541 發表于 2017-8-30 18:53 | 顯示全部樓層
這個與單片機的晶振有關
回復

使用道具 舉報

ID:229541 發表于 2017-8-30 18:57 | 顯示全部樓層
這個與晶振有關,晶振直接影響著機器周期,進而影響著指令周期。這里
你的循環執行了250x250次就消耗了250x250個指令周期
回復

使用道具 舉報

ID:230146 發表于 2017-8-30 22:10 | 顯示全部樓層
unsighed char定義最大數值256,大于256就會變成0,就會直接跳出語句,所有要定義i不能超過256
回復

使用道具 舉報

ID:230148 發表于 2017-8-30 22:22 | 顯示全部樓層
不小于也行啊
回復

使用道具 舉報

ID:230170 發表于 2017-8-31 09:30 | 顯示全部樓層
根據你定義的數據類型所能表達的范圍,只是讓單片機做加或減操作達到演示效果,具體你計算每條指令的時鐘周期就可以較為精確的知道延時的時間長度。
回復

使用道具 舉報

ID:230245 發表于 2017-9-1 10:29 | 顯示全部樓層
這種延時程序只是占用cpu的資源,讓其執行空指令已達到耗時的目的。for循環是反復執行的意思,次數越多延時越長。170、250只是認為設置的循環次數,這是根據自己需要延時的長短來定的。(這種延時函數簡單常用,但精度不高)
回復

使用道具 舉報

ID:228585 發表于 2017-9-1 11:12 | 顯示全部樓層
問題不清晰
回復

使用道具 舉報

ID:227677 發表于 2017-9-1 16:48 | 顯示全部樓層
消抖一般用延時函數,按下的時候要消抖動(加延時),松手的時候也要消抖
回復

使用道具 舉報

ID:86913 發表于 2017-9-1 17:06 | 顯示全部樓層
我也剛剛在學,我理解為雙循環,循環的次數是170×250次,不知對不對?
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

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