久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索

單片機(jī)for延時(shí)程序 大神問(wèn)個(gè)初學(xué)問(wèn)題

查看數(shù): 7886 | 評(píng)論數(shù): 28 | 收藏 0
關(guān)燈 | 提示:支持鍵盤翻頁(yè)<-左 右->
    組圖打開中,請(qǐng)稍候......
發(fā)布時(shí)間: 2023-8-22 18:46

正文摘要:

51單片機(jī)void delay (void) {uint i; for(i=0;i<25530;i++;); } 能一條條解釋下嗎?感謝!! 是什么意思

回復(fù)

ID:517951 發(fā)表于 2023-8-31 07:18
for(i=0;i<25530;i++;) ;這條語(yǔ)句里i++;多了一個(gè);
ID:1092275 發(fā)表于 2023-8-30 15:13

延時(shí)的for循環(huán)就是對(duì)設(shè)定的計(jì)數(shù)進(jìn)行計(jì)數(shù),直到計(jì)數(shù)完畢。
ID:1088383 發(fā)表于 2023-8-30 10:28
we199999 發(fā)表于 2023-8-23 00:28
還有這個(gè)麻煩您了。為啥寫的這個(gè)流水燈只有一個(gè)燈亮?就在圖片藍(lán)色行delay那里就結(jié)束了。進(jìn)行不了下一步 ...

這個(gè)可能是delay函數(shù)出問(wèn)題了吧
ID:1040201 發(fā)表于 2023-8-28 16:34
還是買個(gè)開發(fā)板  我看看教程
ID:1092048 發(fā)表于 2023-8-27 21:35
// 使用for循環(huán)來(lái)實(shí)現(xiàn)延遲 for(i=0; i<25530; i++) // 循環(huán)次數(shù)為25530次 {     // 空循環(huán),不執(zhí)行任何操作 }
ID:1092048 發(fā)表于 2023-8-27 21:34
定義1個(gè)無(wú)符號(hào)的整型變量i,
ID:1064915 發(fā)表于 2023-8-25 14:32
51單片機(jī)利用for語(yǔ)句嵌套實(shí)現(xiàn)簡(jiǎn)單的延時(shí)1s功能

名詞解釋:

(1)時(shí)鐘周期。定義為時(shí)鐘頻率的倒數(shù),本例使用12MHz的時(shí)鐘頻率,它的時(shí)鐘周期大約就是1/12μs。

(2)機(jī)器周期。單片機(jī)的基本操作周期,STC89C51系列的單片機(jī)來(lái)說(shuō),一個(gè)機(jī)器周期由12個(gè)時(shí)鐘周期組成,也就是1μs。

(3)指令周期。指的是單片機(jī)執(zhí)行一條指令需要的時(shí)間,一個(gè)指令周期需要1~4個(gè)機(jī)器周期。一個(gè)for循環(huán)需要8個(gè)指令周期。

假設(shè)單片機(jī)采用了12MHz的時(shí)鐘頻率,利用for語(yǔ)句嵌套實(shí)現(xiàn)簡(jiǎn)單的延時(shí)1s功能。

unsigned int i;

Unsigned char j; //定義兩個(gè)循環(huán)變量i、j

for (i = 1000; i > 0; i--) //外層循環(huán)1000次

for (j = 124; j > 0; j--) ; //內(nèi)層循環(huán)124次

內(nèi)層循環(huán)代碼含義:

在12MHz的時(shí)鐘頻率下,for循環(huán)124次所消耗的時(shí)間ntime是:

ntime= 124次 × 8個(gè)指令周期 × 1μs = 992μs

也就是內(nèi)循環(huán)延時(shí)大概為1ms。

那么,全部執(zhí)行完成花費(fèi)的總時(shí)間T大約是:

T = 1000 × ( ntime + 8 × 1 ) = 1000 ms=1s,基本上達(dá)到延時(shí)1s的功能。這個(gè)延時(shí)程序中外層循環(huán)的變量是多少,整個(gè)for嵌套語(yǔ)句就延時(shí)大約多少毫秒,在以后的應(yīng)用當(dāng)中,會(huì)經(jīng)常用到這個(gè)程序進(jìn)行不需要精確時(shí)間的延時(shí)。

