色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

STM32系列里RTC的亞秒特性及功能(下)

麥辣雞腿堡 ? 來源:茶話MCU ? 作者:茶話MCU ? 2023-06-21 15:56 ? 次閱讀

我們回到前面提到的需求,每隔50±20ms做喚醒,即30ms~70ms范圍內實現喚醒都可以接受。如果說使用ALARM中斷,相信很多人自然會想到,先設定一個ALARM點,等喚醒后再修改新的ALARM值,就這樣延續下去。

這樣操作也是可以的,即每次在ALARM中斷里修改新的ALARM時間點。下圖是對ALARM值進行編程的流程【設置時先要關閉ALARM,修改ALARM值后再手動開啟ALARM單元】:

不過,結合眼前的應用需求,我們可以不使用上面的做法,而是巧妙地使用RTC亞秒特性來實現周期性的ALARM以滿足需求。怎么個巧法呢?一起來看看。

先假定RTCCLK為32768Hz,RTC同步分頻系數和異步分頻系數分別為如下參數

依據現有的分頻配置,則亞秒的時間精度或者說分辨率為(1/256)秒,3.9ms的樣子,即亞秒計數器每計1個脈沖所對應的時間就是3.9ms,算4ms吧。【記住這個數據后面要用】

談到這里,我們跳躍一下思路,換個數學話題聊聊。【注:這個地方可能有點突兀。突兀的突悟往往離不開艱辛的修行。】

這里有從0開始按照從小到大排列的一批足夠多的自然數列,按10進制展現。我們來看看幾種情形:

1、如果找出只要個位數相同的數據,仍然按照從小到大排列,每相鄰兩個數的差值一定是10。對不對?

2、如果找出只要個位數與十位數都相同的數據,仍然按照從小到大排列,每相鄰兩個數的差值一定是100。沒錯吧。

3、如果找出只要個位數與十位數以及百位數都相同的數據 仍然按照從小到大排列,每相鄰兩個數的差值一定是1000。結論也沒問題。

到此,我們應該發現規律了,通過關注低幾位數相同而重新有序排列而成的相鄰數據之差即為10的幾次方,其實這里相鄰數的差值也就是原自然數列中兩個數的位置間隔。

好,我們不妨改變下數據的進制看看。還是從0開始按照從小到大排列的一批足夠多的自然數列,按2進制展現。依然看看幾種情形并得出相應結論。

1、若找出只要低1位數相同的數據,仍按照從小到大排列,每相鄰兩個數的差值一定是2;

2、若找出只要低2位數都相同的數據,仍按照從小到大排列,每相鄰兩個數的差值一定是4;

3、若找出只要低3位數都相同的數據 仍按照從小到大排列,每相鄰兩個數的差值一定是8;

其它我們可以依次類推。

同樣,我們也發現規律,通過關注二進制數的低幾位相同而重新有序排列而成的相鄰數據之差即為2的幾次方。

上面專門聊了一段純數學話題,繼續回到我們的亞秒應用問題。

我們知道,包括亞秒在內的整個日歷數據實質上是個具有高低順序和進位關系的數據,其中,亞秒是整個日歷數據里的最低端。當我們設置ALARM參數時,如果說只關注亞秒的低1位,其它都不關心。基于前面的數學話題鋪墊可知,每當出現低1位數據相同的兩個相鄰數,總是相差2個計數單位,這里就是2個計數脈沖。換言之,每隔2個計數脈沖,結合前面分析,即每隔8ms都會觸發ALARM事件。

如果說只關注亞秒的低2位,其它都不關心,那么每當出現低2位數據相同的相鄰數,總是相差4個計數單位,即4個計數脈沖。換言之,每隔4個計數脈沖,即16ms都會觸發ALARM事件。

如果只關注亞秒的低3位,其它參數都不關心,每當出現低3位數據相同的相鄰數,總是相差8個計數單位,即8個計數脈沖,每隔32ms都會觸發ALARM事件。

其它依此類推。

談到這里,設置的只關心亞秒的位數跟ALARM周期的關系應該說很清晰了。我在下面簡單羅列了基于前面條件下亞秒的關心位數與ALARM周期的對應表:【灰色表示不關心,不參與日歷值與ALARM設定值的比較,只有綠色位參與比較】

現在期望的喚醒周期是50±20ms,我們配置亞秒計數器的低3位或者低4位作為ALARM的比較位【說關心位、參與位什么的都可以】,其它設置為不關心就可以滿足要求。我們不妨選擇亞秒計數值的低4位參與比較,即每兩次相鄰ALARM相差16個計數脈沖,周期約為64ms。

