娇小w搡bbbb搡bbb,《第一次の人妻》,中国成熟妇女毛茸茸,边啃奶头边躁狠狠躁视频免费观看

歷史上的今天

今天是:2024年05月18日(星期六)

2018年05月18日 | STM32 SysTick 精確延時(非中斷方式)

發布者:絲語輕風 來源: eefocus關鍵字:STM32  SysTick  精確延時  非中斷方式 手機看文章 掃描二維碼
隨時隨地手機看文章

SysTick是Cortex-M內核自帶的一個24位定時器,所以我們可以在core_cm3.h或core_cm4.h頭文件中看到它的寄存器定義和配置函數SysTick_Config()。SysTick的功能非常簡單,僅僅提供一個時基功能,支持中斷請求,因此它的寄存器寥寥無幾。

以下是手冊上對SysTick寄存器的介紹:


CTRL為控制寄存器:

ENABLE:使能位

TICKINT: 中斷的開關,當計數溢出且TICKINT=1時SysTick將發出中斷申請。

CLKSOURCE:時鐘選擇位,CLKSOURCE=1時選擇系統時鐘,如果是M3則為72MHz,M4則為168MHz。否側選擇外部時鐘作為時鐘源。

COUNTFLAG: 溢出標志位,計數到0時置1,而且硬件自動清零。

LOAD為重載值寄存器:

當計數到0時SysTick自動將此寄存器的值加載到VAL寄存器中。注意它是24位的,所以最大值為0XFFFFFF。

VAL為當前值寄存器:

SysTick是從上往下計數的,所以此寄存器的值是遞減的。

那么,了解了SysTick的寄存器之后就可以配置它了。首先將CLKSOURCE位置1,選擇系統時鐘作為時鐘源,以M4內核為例,就是168MHz。為了讓SysTick每1us溢出一次,就須要把重載值設置為167(168-1)。當需要延時n(us)時,就將ENABLE位置1,讓SysTick開始計時,然后等待n次COUNTFLAG標志之后退出就行了。

下面是示例代碼

#include "delay.h"  

  

void delay_config(void)  

{  

    SysTick->CTRL |= SysTick_CTRL_CLKSOURCE_Msk;     //時鐘源為系統時鐘168MHz  

    SysTick->LOAD = 167;                 //重載值為168-1,每1us溢出一次  

}  

  

void delay_ms(vu32 nTime)  

{  

    nTime *= 1000;  

    SysTick->CTRL |= SysTick_CTRL_ENABLE_Msk;        //使能SysTick,開始計數  

    while(nTime--){  

        while((SysTick->CTRL&0X010000) == 0);        //等待COUNTFLAG標志位置1  

    }  

    SysTick->CTRL &= (~SysTick_CTRL_ENABLE_Msk);     //失能SysTick,停止計數  

}  

  

void delay_us(vu32 nTime)  

{  

    SysTick->CTRL |= SysTick_CTRL_ENABLE_Msk;  

    while(nTime--){  

        while((SysTick->CTRL&0X010000) == 0);  

    }  

    SysTick->CTRL &= (~SysTick_CTRL_ENABLE_Msk);  

}  


關鍵字:STM32  SysTick  精確延時  非中斷方式 引用地址:STM32 SysTick 精確延時(非中斷方式)

上一篇:第一頁
下一篇:STM32中通過普通延時函數來精確延時

推薦閱讀

  微軟的surface曾給行業帶來了一股旋風,不過2016年以來這類產品逐漸走下破路,近期外媒發布消息指它可能會推出一款廉價surface與蘋果對抗,這很可能是為了最后一次拯救該項業務,如果依然沒有起色的話它很可能會放棄這一業務。下面就隨嵌入式小編一起來了解一下相關內容吧。  微軟需要surface  微軟現任CEO納德拉已決意向云計算轉型,硬件業務對它...