比如,要實(shí)現(xiàn)4s的延時(shí),就把i=1000修改為i=4000就可以了。
ID:420836 發(fā)表于 2023-8-25 07:03
延時(shí)的for循環(huán)就是對(duì)設(shè)定的計(jì)數(shù)進(jìn)行計(jì)數(shù),直到計(jì)數(shù)完畢。
ID:1091757 發(fā)表于 2023-8-24 17:13
sttt300 發(fā)表于 2023-8-24 09:23
這不可能,可能中間有這個(gè)delay函數(shù),你再看看是不是看漏了
或者編譯一下,有沒(méi)有報(bào)錯(cuò)
我感覺(jué)你不是來(lái) ...

剛學(xué),我看了是進(jìn)行宏定義了
ID:596109 發(fā)表于 2023-8-24 15:08
we199999 發(fā)表于 2023-8-23 11:42
我看有的教程只有聲明,沒(méi)有定義是怎么做到實(shí)現(xiàn)效果呢

這種也有延時(shí)效果的
ID:596109 發(fā)表于 2023-8-24 15:07
we199999 發(fā)表于 2023-8-23 00:28
還有這個(gè)麻煩您了。為啥寫的這個(gè)流水燈只有一個(gè)燈亮?就在圖片藍(lán)色行delay那里就結(jié)束了。進(jìn)行不了下一步 ...

第12行有問(wèn)題,會(huì)影響后面的代碼
ID:647261 發(fā)表于 2023-8-24 09:23
we199999 發(fā)表于 2023-8-23 18:16
有的只有聲明沒(méi)定義咋也能運(yùn)行呢?也沒(méi)看到宏定義