下面是我使用CubeMx進行的日歷和ALARM A的配置,重點看下ALARM配置。

這里的ALARM配置只選擇亞秒的低4位參與比較,既然這樣其它參數就無所謂了。其中那個用于比較的亞秒值我這里寫的12,這個值寫多少并不影響ALARM周期的擬定,只會影響每次發生ALARM事件時的亞秒計數器的低4位的值。其實,當我們選定只關心亞秒計數器的低4位時,重復ALARM的周期就已經定了。

完成配置、建立工程、組織測試代碼。

我在ALARM中斷里讀取每次發生ALARM事件時的亞秒值。我截取幾個連續ALARM事件的相關信息在如下幾幅圖。其中變量Sub_Value和stime1.SubSeconds是一個東西,表示發生ALARM事件時亞秒計數器的值。比如下面各截圖中的236、220、204、188、172、156幾個數,顯然兩相鄰數的間隔保持準確的16個計數脈沖,若把這幾個數轉成2進制,他們的低4位都是1100B,即我在前面ALARM設置的亞秒比較值 12
若在每次的ALARM中斷里把發生ALARM的時間點實時打印出來,可以清晰地看到相鄰兩次ALARM事件的時間間隔固定在63ms左右,這個值跟前面規劃的基本一致。

有人或許會問,相鄰ALARM事件的時間差為什么沒有計數脈沖數差值那樣穩定精準。我認為主要有兩點原因,一是我測試時并沒有使用標準的32768外部時鐘,而是選擇的內部LSI,它的頻率一般在31Khz到33KHz之間,不像LSE那么精準。還有一個原因,在做亞秒時間計算時,因為無法整除原因肯定會帶來計算偏差。

利用上面方法可以省去每次修改ALARM配置的操作,類似這種具有周期性且周期不大于1秒的應用都可以嘗試考慮上述方法,必要的時候可以考慮調整同步分頻系數即亞秒計數器的重裝值以滿足具體的時間精度要求。當然,調整同步分頻系數的同時往往要調整異步分頻系數,原則上異步分頻系數要盡量大以充分降低RTC模塊帶來的功耗,具體應用時我們可以綜合考慮后再做調整。

今天的STM32片內RTC亞秒特性以及應用演示的分享就到這里,拋磚引玉,愿君有所獲。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • STM32
    +關注

    關注

    2270

    文章

    10895

    瀏覽量

    355750
  • 控制
    +關注

    關注

    4

    文章

    1011

    瀏覽量

    122656
  • RTC
    RTC
    +關注

    關注

    2

    文章

    538

    瀏覽量

    66468
