導航:首頁 > 操作系統 > 單片機簡單延時

單片機簡單延時

發布時間:2022-08-15 08:59:26

Ⅰ 51單片機中延時程序

1. sleep()是以毫秒計算的,延時5秒是sleep(5*1000);,延時5分是sleep(5*1000*60);

2.包含的頭文件看你用的什麼編輯軟體。

3.我用的VC++是用包含在#include<windows.h>頭文件中。

#include<stdio.h>#include<windows.h>//Sleep()的頭文件 main() { int i;

int n=10;for(i=1;i<=n;i++) {printf("%d",i);Sleep(5*1000*60);} //

這里修改延時時間,

有些人說是用#include<dos.h>做頭文件你自己試下吧。

還用Sleep的S是大寫的,不是小寫的。

Ⅱ 單片機延時計算方法

以C51為例,12MHZ晶振的話,1個時鍾周期為1/12微秒,1個機器周期=12個時鍾周期,定時器每個機器周期可延時12*1/12微秒=1微秒。如果晶振為8MHZ的話,定時器每個機器周期可延時12*1/8微秒=1.5微秒

Ⅲ 單片機延時程序是怎麼實現的

延時是靠CPU執行無關指令,把時間浪費掉。
具體來說,DJNZ指令需要2個周期,循環250次就是500個周期,兩層循環就是500*500個周期,你調用一次DELAY子程序,CPU就空轉250000個周期(注意這個計算不精確),如果晶振是12MHz,那就意味著時間過去了250ms,也就是延時250ms

Ⅳ 關於51單片機的簡單延時

內層循環為110,外層循環是200,但延時時間和你設定的單片機晶振頻率有關的,你可以反復進行測試得到更合適的值。

Ⅳ 單片機延時程序的延時時間怎麼算的

單片機的延時程序通過執行指令來達到延時效果,這個時間等於執行的指令需要的時間,而一個指令需要的時間叫做指令周期,這個時間等於若干個機器周期。

(5)單片機簡單延時擴展閱讀:

1丶指令周期,是每種運算需要的時間,如加法、邏輯等,是每一步進行這種指令運算需要的時間,是機器周期的整數倍,這種周期不定。

2丶51單片機12M晶振,晶振周期1/12微妙,一個機器周期包含12個晶振周期,所以12M晶振時機器周期=12x(1/12)微妙=1微妙。

3丶1個毫秒延時子程序如下:

void delay1ms(uint ms)

{

uint i,j;

for(i=0;i<ms;i++)

{

for(j=0;j<110;j++);

}

}

Ⅵ 單片機C語言編程關於延時函數

單片機的C語言關於延時函數主要有兩種
一種是用for循環,通過單片機執行空指令達到延時的目的
如:
for(i=0;i<100;i++)
{
;
}
這個簡單的語句會執行100次空指令
每一次指令的時間可以大概確定
因此這個是最簡單的延時函數
第二種是通過定時器的方式來實現
定時器是通過對單片機的晶振進行計數
然後在定時器中斷服務函數裡面實現定時時間的計算及設置
51單片機的定時器0中斷服務函數為
void
time0()
interrupt
1
{
...
}

Ⅶ 51單片機延時

#include <regx52.h>
bit t;
main()
{
TMOD=0x01;
TH0=(-50000)/256;
TL0=(-50000)%256;
EA=1;
ET0=1;
TR0=1;
while(1);
}

void time0()interrupt 1
{
static unsigned char i=0;
TH0=(-50000)/256;
TL0=(-50000)%256;
i++;
if(i==10)
{
i=0;
t=~t;
}
}

我不知道你利用定時器延時來幹嘛用,就隨便給你寫了一個,一般我們直接用軟體延時就可以了,定時延時是較為麻煩和不便的,上面的程序中,設了一個全局bit類型的變數t,每過半秒t就會取反一次,你就可以利用t的值去執行某種操作,如:if(t==1) P1_0=0;else P1_0=1; 如果P1_0是一個LED燈,並且這段程序在循環控制結構中,那燈就會循環每半秒閃爍一次。具體程序具體對待!定時器定時、中斷系統你參考上面的程序。下面是毫秒級的軟體延時,精確到小數點的第三位:

ys(unsigned int y)
{
unsigned char s;
while(y--)
for(s=122;s>0;s--);

}

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

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

Ⅸ 用c語言為單片機STC12C2052寫一段簡單的延時程序!

