延時1毫秒的循環(huán)次數(shù)也不一樣,一般12M晶振的話用 for(j=time;j0;j--);延時時,1毫秒time大概為125左右,這里用110,大概晶振為10592M,所以這段程序,內(nèi)部循環(huán)完成1毫秒延時,外部循環(huán)完成500毫秒延時。
創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供巴中網(wǎng)站建設(shè)、巴中做網(wǎng)站、巴中網(wǎng)站設(shè)計、巴中網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計與制作、巴中企業(yè)網(wǎng)站模板建站服務(wù),十年巴中做網(wǎng)站經(jīng)驗,不只是建網(wǎng)站,更提供有價值的思路和整體網(wǎng)絡(luò)服務(wù)。
一般單片機在c語言中很難得到精確的延時,所以一般對時間要求高的都用計時器中斷來做了。
在單片機的C語言編程中,可以使用循環(huán)結(jié)構(gòu)來實現(xiàn)延時操作。具體而言,可以使用一個for循環(huán)來實現(xiàn)一段時間的延時。
delay函數(shù)是一般自己定義的一個延時函數(shù)。C語言定義延時函數(shù)主要通過無意義指令的執(zhí)行來達到延時的目的。
十秒對于單片機來說是很長很長的時間了,單片機十秒的時間什么事都不能做,只在跑這延時程序,那是什么概念,用中斷的話,單片機正常運行其他程序,只是時間到了才過來處理延時以后的程序,效率不知道高了多少 。
.比如前面那個箭頭指到你的調(diào)用函數(shù)delay(200);假設(shè)執(zhí)行到此部用時1110。
可以有很多辦法,一是調(diào)整參數(shù),使其延時5分鐘或6分鐘,循環(huán)24次或20次。二是將延時函數(shù)的形參改為長整型(32位)延時時間擴大65536倍。
C程序中可使用不同類型的變量來進行延時設(shè)計。經(jīng)實驗測試,使用unsigned char類型具有比unsigned int更優(yōu)化的代碼,在使用時應(yīng)該使用unsigned char作為延時變量。
delay函數(shù)是一般自己定義的一個延時函數(shù)。c語言定義延時函數(shù)主要通過無意義指令的執(zhí)行來達到延時的目的。下面給出一個經(jīng)典的延時函數(shù)。
delay函數(shù)是一般自己定義的一個延時函數(shù)。C語言定義延時函數(shù)主要通過無意義指令的執(zhí)行來達到延時的目的。
一般單片機在c語言中很難得到精確的延時,所以一般對時間要求高的都用計時器中斷來做了。
1 C語言程序延時 Keil C51的編程語言常用的有2種: 一種是匯編語言;另一種是C 語言。用匯編語言寫單片機程序時,精確時間延時是相對容易解決的。
.比如前面那個箭頭指到你的調(diào)用函數(shù)delay(200);假設(shè)執(zhí)行到此部用時1110。
分享文章:單片機C語言編寫延時函數(shù) 單片機延時函數(shù)詳解
網(wǎng)頁鏈接:http://chinadenli.net/article46/depogeg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供企業(yè)網(wǎng)站制作、網(wǎng)站設(shè)計、網(wǎng)站維護、電子商務(wù)、品牌網(wǎng)站制作、外貿(mào)建站
聲明:本網(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)