在STM32中處處會(huì)用到延時(shí)函數(shù),一般而言,對(duì)于普通的控制延時(shí),并不會(huì)要求特別精確,所以可以使用普通的延時(shí)函數(shù),例如
void delay(u32 time)
{
while(time--);
}
但是在某些情況下,例如讀取傳感器數(shù)據(jù),就需要精確的延時(shí),對(duì)于這種,這時(shí)候可以考慮使用軟件定時(shí)器或者系統(tǒng)定時(shí)器進(jìn)行精確定時(shí)延時(shí)。在這篇博文中不在詳細(xì)對(duì)這兩種進(jìn)行描述。
本文主要是針對(duì)某些情況下,使用系統(tǒng)滴答定時(shí)器或者軟件定時(shí)器對(duì)工程造成阻塞影響或者定時(shí)器用作其他用途,不夠使用的情況下的另一種解決方法。
因此本文主要是解決通過普通延時(shí)函數(shù)實(shí)現(xiàn)精確的定時(shí)。
博主測(cè)試的開發(fā)板芯片是STM32f103c8t6,外部晶振是8M,系統(tǒng)使用經(jīng)過倍頻至72M,編譯器選擇的Keil5,使用的是庫(kù)函數(shù)開發(fā)。通過普通延時(shí)函數(shù)來實(shí)現(xiàn)讀取溫濕度傳感器DHT11的數(shù)據(jù),由于使用的freeRTOS操作系統(tǒng),同時(shí)各個(gè)軟件定時(shí)器用作其他用途。。。理由不再贅述。
剛開始,通過使用__NOP()函數(shù),因?yàn)槭褂昧?M晶振9倍頻,72MHz,所以一個(gè)nop約等于1/72us,所以使用72個(gè)nop函數(shù)為一個(gè)us,然后根據(jù)需要的定時(shí)時(shí)間進(jìn)行計(jì)算。
void delay_us(u32 nTimer)
{
u32 i=0;
for(i=0;i __NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP(); __NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP(); __NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP(); __NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP(); __NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP(); } } void delay_ms(u32 nTimer) { u32 i=1000*nTimer; delay_us(i); } 之后通過測(cè)試讀取傳感器數(shù)據(jù),得到了數(shù)據(jù),證明該延時(shí)函數(shù)相對(duì)比較準(zhǔn)確,但是由于博主身邊并沒有邏輯分析儀或示波器,所以不能對(duì)其延時(shí)時(shí)間進(jìn)行精確測(cè)試。 第二種延時(shí)方法是在電子發(fā)燒友論壇看到版主通過邏輯分析儀對(duì)另一種普通延時(shí)進(jìn)行的精確測(cè)試。同樣可以實(shí)現(xiàn)讀取數(shù)據(jù)。具體延時(shí)函數(shù)如下所示: void delay_us(u32 time) { u32 i=8*time; while(i--); } void delay_ms(u32 time) { u32 i=8000*time; while(i--); }
上一篇:STM32 SysTick 精確延時(shí)(非中斷方式)
下一篇:s3c2440_LCD控制器設(shè)置及代碼詳解
推薦閱讀
史海拾趣
Harbour Industries始終將產(chǎn)品質(zhì)量視為企業(yè)的生命線。為了確保產(chǎn)品質(zhì)量達(dá)到國(guó)際一流水平,公司不斷引入先進(jìn)的質(zhì)量管理體系。1990年代末期,Harbour成功通過了ISO9001產(chǎn)品質(zhì)量認(rèn)證。這一認(rèn)證不僅標(biāo)志著公司的質(zhì)量管理體系已經(jīng)達(dá)到了國(guó)際標(biāo)準(zhǔn),也為其在全球市場(chǎng)中的競(jìng)爭(zhēng)提供了有力保障。此外,Harbour還實(shí)行了“過程管理”來確定和控制產(chǎn)品成本,進(jìn)一步提升了其市場(chǎng)競(jìng)爭(zhēng)力和盈利能力。
可穿戴設(shè)備市場(chǎng)近年來持續(xù)增長(zhǎng),Devar Inc公司也積極布局這一領(lǐng)域。公司研發(fā)了一系列具有創(chuàng)新性的可穿戴設(shè)備,如智能手環(huán)、智能眼鏡等。這些設(shè)備不僅具備健康監(jiān)測(cè)、運(yùn)動(dòng)記錄等基本功能,還集成了Devar的AI技術(shù),能夠?yàn)橛脩籼峁└觽€(gè)性化的服務(wù)。例如,智能手環(huán)可以根據(jù)用戶的運(yùn)動(dòng)習(xí)慣和健康數(shù)據(jù),為用戶提供定制化的運(yùn)動(dòng)計(jì)劃和健康建議。
在國(guó)內(nèi)市場(chǎng)取得成功后,F(xiàn)CT Electronics開始將目光投向國(guó)際市場(chǎng)。公司積極參加國(guó)際電子展會(huì),與多家國(guó)際知名企業(yè)建立了合作關(guān)系。憑借出色的產(chǎn)品性能和專業(yè)的客戶服務(wù),F(xiàn)CT Electronics的測(cè)試設(shè)備逐漸在海外市場(chǎng)上占據(jù)了一席之地,為公司的國(guó)際化發(fā)展奠定了堅(jiān)實(shí)基礎(chǔ)。
隨著技術(shù)的不斷成熟,Diode Laser Concepts公司開始將產(chǎn)品推向市場(chǎng)。公司憑借其卓越的性能和穩(wěn)定性,在電子制造、半導(dǎo)體加工等領(lǐng)域迅速獲得了客戶的認(rèn)可。同時(shí),公司不斷投入研發(fā),推出了一系列創(chuàng)新的二極管激光產(chǎn)品,如超短脈沖激光器和高精度定位系統(tǒng)等,進(jìn)一步鞏固了市場(chǎng)地位。
Easy Magnet Corp公司最初由幾位熱衷于磁性材料研究的科學(xué)家和工程師創(chuàng)立。他們發(fā)現(xiàn)了一種新型磁性材料,具有極高的磁導(dǎo)率和穩(wěn)定性。基于這一發(fā)現(xiàn),他們開始研發(fā)適用于電子產(chǎn)品的磁性元件。最初的產(chǎn)品雖然簡(jiǎn)單,但因其高性能和可靠性,很快在市場(chǎng)中獲得了認(rèn)可。隨著訂單的增加,公司逐漸擴(kuò)大了生產(chǎn)規(guī)模,并開始了技術(shù)研發(fā)的深入探索。
我這幾天就要做畢業(yè)設(shè)計(jì)了,但以前沒怎么做過,現(xiàn)在基本上沒有頭緒,請(qǐng)大家?guī)蛶兔Π? 課題:基于硅光電池的無線接收器實(shí)驗(yàn)研究設(shè)計(jì) 內(nèi)容提要:在分析研究現(xiàn)有的紅外無線接收器技術(shù)的基礎(chǔ)上, 以硅光電池為無線接收器進(jìn)行試驗(yàn)研究,探 ...… 查看全部問答∨ |
|
關(guān)于vxworks5.5下的82541網(wǎng)卡使用求教 找了好長(zhǎng)時(shí)間,還是修改已有驅(qū)動(dòng)沒成功,deviceid等到底是改什么,查了芯片手冊(cè)沒發(fā)現(xiàn)差別啊,求教已經(jīng)修改成功的同學(xué),折騰的頭大,現(xiàn)在被卡住在網(wǎng)卡這個(gè)地方了,有誰幫一把,謝謝各位!… 查看全部問答∨ |
|
小弟最近正在移植UIP,在ADS1.2中編譯,編譯時(shí)出現(xiàn)一個(gè)錯(cuò)誤,描述為 Error : (serious) ...... : size of \'struct uip_eth_addr\' needed but not yet defined 出錯(cuò)地方代碼為: struct uip_eth_hdr { struct uip_eth_addr dest; & ...… 查看全部問答∨ |
cc2430芯片中的中斷輸出問題,下面是程序大概的結(jié)構(gòu) for(i=0;i<9;i++) { for(j=0;j<16;j++); ENCDI=INDATA[i*16+j]; //把需要處理的數(shù)據(jù)放在ENCDI 單片機(jī)處理ENCDI內(nèi)的 ...… 查看全部問答∨ |
更改形狀按以下步驟:“設(shè)計(jì)”--->"板子形狀"--->"重新定義PCB外形" ,然后就可以重新定義外形了。 建議在重定義PCB外形前,先在"KEEPOUT層"(禁止布線層)上先用直線把大概輪廓畫出來,也包括固定孔。如果想精確定位pcb的外形(即K ...… 查看全部問答∨ |
|
本帖最后由 dontium 于 2015-1-23 11:47 編輯 本通用質(zhì)量指南適用于 TI 提供的有關(guān)材料、產(chǎn)品、服務(wù)、制造工藝、測(cè)試、控制、處置、貯存和運(yùn)輸措施的質(zhì)量保證,以及TI所采用和/或應(yīng)用的旨在確保TI部件與已公布和/或特別指明的規(guī)格相符合的管理流程 ...… 查看全部問答∨ |
設(shè)計(jì)資源 培訓(xùn) 開發(fā)板 精華推薦
- 基于GPS自動(dòng)授時(shí)的無線智能控制器的設(shè)計(jì)
- 基于PTR2000的無線氣象信息采集系統(tǒng)設(shè)計(jì)
- Microchip推出MEC175xB系列器件,為嵌入式控制器引入硬件 抗量子攻擊能力
- 無人飛行器機(jī)載穩(wěn)定云臺(tái)控制系統(tǒng)的設(shè)計(jì)
- 匠芯創(chuàng)推出面向具身智能高性能實(shí)時(shí)處理器M7000
- 基于HW2181B的航模無線遙控通信系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
- 應(yīng)對(duì)機(jī)器人“四高”,極海推出全球首款雙核Cortex-M52 MCU G32R501
- 非道路移動(dòng)機(jī)械透射式煙度計(jì)研究與實(shí)現(xiàn)
- 基于STM32F103的角磨機(jī)開關(guān)磁阻電機(jī)控制器的設(shè)計(jì)
- 大眾汽車宣布明年起其所有電動(dòng)車型全面轉(zhuǎn)向磷酸鐵鋰電池,升級(jí)至MEB Plus平臺(tái)
- 總產(chǎn)值破2000億,深圳要做“機(jī)器人第一城”?
- 鴻道Intewell操作系統(tǒng) 人形機(jī)器人底層操作系統(tǒng)
- 如何定位國(guó)產(chǎn)智駕芯片的終局價(jià)值?
- 新一代車規(guī)級(jí)數(shù)字功放電感VSAD-T系列 為汽車音響注入高保真基因
- 蜂巢能源快充電池突破:15分鐘充至滿電,提升30%效率
- 整車操作系統(tǒng)何以躋身智能汽車三大件?
- 人形機(jī)器人如何做到“手眼”協(xié)同+“大小腦”協(xié)同?
- 中國(guó)電池公司獲英國(guó)政府10億英鎊支持!
- 從游戲到智能駕駛,英偉達(dá)有哪些技術(shù)升級(jí)?
- 最后一周:免費(fèi)獲取Pasternack《RF產(chǎn)品選型指南》2018 印刷版!
- 最熱8月,帶著你的原創(chuàng)一起High!
- 3月26日上午10:00直播:開拓IoT社會(huì) 尼吉康的新蓄電裝置
- 下載有禮:2017年泰克亞太專家大講堂第二期: 100G/200G/400G通訊標(biāo)準(zhǔn)發(fā)展趨勢(shì)及解決方案
- 【樓層接力】電阻你問我答!
- 有獎(jiǎng)直播|安森美全新 ADAS 電源 IC 提升 ADAS 系統(tǒng)的清晰度及安全性
- 有獎(jiǎng)直播:現(xiàn)代電動(dòng)工具的設(shè)計(jì)挑戰(zhàn)與英飛凌解決之道
- 共抗疫情,少出門多學(xué)習(xí)。領(lǐng)取下載積分,讓學(xué)習(xí)資料到你碗里!
- 有獎(jiǎng)直播:如何利用瑞薩電子的GreenPAK™平臺(tái)優(yōu)化混合信號(hào)電路設(shè)計(jì)
- 騰訊加持, 普渡科技完成5億元C輪融資
- 簡(jiǎn)析水下機(jī)器人的應(yīng)用場(chǎng)景
- 企業(yè)如何防范勒索軟件攻擊?
- 240v高壓直流電源相對(duì)于傳統(tǒng)電源有哪些優(yōu)勢(shì)?
- 音響中分頻器和功放的連接方式
- 基于MSP430和Cyclone II 的網(wǎng)絡(luò)數(shù)據(jù)加密實(shí)現(xiàn)
- 制作一個(gè)基于MSP430的無線充電器
- 基于MSP430單片機(jī)的無線信號(hào)采集系統(tǒng)
- 用示波器測(cè)量交流電壓的方法和注意事項(xiàng)
- 你知道怎么解決便攜式示波器中的供電噪聲問題嗎?
- “symbol referencing errors”的解決方法(轉(zhuǎn))
- 【轉(zhuǎn)帖】降壓變壓器工作原理詳解
- flash 擦除例程中語句疑問,請(qǐng)高手幫忙解決,謝謝!
- windows ce 5.0 購(gòu)買問題 請(qǐng)求各位大俠了
- 關(guān)于LPC1768數(shù)組溢出問題,請(qǐng)高手幫忙解答一下。
- Raspberry Pi Pico 3D 鼠標(biāo)
- 電源開關(guān)設(shè)計(jì)秘笈30例(全30例)pdf下載
- RFID RC522和PN532有什么區(qū)別?
- TI 8962中的字庫(kù)是怎么算出來的,有字模軟件嗎
- 煉獄傳奇-音樂播放器之戰(zhàn)