日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

關(guān)于STM32定時(shí)器觸發(fā)SPI逐字收發(fā)之應(yīng)用示例

黃工的嵌入式技術(shù)圈 ? 來(lái)源:黃工的嵌入式技術(shù)圈 ? 作者:黃工的嵌入式技術(shù) ? 2020-01-14 16:35 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

我們?cè)谧鯯PI應(yīng)用時(shí),有時(shí)希望通過(guò)定時(shí)器來(lái)定時(shí)地觸發(fā)SPI的收發(fā),并利用DMA完成數(shù)據(jù)的傳輸。這里,以STM32L476芯片為例來(lái)做個(gè)演示,以供參考。

本示例的大致過(guò)程是這樣的:

片內(nèi)SPI1做Master,SPI2做Slave,均工作在全雙工模式。

這里使用片內(nèi)定時(shí)器TIM3,通過(guò)它的更新事件觸發(fā)DMA請(qǐng)求,通過(guò)DMA將數(shù)據(jù)給到SPI1的數(shù)據(jù)寄存器并發(fā)送出去,同時(shí)也開(kāi)啟SPI1接收事件的DMA傳輸??傊琒PI2的收、發(fā)事件都啟用DMA完成。

TIM3的更新事件周期控制兩個(gè)SPI的收發(fā)節(jié)奏,即定時(shí)器每產(chǎn)生一次更新事件,SPI1/SPI2這兩個(gè)主從通信模塊就進(jìn)行一個(gè)數(shù)據(jù)的收發(fā)。我們可以通過(guò)調(diào)整定時(shí)器的計(jì)時(shí)周期來(lái)調(diào)整數(shù)據(jù)收發(fā)的快慢。

好,先基于STM32CubeMx進(jìn)行初始化配置。

1. 對(duì)TIM3做基本配置。選擇時(shí)鐘源,先大致估算個(gè)定時(shí)器計(jì)時(shí)周期,調(diào)試時(shí)我們可以自行靈活調(diào)整。

開(kāi)啟基于TIM3更新事件的DMA配置。傳輸方向是從Memory 到 外設(shè)SPI1,即將內(nèi)存數(shù)據(jù)傳輸?shù)絊PI1的數(shù)據(jù)寄存器進(jìn)行數(shù)據(jù)發(fā)送,這里選用循環(huán)模式,以便測(cè)試。

2. 對(duì)SPI1/SPI2進(jìn)行基本配置。細(xì)節(jié)請(qǐng)參看下面三幅截圖。

3、DMA的配置情況。

在TIM3和SPI1/SPI2外設(shè)配置中,開(kāi)啟了相關(guān)事件的DMA請(qǐng)求,匯總?cè)缦聢D。

4、準(zhǔn)備用戶(hù)代碼。

當(dāng)完成基于STM32CubeMx的初始化配置并生產(chǎn)初始化代碼后,我們準(zhǔn)備相應(yīng)的用戶(hù)代碼。這里準(zhǔn)備了4個(gè)內(nèi)存數(shù)組,分別用于存放SPI1/SPI2的收發(fā)數(shù)據(jù)。

在定時(shí)器的觸發(fā)下,Master SPI1逐字的向Slave SPI2發(fā)送“Hello! I AM STM32!”,Slave SPI2也逐字的向Master回應(yīng)“HI,MASTER,ME TOO!”,這樣循環(huán)操作。下面兩幅截圖是本示例中使用到的用戶(hù)代碼,是基于STM32Cube固件庫(kù)而編寫(xiě)的。應(yīng)該說(shuō)簡(jiǎn)單明了,無(wú)須過(guò)多解釋。

5、結(jié)果驗(yàn)證。

下面的截圖是兩個(gè)不同時(shí)刻SPI通信時(shí)的信號(hào)波形圖。其中,紫色的是時(shí)鐘信號(hào),綠色、黃色是數(shù)據(jù)信號(hào)。兩個(gè)數(shù)據(jù)信號(hào)間的時(shí)間間隔由定時(shí)器的更新周期決定。

下面的截圖是在調(diào)試狀態(tài)下的通過(guò)觀察窗口得到的SPI1/SPI2分別從對(duì)方收到的數(shù)據(jù),即SPI2收到的數(shù)據(jù)是“HELLO,I AM STM32!”,SPI1收到的數(shù)據(jù)則是“HI,MASTER,ME TOO!”

整體上講,上述應(yīng)用的實(shí)現(xiàn)不難,可能稍微有點(diǎn)綜合性。

要實(shí)現(xiàn)上述應(yīng)用,首先要求我們對(duì)DMA傳輸?shù)脑碛星逦牧私猓|發(fā)事件,傳輸源、傳輸目標(biāo)幾個(gè)概念及關(guān)系要弄清楚。