據汽車新聞網報道,激光雷達在當今汽車業界可謂是爭議最多的技術之一。雖然許多車企和IT初創企業都借助該技術開發自動駕駛技術,但包括特斯拉CEO馬斯克在內的不少精英人士仍然對該技術不屑一顧。馬斯克在今年4月就曾對激光雷達(LIDAR)的使用提出了質疑。馬斯克認為,激光雷達過于昂貴笨重,并將其視之為自動駕駛發展的“拐杖”,“激光雷達不會成功。任...
系統ubuntu12.04(非虛擬機下)mini2440CPU型號:S3C2440AL-40Nandflash型號:K9F1G08Norflash型號:SST39VF1601LCD:統寶 240 x 320$:普通賬戶#:root賬戶*當shell下輸入路徑時可使用tab鍵自動補全(一)建立交叉編譯環境1.將mini2440光盤中的linux文件夾拷貝到 /home/lianghuiyong 并改名為Linux_share(其中兩個文檔為我后面添加進去的)2.Ctrl+A...
Maxim Integrated發布Trinamic伺服控制器/驅動器模塊,為機器人和自動化設備提速的同時將功耗降低75%單軸控制器/驅動器模塊集成運動控制功能,大幅加快傳輸時間、縮小方案尺寸并節省能耗,理想用于兩相雙極步進電機中國,北京– 2021年5月18日 – TRINAMIC Motion Control GmbH & Co. KG,現隸屬于Maxim Integrated Products, Inc (NASDAQ:...

史海拾趣

問答坊 | AI 解惑

Cypress 2.4G PA模塊 功率+27dBm

Complete Transceiver Radio module: CYRF6936 LP 2.4GHz DSSS Radio SOC Operates in the 2.4 to 2.483GHz, unlicensed frequency range (ISM ¨C ndustrial, Scienti and Medical) Transmit power up to +23dBm Receive sensitivity up to ...…

查看全部問答∨

RADIO造型的收音機

這一組設計依然是同樣的創意,用字母作為電子產品的外殼形狀,RADIO造型的收音機,WLAN造型的路由器,MUSIC造型的播放器,SPEAKER造型的揚聲器…       順著這個思路,還有更多的可能性會出現。 …

查看全部問答∨

麻煩大家提供幾個芯片

    我們學校電子設計要做一個紅外遙控密碼鎖,關于紅外遙控模塊我不太了解,請問         1:哪種紅外發射,接收芯片用的比較多,不要太復雜的,能滿足學校的電子設計就OK 。     2:有沒有雙向的紅 ...…

查看全部問答∨

如何打開sqlce 數據庫,用vs2005 vc++

數據庫已經建立好了,就是想在點擊一個按鈕的時候把所有表中的數據都顯示出來…

查看全部問答∨

高手幫忙分析一下gprs tcp send server on recv 有原始數據

lcp_init: xmit_accm=0 0 A 0 upap_init: 0 udpInit() 0D 0D 0D 0D 0D 0D lcp_init: xmit_accm=0 0 A 0 [PPP:5] ppp_set_xaccm[0]: outACCM=0 0 A 0 [PPP:5] ppp_send_config[0]: outACCM=FF FF FF FF [PPP:5] ppp_recv_config[0]: inACCM=0 ...…

查看全部問答∨

問個網絡的問題

這個問題是這樣的,兩臺機子,A和B,比如說,A機的設置如下: I P:192.168.0.1 子網:255.255.255.0 網關:192.168.0.2 B機的設置: I P:192.168.0.2 子網:255.255.255.0 網關:192.168.0.1 這樣,中間用一個交換機,貓的線直接連在交換 ...…

查看全部問答∨

[推薦]51/ARM/MIPS/PowerPC 仿真器

上海祥佑數碼(Micetek)-嵌入式開發系統制造商,公司具備強大研發實力,擁有支持自主開發 51/ARM/MIPS/PowerPC CPU的仿真器及集成開發環境,公司以質優價廉產品,贏得市場廣泛認可,公司將竭 誠為廣大客戶服務。 單片機仿真器系列: - EasyPa ...…

查看全部問答∨

如果想在windows mobile上實現一個輸入法!具體步驟應該如何?

本輸入法已經在PC先用VC實現。 而且已經在ARM系列的試驗儀上面實現了嵌入式移植。 現在想在windows mobile上面進行移植。 望高手指點…

查看全部問答∨

【求助】一個關于字節位移的問題。

在匯編中帶C位左移指令為 RLC X,X。在C語言中的這個指令是什么呢?用<<只能左移但是不帶C位左移。…

查看全部問答∨
小廣播
設計資源 培訓 開發板 精華推薦

最新單片機文章
何立民專欄 單片機及嵌入式寶典

北京航空航天大學教授,20余年來致力于單片機與嵌入式系統推廣工作。

 
EEWorld訂閱號

 
EEWorld服務號

 
汽車開發圈

 
機器人開發圈

電子工程世界版權所有 京ICP證060456號 京ICP備10001474號-1 電信業務審批[2006]字第258號函 京公網安備 11010802033920號 Copyright ? 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
主站蜘蛛池模板: 堆龙德庆县| 古丈县| 唐河县| 巩留县| 万全县| 定远县| 巴林右旗| 桂平市| 页游| 宁阳县| 香格里拉县| 信阳市| 刚察县| 宽城| 曲阳县| 含山县| 城口县| 西宁市| 会泽县| 子洲县| 宁河县| 九台市| 扬州市| 缙云县| 古田县| 上杭县| 湖口县| 永清县| 奉节县| 南城县| 赤城县| 安宁市| 通海县| 长葛市| 衡阳市| 吉水县| 镇沅| 安龙县| 天等县| 河南省| 枞阳县|