導航:首頁 > 操作系統 > 單片機延時一秒程序

單片機延時一秒程序

發布時間:2023-05-22 09:49:15

單片機延時一秒的c程序

單片機延時一秒

程序是不固定的

要根據你的晶振 計算出一次循環執行需要的時間

然後 寫循環次數

一般是

voiddelay_one_second(void)
{
inti;
for(i=0;i<TIMES;i++);
}

這樣就可以了。 TIMES是要計算的。或者 根據示波器 自己嘗試。

⑵ 單片機延時1秒如何計算要最詳細一點的要過程用C語言

unsigned char rSecondCount; //秒計時數
unsigned char rMinuteCount; //分計時數
sbit IsOneSecondReach;
sbit Pulse_Sec=P1^0;
sbit Pulse_Min=P1^1;
main()
{
rSecondCount=0;
rMinuteCount=0;
TH1=0x3C;
TL1=0xAF; //定時器50ms產生一次中斷 (FFFF-3CAF)us
MOD = 0x10; //定時器1工作於模式1,(用工作於模式2也可以,而且更 簡便)
TR1=1; //使能定時器1
ET1=1; //開中斷
EA=1; //開全局中斷
while(1)
{
if (IsOneSecondReach)
{
IsOneSecondReach = 0;
//do something,如果一秒延時標志為1,則清除此標志,等待下次1秒,在此處
//執行需要執行的程序
}
}
}
/* 定時器50ms產生一次中斷 */
void Timer(void) interrupt 3
{
/* 重新載入T1參數 */
TH1=0x3C;
TL1=0xAF;
/* 一秒累加 */
rSecondCount++;//秒計時+1
if (rSecondCount==20) //1sec到,50ms*20
{
IsOneSecondReach = 1;
}
}
//
脈沖寬度為50ms,如果有其他要求的話,修改T1參數和「秒分」的參數湊下就行了.

⑶ 51單片機用定時器查新的方法編寫一秒的延時程序,fosc=12MHZ

一、用定時器中斷,50ms中斷的1 次,20次就是1秒
#include <REG51.H>
#define uchar unsigned char
sbit LED =P1^1; //接一LED,1 秒鍾亮或滅一次
uchar time;
void init_t0int()
{
TMOD=0x01;
TH0=(65535-50000)/256;
TL0=(65535-50000)%256;
EA=1;
ET0=1;
TR0=1;
}
void main()
{
init_t0int();
while(1);
}

void t0int() interrupt 1
{
TH0=(65535-50000)/256;
TL0=(65535-50000)%256;
time++;
if(time==20)
{
time=0;
LED=~LED;
}
}

二、用循環延時可能程序更簡單一點,但沒實際意義 。單片機在這1 秒內只能循環而不能做其它事。
#include<reg51.h>
sbit LED=P1^0;
void delay_ms(unsigned char ms)
{
unsigned char i;
while(ms--)
for(i=0;i<123;i++);
}
void main()
{
while(1)
{
delay_ms(1000);
LED=~P1^0; //P1.0接一LED,可看到LED每1S亮或滅一次
}
}
參考資料: LED

⑷ 請問在單片機C語言編程中,用delay延遲的話,1秒程序是什麼單片機晶振為12MHZ

在Keil里模擬的話,在配置里把晶振調成12MHz,然後在調用delay函數的地方設置一個斷點,開始調試程序,運行到斷點處,注意程序左邊有一個記錄當前寄存器和一些狀態的窗口,其中,裡面有一個是專門記錄當前運行了多少時間的變數,記下當前時間T1,然後按F10(不進入子函數)調試,再記錄當前時間T2,則延時=T2-T1。多試幾個A,差不多調到1s就夠了。我一般都這么調。
你要想明白其中原理,想自己算的話,你就看看delay的匯編代碼段自己算吧。

⑸ 單片機 延遲一秒程序怎麼寫延遲2秒我是初學者,想請教一下。

你好!
你要先寫一個延時基準(50毫秒),在延時1秒就是做20次基準,2秒就是40個基準!
也可以用定時器,定時50毫秒,定時器中斷計數,計數20就是1秒,計數40次就是2秒(推薦用定時器!)
僅代表個人觀點,不喜勿噴,謝謝。

閱讀全文

與單片機延時一秒程序相關的資料

熱點內容
噴油螺桿製冷壓縮機 瀏覽:578
python員工信息登記表 瀏覽:376
高中美術pdf 瀏覽:160
java實現排列 瀏覽:512
javavector的用法 瀏覽:981
osi實現加密的三層 瀏覽:231
大眾寶來原廠中控如何安裝app 瀏覽:913
linux內核根文件系統 瀏覽:242
3d的命令面板不見了 瀏覽:525
武漢理工大學伺服器ip地址 瀏覽:148
亞馬遜雲伺服器登錄 瀏覽:524
安卓手機如何進行文件處理 瀏覽:70
mysql執行系統命令 瀏覽:929
php支持curlhttps 瀏覽:142
新預演算法責任 瀏覽:443
伺服器如何處理5萬人同時在線 瀏覽:250
哈夫曼編碼數據壓縮 瀏覽:424
鎖定伺服器是什麼意思 瀏覽:383
場景檢測演算法 瀏覽:616
解壓手機軟體觸屏 瀏覽:348