下面幾個是單片機的延時程序(包括asm和C程序,都是我在學單片機的過程中用到的),在單片機延時程序中應考慮所使用的晶振的頻率,在51系列的單片機中我們常用的是11.0592MHz和12.0000MHz的晶振,而在AVR單片機上常用的有8.000MHz和4.000MH的晶振所以在網上查找程序時如果涉及到精確延時則應該注意晶振的頻率是多大。
軟體延時:(asm)
晶振12MHZ,延時1秒
程序如下:
DELAY:MOV
72H,#100
LOOP3:MOV
71H,#100
LOOP1:MOV
70H,#47
LOOP0:DJNZ
70H,LOOP0
NOP
DJNZ
71H,LOOP1
MOV
70H,#46
LOOP2:DJNZ
70H,LOOP2
NOP
DJNZ
72H,LOOP3
MOV
70H,#48
LOOP4:DJNZ
70H,LOOP4
定時器延時:
晶振12MHZ,延時1s,定時器0工作方式為方式1
DELAY1:MOV
R7,#0AH
;;晶振12MHZ,延時0.5秒
AJMP
DELAY
DELAY2:MOV
R7,#14H
;;晶振12MHZ,延時1秒
DELAY:CLR
EX0
MOV
TMOD,#01H
;設置定時器的工作方式為方式1
MOV
TL0,#0B0H
;給定時器設置計數初始值
MOV
TH0,#3CH
SETB
TR0
;開啟定時器
HERE:JBC
TF0,NEXT1
SJMP
HERE
NEXT1:MOV
TL0,#0B0H
MOV
TH0,#3CH
DJNZ
R7,HERE
CLR
TR0
;定時器要軟體清零
SETB
EX0
RET
C語言延時程序:
10ms延時子程序(12MHZ)
void
delay10ms(void)
{
unsigned
char
i,j,k;
for(i=5;i>0;i--)
for(j=4;j>0;j--)
for(k=248;k>0;k--);
}
1s延時子程序(12MHZ)
void
delay1s(void)
{
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--);
}
200ms延時子程序(12MHZ)
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--);
}
500ms延時子程序程序:
(12MHZ)
void
delay500ms(void)
{
unsigned
char
i,j,k;
for(i=15;i>0;i--)
for(j=202;j>0;j--)
for(k=81;k>0;k--);
}
下面是用了8.0000MHZ的晶振的幾個延時程序(用定時0的工作模式1):
(1)延時0.9MS
void
delay_0_9ms(void)
{
TMOD=0x01;
/*定時器0工作在模式1下(16位計數器)*/
TH0=0xfd;
TL0=0xa8;
TR0=1;
/*啟動定時器*/
while(TF0==0);
TR0=0;
}
(2)延時1MS
void
delay_1ms(void)
{
TMOD=0x01;
/*定時器0工作在模式1下(16位計數器)*/
TH0=0xfd;
TL0=0x65;
TR0=1;
/*啟動定時器*/
while(TF0==0);
TR0=0;
}
(3)延時4.5ms
void
delay_4_5ms(void)
{
TMOD=0x01;
/*定時器0工作在模式1下(16位計數器)*/
TH0=0xf4;
TL0=0x48;
TR0=1;
/*啟動定時器*/
while(TF0==0);
TR0=0;
}

閱讀全文

與單片機簡單延時相關的資料

熱點內容
安卓版的蘋果手機叫什麼 瀏覽:373
手機怎麼解壓文件夾壓縮包 瀏覽:459
起源任務咋解壓 瀏覽:976
加密式的監督檢查 瀏覽:549
光遇怎麼分辨安卓國服和渠道服 瀏覽:242
ico解壓教程 瀏覽:632
程序員偏右 瀏覽:17
超算上可以進行vasp編譯嘛 瀏覽:174
北京通app怎麼注冊登錄 瀏覽:820
iphone上的數據怎麼轉移到安卓 瀏覽:743
python求每個時段平均值 瀏覽:244
安卓手機右上出現Hg什麼意思 瀏覽:69
程序員神經 瀏覽:753
dns伺服器在電腦上有什麼用 瀏覽:915
杭州大媽喜歡程序員 瀏覽:687
python評論樹講解 瀏覽:680
juniper防火牆常用命令 瀏覽:426
vapp怎麼下載地址 瀏覽:11
pdf裡面內容怎麼修改 瀏覽:808
收藏網址加密的瀏覽器 瀏覽:1002