資料介紹
在嵌入式系統(tǒng)中,延時(shí)是經(jīng)常需要使用的一種手段,延時(shí)的方法可以通過(guò)使用類似于“NOP”的指令來(lái)實(shí)現(xiàn),但是如果延時(shí)的時(shí)間比較 長(zhǎng),如果使用太多的“NOP”指令則會(huì)消耗過(guò)多的儲(chǔ)存空間,最好的方法是使用子程序(匯編語(yǔ)言中)或子函數(shù)(高級(jí)語(yǔ)言中)。當(dāng)然這里并不打算討論如果使用 定時(shí)器中斷來(lái)實(shí)現(xiàn)延時(shí)。下面就在C語(yǔ)言中使用子函數(shù)實(shí)現(xiàn)延時(shí)的幾個(gè)問(wèn)題做些討論,當(dāng)然討論高級(jí)語(yǔ)言的延時(shí)就需要考慮編譯器和處理器,這里為了討論的方便, 而且不失一般性,可以用標(biāo)準(zhǔn)51單片機(jī)作處理器和uVision2作為編譯環(huán)境,晶振為12MHz,這樣一個(gè)標(biāo)準(zhǔn)的機(jī)器周期即為1uS。其他的情況則可以據(jù)此類推。
先看一段延時(shí)程序:其中Delay1()與Delay2()兩者的型參類型不同。
將上述的Delay1(100)(變量為unsignedint類型)或Delay2(100)(變量為unsignedchar類型)分別在兩次過(guò)程中執(zhí)行,便會(huì)得到了下述的執(zhí)行結(jié)果:
斷點(diǎn)B減去斷點(diǎn)A的時(shí)間為810uS,這個(gè)時(shí)間即為執(zhí)行Delay1(100)所花費(fèi)的時(shí)間;
斷點(diǎn)B減去斷點(diǎn)A的時(shí)間為608uS,這個(gè)時(shí)間即為執(zhí)行Delay2(100)所花費(fèi)的時(shí)間;
由此可見(jiàn),作為unsignedint變量類型來(lái)傳遞延時(shí)函數(shù)的參數(shù),會(huì)增長(zhǎng)延時(shí)的時(shí)間,而使用unsignedchar變量類型則會(huì)得到短的延時(shí)時(shí) 間。我們都知道C語(yǔ)言經(jīng)過(guò)編譯后是要轉(zhuǎn)化成匯編語(yǔ)言的,只有匯編語(yǔ)句才有精確的執(zhí)行時(shí)間,所以要知道這兩者結(jié)果的不同,原因就在于他們經(jīng)過(guò)編譯之后匯編語(yǔ) 句的不同的地方。
?
先看一段延時(shí)程序:其中Delay1()與Delay2()兩者的型參類型不同。
將上述的Delay1(100)(變量為unsignedint類型)或Delay2(100)(變量為unsignedchar類型)分別在兩次過(guò)程中執(zhí)行,便會(huì)得到了下述的執(zhí)行結(jié)果:
斷點(diǎn)B減去斷點(diǎn)A的時(shí)間為810uS,這個(gè)時(shí)間即為執(zhí)行Delay1(100)所花費(fèi)的時(shí)間;
斷點(diǎn)B減去斷點(diǎn)A的時(shí)間為608uS,這個(gè)時(shí)間即為執(zhí)行Delay2(100)所花費(fèi)的時(shí)間;
由此可見(jiàn),作為unsignedint變量類型來(lái)傳遞延時(shí)函數(shù)的參數(shù),會(huì)增長(zhǎng)延時(shí)的時(shí)間,而使用unsignedchar變量類型則會(huì)得到短的延時(shí)時(shí) 間。我們都知道C語(yǔ)言經(jīng)過(guò)編譯后是要轉(zhuǎn)化成匯編語(yǔ)言的,只有匯編語(yǔ)句才有精確的執(zhí)行時(shí)間,所以要知道這兩者結(jié)果的不同,原因就在于他們經(jīng)過(guò)編譯之后匯編語(yǔ) 句的不同的地方。
?
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- 嵌入式C++編程
- C語(yǔ)言嵌入式培訓(xùn) 嵌入式C語(yǔ)言程序設(shè)計(jì)基礎(chǔ)
- 嵌入式軟件之c語(yǔ)言編碼規(guī)范 28次下載
- 嵌入式Linux應(yīng)用程序例程
- 嵌入式程序開(kāi)發(fā) 8次下載
- 嵌入式系統(tǒng)與C程序設(shè)計(jì) 13次下載
- 嵌入式系統(tǒng)的C程序設(shè)計(jì) 42次下載
- 嵌入式系統(tǒng)的C程序設(shè)計(jì) 1次下載
- 嵌入式系統(tǒng)的C程序設(shè)計(jì)電子書(shū) 0次下載
- 嵌入式系統(tǒng)的c程序設(shè)計(jì)
- 嵌入式USB從設(shè)備驅(qū)動(dòng)程序設(shè)計(jì)
- 嵌入式實(shí)時(shí)程序設(shè)計(jì)中C/C++代碼的優(yōu)化
- 嵌入式實(shí)時(shí)操作系統(tǒng)μC OS-II與eCos的比較
- 嵌入式實(shí)時(shí)操作系統(tǒng)μC/OS-II與eCos的比較
- 嵌入式系統(tǒng)的C程序設(shè)計(jì)
- 聊一聊嵌入式C語(yǔ)言 433次閱讀
- 用C語(yǔ)言構(gòu)建高效的嵌入式程序 498次閱讀
- 嵌入式程序基于源代碼仿真調(diào)試 904次閱讀
- 嵌入式C語(yǔ)言知識(shí)點(diǎn)總結(jié) 2575次閱讀
- 基于S3C2410微處理器和Linux實(shí)現(xiàn)嵌入式網(wǎng)關(guān)的設(shè)計(jì) 2490次閱讀
- 如何實(shí)現(xiàn)嵌入式系統(tǒng)遠(yuǎn)程調(diào)試 5077次閱讀
- 基于嵌入式軟件的JNI技術(shù)應(yīng)用解析 1020次閱讀
- 嵌入式FIFO數(shù)據(jù)傳輸系統(tǒng)詳解 4141次閱讀
- 基于μC/OS嵌入式操作系統(tǒng)的嵌入式數(shù)據(jù)管理設(shè)計(jì) 1178次閱讀
- 教你如何編寫優(yōu)質(zhì)的嵌入式C程序? 8100次閱讀
- C語(yǔ)言里如何編寫精確的微量延時(shí) 1614次閱讀
- 嵌入式C通用延時(shí)驅(qū)動(dòng)的編寫方法 2188次閱讀
- 嵌入式C實(shí)現(xiàn)延時(shí)程序的不同變量的區(qū)別 幾種Linux嵌入式開(kāi)發(fā)環(huán)境的簡(jiǎn)單介紹 1566次閱讀
- 嵌入式常用的c標(biāo)準(zhǔn)庫(kù) 5207次閱讀
- 嵌入式開(kāi)發(fā)就業(yè)前景分析_嵌入式領(lǐng)域的職業(yè)發(fā)展方向 1.8w次閱讀
下載排行
本周
- 1TC358743XBG評(píng)估板參考手冊(cè)
- 1.36 MB | 330次下載 | 免費(fèi)
- 2開(kāi)關(guān)電源基礎(chǔ)知識(shí)
- 5.73 MB | 6次下載 | 免費(fèi)
- 3100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
- 4嵌入式linux-聊天程序設(shè)計(jì)
- 0.60 MB | 3次下載 | 免費(fèi)
- 5基于FPGA的光纖通信系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 0.61 MB | 2次下載 | 免費(fèi)
- 6基于FPGA的C8051F單片機(jī)開(kāi)發(fā)板設(shè)計(jì)
- 0.70 MB | 2次下載 | 免費(fèi)
- 751單片機(jī)窗簾控制器仿真程序
- 1.93 MB | 2次下載 | 免費(fèi)
- 8基于51單片機(jī)的RGB調(diào)色燈程序仿真
- 0.86 MB | 2次下載 | 免費(fèi)
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33564次下載 | 免費(fèi)
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費(fèi)
- 4開(kāi)關(guān)電源設(shè)計(jì)實(shí)例指南
- 未知 | 21548次下載 | 免費(fèi)
- 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書(shū))
- 0.00 MB | 15349次下載 | 免費(fèi)
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費(fèi)
- 7電子制作實(shí)例集錦 下載
- 未知 | 8113次下載 | 免費(fèi)
- 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德?tīng)栔?/a>
- 0.00 MB | 6653次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費(fèi)
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537796次下載 | 免費(fèi)
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費(fèi)
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費(fèi)
- 6電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191185次下載 | 免費(fèi)
- 7十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
- 158M | 183278次下載 | 免費(fèi)
- 8proe5.0野火版下載(中文版免費(fèi)下載)
- 未知 | 138040次下載 | 免費(fèi)
評(píng)論
查看更多