收藏 人收藏

    評論

    相關推薦

    轉:STM32CubeMX系列教程13:實時時鐘(RTC)

    1.RTC簡介實時時鐘 (RTC) 是一個獨立的 BCD 定時器/計數器。 RTC 提供具有可編程鬧鐘中斷功能的日歷時鐘 /日歷。RTC
    發表于 07-06 16:53

    STM32RTC該怎么配置

    RTC實時時鐘部分,之前也是有講到過的。Hi3516A開發–RTC電路接下來看一STM32RTC
    發表于 08-11 08:59

    關于RTC中斷功能

    RTC(Real Time Clock)是實時時鐘的意思,它其實和TIM有點類似,也是利用計數的原理,選擇RTC時鐘源,再進行分頻,到達計數的目的。該文主要講述關于RTC中斷
    發表于 08-13 06:57

    關于RTC中斷功能

    Ⅰ、概述RTC(Real Time Clock)是實時時鐘的意思,它其實和TIM有點類似,也是利用計數的原理,選擇RTC時鐘源,再進行分頻,到達計數的目的。該文主要講述關于RTC
    發表于 08-16 08:19

    STM32CubeMX RTC簡介

    一、RTC簡介實時時鐘(RTC) 是一個獨立的 BCD 定時器/計數器。 RTC 提供具有可編程鬧鐘中斷功能的日歷時鐘/日歷。RTC 還包含
    發表于 08-18 06:37

    具有帶32位喚醒計數器的RTC的超低MCU有哪些

    我目前正在使用 STM32WLE5CC MCU,它具有帶 32 位喚醒計數器的 RTC 的強大功能,但我的其他非 lorawan 項目需
    發表于 12-02 06:14

    RTC不均勻

    STM32F103RCT6的RTC不均勻
    發表于 12-07 18:13 ?0次下載

    STM32F10x _RTC中斷

    STM32F10x_RTC中斷
    的頭像 發表于 03-25 11:39 ?3217次閱讀
    <b class='flag-5'>STM32</b>F10x _<b class='flag-5'>RTC</b><b class='flag-5'>秒</b>中斷

    STM32開發 -- RTC詳解

    RTC實時時鐘部分,之前也是有講到過的。Hi3516A開發–RTC電路接下來看一STM32RTC
    發表于 11-30 13:06 ?27次下載
    <b class='flag-5'>STM32</b>開發 -- <b class='flag-5'>RTC</b>詳解

    STM32CubeMX學習筆記(14)——RTC實時時鐘使用

    包含二進碼十進數格式 (BCD) 的、分鐘、小時( 12 或 24 小時制)、星期幾、日期、月份和年份。此外,還可提供二進制格式的值。系統可以自動將月份的天數補償為 28、29(閏年)、30 和 31 天。只要芯片的備用電
    發表于 12-05 21:06 ?13次下載
    <b class='flag-5'>STM32</b>CubeMX學習筆記(14)——<b class='flag-5'>RTC</b>實時時鐘使用

    STM32F030低溫RTC不工作

    STM32F030低溫RTC不工作
    發表于 12-09 09:21 ?19次下載
    <b class='flag-5'>STM32</b>F030低溫<b class='flag-5'>下</b><b class='flag-5'>RTC</b>不工作

    STM32片內RTC特性以及應用演示的分享

    絕大多數STM32系列RTC都具有【或稱子
    的頭像 發表于 04-15 11:27 ?2752次閱讀
    <b class='flag-5'>STM32</b>片內<b class='flag-5'>RTC</b><b class='flag-5'>亞</b><b class='flag-5'>秒</b><b class='flag-5'>特性</b>以及應用演示的分享

    STM32片內RTC特性的應用示例(上)

    絕大多數STM32系列RTC都具有【或稱子
    的頭像 發表于 04-30 16:28 ?944次閱讀
    <b class='flag-5'>STM32</b>片內<b class='flag-5'>RTC</b><b class='flag-5'>亞</b><b class='flag-5'>秒</b><b class='flag-5'>特性</b>的應用示例(上)

    STM32片內RTC特性的應用示例(

    這個專用喚醒定時器,而是想基于ALARM事件和特性來實現上面需求。 對于RTC的ALARM功能我們都不陌生,即先預設需要ALARM的時間
    的頭像 發表于 04-30 16:32 ?1663次閱讀
    <b class='flag-5'>STM32</b>片內<b class='flag-5'>RTC</b><b class='flag-5'>亞</b><b class='flag-5'>秒</b><b class='flag-5'>特性</b>的應用示例(<b class='flag-5'>下</b>)

    STM32系列RTC特性功能(上)

    絕大多數STM32系列RTC都具有【或稱子
    的頭像 發表于 06-21 15:53 ?2939次閱讀
    <b class='flag-5'>STM32</b><b class='flag-5'>系列</b><b class='flag-5'>里</b><b class='flag-5'>RTC</b>的<b class='flag-5'>亞</b><b class='flag-5'>秒</b><b class='flag-5'>特性</b>及<b class='flag-5'>功能</b>(上)
    主站蜘蛛池模板: 久久大胆视频| 美女打开双腿扒开屁股男生| 乱亲女H秽乱长久久久| 人妻体内射精一区二区| 亚洲精品国产乱码AV在线观看| 最美白嫩的极品美女ASSPICS| 超大号黑吊magnet| 亚洲日本香蕉视频观看视频| 2021精品乱码多人收藏| 伊人久久大香网| 伊人影院综合| 第一福利视频网站在线| 久久re这里视频精品8| 日本一区精品久久久久影院| 日日夜夜噜噜| 征服丝袜旗袍人妻| 国产精品高清在线观看93| 光溜溜的美女直播软件| 国产高清-国产av| 两个吃奶一个添下面视频| 我们中文在线观看免费完整版| 在线看无码的免费网站| 51精品少妇人妻AV一区二区| 国产精品婷婷久青青原| 黑人干肥婆| 日本撒尿特写| 18av 在线| 国产永不无码精品AV永久| 热综合一本伊人久久精品| 在线二区 中文 无码| 国产偷抇久久精品A片蜜臀AV| 欧美丝袜女同| 这里只有精品在线视频| 国产色欲一区二区精品久久呦| 强上轮流内射高NP男男| 最近中文字幕完整版高清| 护士的下面又湿又紧10P | 久久久久综合网| 午夜DV内射一区二区| 扒开老师大腿猛进AAA片软件| 久久久精品国产免费A片胖妇女|