找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 6693|回復(fù): 10
收起左側(cè)

單片機LED定時閃程序if (TF0 == 1)問題

  [復(fù)制鏈接]
ID:616666 發(fā)表于 2019-10-18 16:16 | 顯示全部樓層 |閱讀模式
30黑幣
請教論壇的大師
當(dāng)程 序第一次跑到這里的時候,TF0是0,不執(zhí)行下面大括號的語句,當(dāng)TF0是1的時候,是哪條語句執(zhí)行后,讓TF0變成1。

捕獲11.PNG
回復(fù)

使用道具 舉報

ID:353097 發(fā)表于 2019-10-18 16:31 | 顯示全部樓層
TF0是中斷標(biāo)志 。。。中斷一次自動加一、、、、反正就是計數(shù)器叢0 到255 就會 讓這個TF0加一
回復(fù)

使用道具 舉報

ID:606986 發(fā)表于 2019-10-18 16:39 | 顯示全部樓層
TF0是溢出中斷標(biāo)志吧?這個應(yīng)該是硬件自動清零的吧!
回復(fù)

使用道具 舉報

ID:606986 發(fā)表于 2019-10-18 16:40 | 顯示全部樓層
硬件自動清零的
回復(fù)

使用道具 舉報

ID:332444 發(fā)表于 2019-10-18 17:11 | 顯示全部樓層
TF0=1是計數(shù)器干的活,計數(shù)滿是設(shè)置標(biāo)志位值。
回復(fù)

使用道具 舉報

ID:235200 發(fā)表于 2019-10-18 18:43 | 顯示全部樓層
是單片機內(nèi)部的電路使TF0為1,稱之為硬件置位,并規(guī)定這種查詢方式必須軟件清除TF0,如果采取中斷方式也是硬件清除
回復(fù)

使用道具 舉報

ID:220005 發(fā)表于 2019-10-18 19:54 | 顯示全部樓層
定時器T0溢出(計時結(jié)束)時,TF0由硬件自動置1。
而并不是哪條語句把他置1的。
回復(fù)

使用道具 舉報

ID:213173 發(fā)表于 2019-10-18 20:46 | 顯示全部樓層
TF0是定時器0的溢出中斷請求標(biāo)志位,查詢方式TF0需要軟件清0,中斷方式TF0由硬件自動清0。
無標(biāo)題.jpg

評分

參與人數(shù) 1黑幣 +10 收起 理由
機子單 + 10

查看全部評分

回復(fù)

使用道具 舉報

ID:524818 發(fā)表于 2019-10-19 08:44 | 顯示全部樓層
當(dāng)你設(shè)置好定時器的模式及初值且打開定時器:TMOD=0x01;(模式)TH0=0xb8;TL0=0x00(初值)TR0=1;(打開定時器);這時候定時器開始工作,當(dāng)TH0計數(shù)到66536時,溢出標(biāo)志TF0就會自動變成1。
這時候需要軟件清零,就是if(TF0==1){TF0=0;}然后執(zhí)行下一步程序

評分

參與人數(shù) 1黑幣 +30 收起 理由
機子單 + 30

查看全部評分

回復(fù)

使用道具 舉報

ID:280858 發(fā)表于 2020-1-16 15:23 來自觸屏版 | 顯示全部樓層
cphnkj188 發(fā)表于 2019-10-19 08:44
當(dāng)你設(shè)置好定時器的模式及初值且打開定時器:TMOD=0x01;(模式)TH0=0xb8;TL0=0x00(初值)TR0=1;(打開定 ...

我也剛學(xué)到這里,和樓主的問題一樣,TH0和TL0賦值后要經(jīng)過18432和機器周期才能到65536溢出,但是程序執(zhí)行到if語句只需要幾個機器周期就完成了,程序是反復(fù)判斷if語句直到溢出?還是程序等在if語句前,直到經(jīng)過18432個機器周期的時間后溢出?
回復(fù)

使用道具 舉報

ID:1036985 發(fā)表于 2022-6-25 22:15 | 顯示全部樓層
判斷語句里的TL0,重新賦值是必要的嗎?
回復(fù)

使用道具 舉報

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

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表