另外,即使我們基于STM32固件庫(kù)開(kāi)發(fā),不一定能找到完整的現(xiàn)存例程,我們可能需要基于現(xiàn)有驅(qū)動(dòng)代碼自行組織用戶(hù)程序。

還有,在上面示例代碼中,我沒(méi)有開(kāi)啟DMA的中斷事件,我們?cè)诰唧w應(yīng)用中可以根據(jù)情況來(lái)決定是否啟用DMA中斷,比方開(kāi)啟傳輸完成中斷等。

最后順便提醒下,這里我們基于定時(shí)器事件的DMA請(qǐng)求而自行指定DMA的源端和目的端,?一定要保證是該觸發(fā)事件所請(qǐng)求的DMA可以到達(dá)的地方。建議編程設(shè)計(jì)前最好查看下相關(guān)芯片數(shù)據(jù)手冊(cè)里的芯片模塊及總線框架圖,不然的話,有時(shí)你可能遇到你指定的DMA根本就不正常運(yùn)作的情況。

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • STM32
    +關(guān)注

    關(guān)注

    2313

    文章

    11195

    瀏覽量

    374756
  • SPI
    SPI
    +關(guān)注

    關(guān)注

    17

    文章

    1900

    瀏覽量

    102213
  • 定時(shí)器
    +關(guān)注

    關(guān)注

    23

    文章

    3375

    瀏覽量

    124677
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    瑞薩RA系列FSP庫(kù)開(kāi)發(fā)實(shí)戰(zhàn)指南AGT低功耗定時(shí)器簡(jiǎn)介和結(jié)構(gòu)框圖

    瑞薩RA MCU有兩種定時(shí)器外設(shè):GPT(General PWM Timer)定時(shí)器和AGT(Asynchronous General Purpose Timer)定時(shí)器。
    的頭像 發(fā)表于 04-30 16:47 ?4458次閱讀
    瑞薩RA系列FSP庫(kù)開(kāi)發(fā)實(shí)戰(zhàn)指南<b class='flag-5'>之</b>AGT低功耗<b class='flag-5'>定時(shí)器</b>簡(jiǎn)介和結(jié)構(gòu)框圖

    深入剖析NE555定時(shí)器:特性、參數(shù)與應(yīng)用

    ,我們就來(lái)深入了解一下NE555定時(shí)器的相關(guān)特性、參數(shù)以及典型應(yīng)用。 文件下載: NE555M/TR.pdf 產(chǎn)品簡(jiǎn)介 NE555定時(shí)器內(nèi)部由閾值比較、觸發(fā)比較
    的頭像 發(fā)表于 04-28 15:40 ?108次閱讀

    LM555QML定時(shí)器:功能特性、應(yīng)用及設(shè)計(jì)要點(diǎn)

    了解一下它。 文件下載: lm555qml.pdf 一、LM555QML簡(jiǎn)介 LM555QML是一款可直接替代SE555/NE555的定時(shí)器,能實(shí)現(xiàn)從微秒到數(shù)小時(shí)的定時(shí),支持單穩(wěn)態(tài)和無(wú)穩(wěn)態(tài)兩種工作模式,并且占空比可調(diào)。它額外提供了觸發(fā)
    的頭像 發(fā)表于 02-10 15:40 ?351次閱讀

    深入解析 LM555 定時(shí)器:特性、應(yīng)用與設(shè)計(jì)要點(diǎn)

    ,成為電子設(shè)計(jì)中的經(jīng)典選。本文將深入剖析 LM555 定時(shí)器的特性、應(yīng)用場(chǎng)景以及設(shè)計(jì)過(guò)程中的注意事項(xiàng),希望能為工程師們提供有價(jià)值的參考。 文件下載: lm555.pdf 二、LM555 定時(shí)器的特性 2.1 兼容性強(qiáng) LM55
    的頭像 發(fā)表于 02-10 15:35 ?588次閱讀

    LM555-MIL定時(shí)器:高精度定時(shí)與振蕩的理想

    LM555-MIL定時(shí)器:高精度定時(shí)與振蕩的理想選 在電子設(shè)計(jì)領(lǐng)域,定時(shí)器和振蕩是極為關(guān)鍵的元件,它們廣泛應(yīng)用于各種需要精確時(shí)間控制的場(chǎng)
    的頭像 發(fā)表于 02-09 10:55 ?889次閱讀

    CW32定時(shí)器及其中斷介紹

    載計(jì)數(shù)并由一個(gè)可編程預(yù)分頻驅(qū)動(dòng)。BTIM 支持定時(shí)器模式、計(jì)數(shù)模式、觸發(fā)啟動(dòng)模式和門(mén)控模式 4 種工作模式,支持溢出事件
    發(fā)表于 01-14 06:42

    LAT1173高精度定時(shí)器的同步功能應(yīng)用筆記

    STM32G474 所含的高精度定時(shí)器(HRTIMER)其實(shí)包含了多個(gè)定時(shí)器,多個(gè)定時(shí)器之間可以單獨(dú)工作,也可以進(jìn)行同步,且高精度定時(shí)器還能
    發(fā)表于 01-11 17:32 ?0次下載

    LMH0026:SD SDI重定時(shí)器的卓越

    LMH0026:SD SDI重定時(shí)器的卓越選 在數(shù)字視頻信號(hào)處理設(shè)備的設(shè)計(jì)中,選擇一款合適的重定時(shí)器至關(guān)重要。今天,我們就來(lái)深入探討德州儀器(TI)的LMH0026 SD SDI重定時(shí)器
    的頭像 發(fā)表于 12-27 10:45 ?845次閱讀

    CW32L083的基本定時(shí)器

    CW32L083 內(nèi)部集成 3 個(gè)基本定時(shí)器 (BTIM),每個(gè) BTIM 完全獨(dú)立且功能完全相同,各包含一個(gè) 16bit 自動(dòng)重裝 載計(jì)數(shù)并由一個(gè)可編程預(yù)分頻驅(qū)動(dòng)。BTIM 支持定時(shí)器
    發(fā)表于 12-15 06:23

    CW32定時(shí)器及中斷介紹

    載計(jì)數(shù)并由一個(gè)可編程預(yù)分頻驅(qū)動(dòng)。BTIM 支持定時(shí)器模式、計(jì)數(shù)模式、觸發(fā)啟動(dòng)模式和門(mén)控模式 4 種工作模式,支持溢出事件
    發(fā)表于 12-01 07:08

    PWM、定時(shí)器、SysTick 區(qū)別及應(yīng)用場(chǎng)景

    在單片機(jī)和嵌入式開(kāi)發(fā)中,經(jīng)常會(huì)遇到PWM(脈寬調(diào)制)、定時(shí)器、SysTick(系統(tǒng)滴答定時(shí)器)這幾個(gè)詞。很多初學(xué)者容易把它們混為一談,以為都是“定時(shí)相關(guān)的東西”。其實(shí),它們?cè)诒举|(zhì)和應(yīng)用上有明顯差別
    的頭像 發(fā)表于 11-17 10:53 ?730次閱讀
    PWM、<b class='flag-5'>定時(shí)器</b>、SysTick 區(qū)別及應(yīng)用場(chǎng)景

    SysTick系統(tǒng)滴答定時(shí)器簡(jiǎn)介

    SysTick—系統(tǒng)定時(shí)器是屬于CM33內(nèi)核中的一個(gè)外設(shè),內(nèi)嵌在NVIC中。系統(tǒng)定時(shí)器是一個(gè)24bit的向下遞減的計(jì)數(shù),計(jì)數(shù)每計(jì)數(shù)一次的時(shí)間為 1/SYSCLK,一般我們?cè)O(shè)置系統(tǒng)時(shí)
    的頭像 發(fā)表于 09-23 09:50 ?1852次閱讀
    SysTick系統(tǒng)滴答<b class='flag-5'>定時(shí)器</b>簡(jiǎn)介

    定時(shí)器同步并行模式

    AT32F4xx定時(shí)器同步并行模式 支持型號(hào): AT32F 系列 主要使用外設(shè): TIMER 獲取示例 1 快速使用方法 1.1 硬件資源 AT-START-F403A V1.0 實(shí)驗(yàn)
    發(fā)表于 09-22 09:56

    大彩講堂:VisualHMI-LUA教程-定時(shí)器的使用指南

    定時(shí)器的使用
    的頭像 發(fā)表于 08-31 16:59 ?1403次閱讀
    大彩講堂:VisualHMI-LUA教程-<b class='flag-5'>定時(shí)器</b>的使用指南

    STM32入門(mén)篇通用定時(shí)器徹底研究

    新手教程,含11個(gè)例程,全面剖析TIMER STM32定時(shí)器功能很強(qiáng)大,學(xué)習(xí)起來(lái)也很費(fèi)勁兒,本人在這卡了5天才算看明白。寫(xiě)下下面的文字送給后來(lái)者,希望能帶給你點(diǎn)啟發(fā)。在此聲明,本人也是剛?cè)腴T(mén)
    發(fā)表于 08-01 16:51
    太原市| 莱州市| 旌德县| 扶余县| 星子县| 河东区| 科尔| 南郑县| 宜宾县| 济源市| 澄江县| 灌阳县| 黎平县| 临朐县| 万安县| 达拉特旗| 定兴县| 青田县| 合水县| 九寨沟县| 阳朔县| 余江县| 阳东县| 汕头市| 南澳县| 高邑县| 龙口市| 曲阳县| 马尔康县| 东台市| 西乌| 河南省| 黑河市| 锦屏县| 江北区| 汾阳市| 新乡县| 夏津县| 陆丰市| 东阿县| 冀州市|