這不可能,可能中間有這個(gè)delay函數(shù),你再看看是不是看漏了
或者編譯一下,有沒(méi)有報(bào)錯(cuò)
我感覺(jué)你不是來(lái)問(wèn)問(wèn)題的,是來(lái)找老師的吧?這也太基礎(chǔ)了吧,連入門都不算
ID:592807 發(fā)表于 2023-8-24 09:04
cnfloatleaf 發(fā)表于 2023-8-22 23:24
void delay (void)    //定義一個(gè)子程序, void 沒(méi)有返回值
{uint i;                  // 定義一個(gè)變量, ...

你就寵著她吧,符號(hào)都錯(cuò)了 ++   和 +  +能一樣嗎

51hei截圖_20230824090326.png (17.92 KB, 下載次數(shù): 52)

51hei截圖_20230824090326.png
ID:1091796 發(fā)表于 2023-8-23 11:57
基本定義/主要內(nèi)容:該代碼段是一個(gè)名為"delay"的函數(shù),它沒(méi)有返回值(void)。函數(shù)中包含一個(gè)循環(huán),使用一個(gè)無(wú)符號(hào)整數(shù)變量i進(jìn)行計(jì)數(shù),循環(huán)的次數(shù)為25530次。
ID:1091757 發(fā)表于 2023-8-23 11:44
mengzhixinheng 發(fā)表于 2023-8-23 07:21
n被不斷被初始化了,你這樣也不是流水燈的效果

可以的,就是延時(shí)我換了個(gè)方法就出問(wèn)題,之前是能實(shí)現(xiàn)效果
ID:1091757 發(fā)表于 2023-8-23 11:42
201936010427 發(fā)表于 2023-8-23 10:21
延時(shí)函數(shù)有問(wèn)題,延時(shí)函數(shù)就是為了讓單片機(jī)在那里空運(yùn)行,你現(xiàn)在只定義了一個(gè)延時(shí)函數(shù),卻沒(méi)有定義延時(shí)函 ...

我看有的教程只有聲明,沒(méi)有定義是怎么做到實(shí)現(xiàn)效果呢
ID:1084825 發(fā)表于 2023-8-23 10:21
we199999 發(fā)表于 2023-8-23 00:28
還有這個(gè)麻煩您了。為啥寫的這個(gè)流水燈只有一個(gè)燈亮?就在圖片藍(lán)色行delay那里就結(jié)束了。進(jìn)行不了下一步 ...

延時(shí)函數(shù)有問(wèn)題,延時(shí)函數(shù)就是為了讓單片機(jī)在那里空運(yùn)行,你現(xiàn)在只定義了一個(gè)延時(shí)函數(shù),卻沒(méi)有定義延時(shí)函數(shù)中的循環(huán)內(nèi)容,void delay (void)
{uint i;
for(i=0;i<25530;i++;);
}
ID:899081 發(fā)表于 2023-8-23 08:27
we199999 發(fā)表于 2023-8-23 00:28
還有這個(gè)麻煩您了。為啥寫的這個(gè)流水燈只有一個(gè)燈亮?就在圖片藍(lán)色行delay那里就結(jié)束了。進(jìn)行不了下一步 ...

你的delay函數(shù)里面都是空的沒(méi)內(nèi)容。
void   delay  (uint  ms)
{
unsigned char i, j,m;
   m=ms;
     while(m--)
      {
        _nop_();
        _nop_();
        _nop_();
        i = 11;
        j = 190;
        do
        {
                while (--j);
        } while (--i);
    }
}
ID:1061404 發(fā)表于 2023-8-23 08:26
猜測(cè)是delay()函數(shù)有問(wèn)題,把delay函數(shù)貼出來(lái)看看吧
ID:89515 發(fā)表于 2023-8-23 07:30
看錯(cuò)了,不好意思
ID:89515 發(fā)表于 2023-8-23 07:21
n被不斷被初始化了,你這樣也不是流水燈的效果
ID:1091757 發(fā)表于 2023-8-23 00:26
cnfloatleaf 發(fā)表于 2023-8-22 23:24
void delay (void)    //定義一個(gè)子程序, void 沒(méi)有返回值
{uint i;                  // 定義一個(gè)變量, ...

多謝大佬
ID:1085441 發(fā)表于 2023-8-22 23:24
void delay (void)    //定義一個(gè)子程序, void 沒(méi)有返回值
{uint i;                  // 定義一個(gè)變量,無(wú)符號(hào)整形數(shù)
for(i=0;i<25530;i++;);//一個(gè)循環(huán)語(yǔ)句,i從0一直加到25530,結(jié)束循環(huán)
}
ID:1091757 發(fā)表于 2023-8-22 22:34
Hephaestus 發(fā)表于 2023-8-22 21:31
這已經(jīng)是最最最基礎(chǔ)的c語(yǔ)言問(wèn)題,連這個(gè)都看不懂實(shí)在是沒(méi)有講解的必要了。

今天剛學(xué)哈哈
ID:883242 發(fā)表于 2023-8-22 21:31
這已經(jīng)是最最最基礎(chǔ)的c語(yǔ)言問(wèn)題,連這個(gè)都看不懂實(shí)在是沒(méi)有講解的必要了。
ID:276663 發(fā)表于 2023-8-22 21:26
for延時(shí)
上面的文章講的很詳細(xì)

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

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 国产在线视频一区二区董小宛性色 | 综合久久网 | 午夜av在线 | 最新免费黄色网址 | 日韩精品一区二区三区在线播放 | 欧美成人一区二区 | 美女福利视频 | 亚洲一区二区三区在线视频 | 午夜精品导航 | 欧美成人a | 久久久久久国产精品 | 91在线一区 | 精品日韩一区二区 | 国产成人av电影 | 午夜理伦三级理论三级在线观看 | 久久精品成人 | 日韩欧美在线免费观看视频 | www97影院 | 亚洲高清视频一区 | 日日日色| 青青操91 | 久久精品一区二区三区四区 | 国产精品久久久久久久久免费桃花 | 伊人久久综合 | 日本电影网站 | 国产精品久久久久久久久久 | 日韩精品专区在线影院重磅 | 午夜在线| 欧美 日韩 中文 | 最新国产精品精品视频 | 91视频官网 | 97人人澡人人爽91综合色 | 久久久久久久久一区 | 国产精品成人一区二区 | 91大神在线资源观看无广告 | 精品一区二区三区在线观看 | 久久午夜国产精品www忘忧草 | 99热激情 | 欧美男人亚洲天堂 | 国产一区二区在线播放 | 99精品久久 |