成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

c語言按鍵延時函數(shù),c語言延時函數(shù)怎么寫

怎么用C語言寫可以調(diào)節(jié)的延時程序,請大俠幫忙

延時程序(包括asm和C程序,都是我在學單片機的過程中用到的),在單片機延時程序中應(yīng)考慮所使用的晶振的頻率,在51系列的單片機中我們常用的是11.0592MHz和12.0000MHz的晶振,而在AVR單片機上常用的有8.000MHz和4.000MH的晶振所以在網(wǎng)上查找程序時如果涉及到精確延時則應(yīng)該注意晶振的頻率是多大。

海州網(wǎng)站建設(shè)公司創(chuàng)新互聯(lián),海州網(wǎng)站設(shè)計制作,有大型網(wǎng)站制作公司豐富經(jīng)驗。已為海州數(shù)千家提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\外貿(mào)網(wǎng)站建設(shè)要多少錢,請找那個售后服務(wù)好的海州做網(wǎng)站的公司定做!

軟件延時:(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 ;設(shè)置定時器的工作方式為方式1

MOV TL0,#0B0H ;給定時器設(shè)置計數(shù)初始值

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;i0;i--)

for(j=4;j0;j--)

for(k=248;k0;k--);

}

1s延時子程序(12MHZ)

void delay1s(void)

{

unsigned char h,i,j,k;

for(h=5;h0;h--)

for(i=4;i0;i--)

for(j=116;j0;j--)

for(k=214;k0;k--);

}

200ms延時子程序(12MHZ)

void delay200ms(void)

{

unsigned char i,j,k;

for(i=5;i0;i--)

for(j=132;j0;j--)

for(k=150;k0;k--);

}

500ms延時子程序程序: (12MHZ)

void delay500ms(void)

{

unsigned char i,j,k;

for(i=15;i0;i--)

for(j=202;j0;j--)

for(k=81;k0;k--);

}

下面是用了8.0000MHZ的晶振的幾個延時程序(用定時0的工作模式1):

(1)延時0.9MS

void delay_0_9ms(void)

{

TMOD=0x01; /*定時器0工作在模式1下(16位計數(shù)器)*/

TH0=0xfd;

TL0=0xa8;

TR0=1; /*啟動定時器*/

while(TF0==0);

TR0=0;

}

(2)延時1MS

void delay_1ms(void)

{

TMOD=0x01; /*定時器0工作在模式1下(16位計數(shù)器)*/

TH0=0xfd;

TL0=0x65;

TR0=1; /*啟動定時器*/

while(TF0==0);

TR0=0;

}

(3)延時4.5ms

void delay_4_5ms(void)

{

TMOD=0x01; /*定時器0工作在模式1下(16位計數(shù)器)*/

TH0=0xf4;

TL0=0x48;

TR0=1; /*啟動定時器*/

while(TF0==0);

TR0=0;

}

C語言編程,怎么用按鍵來改變延時的長短?

額?延時指的是什么?你可以調(diào)用時間的函數(shù),通過輸入值來減少或者增加時間。但是增加或者減少時間的按鍵必須是同樣的

C語言延時的子程序怎么寫

其實這是不太精準的延時程序,其實質(zhì)就是for循環(huán),就是讓處理器不停地做遞減或遞加運算,從而達到延時的目的。至于延時時間,完全是更具經(jīng)驗的得到的。

需要一個C語言程序。51單片機控制:按鍵按一下,延遲1分鐘后開燈,燈亮半個小時就熄滅的程序?急需!

如果對時間要求不精確,用軟延時即可。

#includereg52.h

#define uchar unsigned char

#define uint unsigned int

sbit s=P1^0;

sbit led=P1^1;

void delayms(uint i) //1ms延時程序

{

uchar j;

for(;i0;i--)

{

for(j=0;j125;j++)//如果延時時間誤差較大,可按比例改變125這個數(shù)

//取值范圍0-255,數(shù)值越大,延時越長

{;}

}

}

void delay1s(uint i) //1s延時程序

{

for(;i0;i--){delay1ms(1000);}

}

void main()

{

led=0;

while(1)

{

if (s==0)

{

delayms(20);

if (s==0);{delay1s(60);led=1; }

}

if(led==1){delay1s(1800);led=0; }

}

}

如果對時間要求精確,則要用到定時器,還要確保電路外接有晶振,并已知晶振頻率

c語言 用邊沿觸發(fā)使流水燈暫停,按鈕控制,按一下暫停,按一下繼續(xù)

#includereg52.h ?//引用庫文件

void delay() //延時函數(shù)

{

unsigned char i,j; ?//定義兩個變量,用于空循環(huán)

for(i=0;i200;i++)

for(j=0;j200;j++)

?;

}

unsigned char flag;

void main()

{

unsigned char i;

flag=1;

EA=1; ? //開放總中斷

EX0=1; ?//允許使用外中斷

IT0=1; ?//選擇負跳變來觸發(fā)外中斷

while(1) ? //用于反復(fù)循環(huán)

{

for(i=0;i8;i++) ?

{

?P1=~(1i); ? ?

delay(); ?//調(diào)用延時函數(shù)

?while(flag!=1);

}

i=0;

? //

}

}

/**************************************************************

函數(shù)功能:外中斷T0的中斷服務(wù)程序

**************************************************************/

void int0(void) interrupt 0 using 0 //外中斷0的中斷編號為0

{

flag=~flag;

}

仿真圖:

樓主的采納率好低?。〞r間久了,估計給你回答的人會變少),不過我還是希望樓主能采納

求助C語言按鍵重復(fù)輸入延遲的問題

不要用系統(tǒng)提供的getchar或者scanf這類輸入函數(shù)

而是去調(diào)用系統(tǒng)api,來獲取按鍵的按下抬起狀態(tài)

這樣在識別到按下時,就可以自行控制執(zhí)行動作的周期,不會出現(xiàn)第一次的停滯

網(wǎng)站標題:c語言按鍵延時函數(shù),c語言延時函數(shù)怎么寫
瀏覽地址:http://jinyejixie.com/article2/hsidic.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供營銷型網(wǎng)站建設(shè)、定制網(wǎng)站、電子商務(wù)網(wǎng)站導(dǎo)航、標簽優(yōu)化、ChatGPT

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

商城網(wǎng)站建設(shè)
兴宁市| 遵义县| 揭西县| 辽阳市| 错那县| 延庆县| 溧水县| 休宁县| 锡林浩特市| 调兵山市| 衡水市| 仁怀市| 如皋市| 奇台县| 壤塘县| 嘉善县| 达孜县| 东光县| 青岛市| 南江县| 泽州县| 静安区| 铅山县| 兴业县| 威远县| 大城县| 莫力| 淮北市| 新乡县| 长寿区| 贺州市| 云安县| 台前县| 东港市| 康平县| 乳源| 四子王旗| 太湖县| 新竹县| 盐源县| 安阳县|