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

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

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

3天內不再提示

STM32定時器觸發DMA數據傳輸失敗的原因如何解決

茶話MCU ? 來源:未知 ? 作者:易水寒 ? 2018-11-25 09:21 ? 次閱讀

有人使用STM32定時器事件觸發DMA,讓其將內存數據傳輸到通信外設的數據寄存器進行發送,發現DMA根本就不動作。

比方以基于STM32F411的芯片為例,通過TIM3更新事件觸發DMA請求,DMA從內存將數據送到SPI1?的數據寄存器,從而完成數據發送。

他采用CubeMx進行配置。基本配置如下:[文中圖片可以放大觀看]

?

相關用戶實現代碼如下:

從配置過程和代碼實現來看,似乎都沒有問題。那DMA怎么就是不動作呢?

問題出在我們使用上面的函數做DMA傳輸所關聯源端和目標端時,出現了想當然的情況。

我們利用TIMER事件來作為DMA請求源時,而作為數據傳輸的源端或目的端,都是我們用戶指定的。這時就一定要注意源端和目標端是當前DMA流所支持的。否則就會出現亂點鴛鴦譜,DMA根本可能就跑不起來。就像你叫了某快遞公司,它的服務范圍是相對固定的,并非你想去哪里她就能服務到哪里。

比方上面的例子,如果改成SPI2就沒問題。為什么剛才SPI1不行呢,因為DMA1根本訪問不到SPI1,我們不妨看看基于STM32F411芯片的內部功能及總線框圖就很清晰了。

從上圖不難看出DMA1是訪問不到SPI1或SPI4這些外設的,或者說DMA1就沒法訪問掛在APB2總線上的外設,只能訪問APB1總線上的外設。

小結:一般來講,基于某觸發事件,對應的DMA數據流就可以確定下來了,那該DMA數據流的傳輸范圍往往也隨之確定。我們在為該DMA數據流指定源端和目標端時一定要符合其傳輸范圍,否則會出現傳輸無法完成的情形。換言之,我們在做DMA傳輸時,為了實現DMA的有效傳輸,往往需要結合源端和目的端來調整或選擇合適的DMA數據流。結合前面的比方,如果這家快遞公司到不了,我們換一家可能就輕松解決了。

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

    關注

    2270

    文章

    10906

    瀏覽量

    356530
  • 定時器
    +關注

    關注

    23

    文章

    3251

    瀏覽量

    114996
  • dma
    dma
    +關注

    關注

    3

    文章

    565

    瀏覽量

    100661

原文標題:定時器觸發DMA數據傳輸失敗之案例

文章出處:【微信號:stmcu832,微信公眾號:茶話MCU】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    STM32通過DMA方式傳輸TIM3定時器計數值,數值重復是為什么?

    AD值防止數據錯亂,故DMA配置必須放在ADC之前。) 因此為了排除相同原因導致的數據重復,所以將DMA配置放在TIM3
    發表于 04-10 06:50

    STM32F103定時器觸發ADC+DMA傳輸 精選資料分享

    STM32F103定時器觸發ADC+DMA傳輸ADC除了軟件觸發方式之外還有外部
    發表于 08-11 06:05

    stm32 定時器觸發ADC多通道采樣+DMA提取數據相關資料下載

    stm32g0 定時器觸發ADC多通道采樣+DMA提取數據stm32g0
    發表于 02-15 06:46

    stm32數據傳輸的相關資料分享

    簡介DMA,全稱Direct Memory Access,即直接存儲訪問。DMA傳輸數據從一個地址空間復制到另一個地址空間,提供在外設和
    發表于 02-22 06:58

    DMA進行數據傳輸和CPU進行數據傳輸的疑問

    求大佬解答,本人正在學習STM32單片機中DMA直接數據存儲部分的內容 看了DMA簡介后,也上手過實例代碼,但是沒有實際的項目經驗,所以有以下疑問:
    發表于 05-25 17:18

    DMA數據傳輸(源代碼分享)

    手頭項目也需要加入DMA數據傳輸,以最大限度地提升CPU效率,于是測試了一下XMEGA的DMA模塊,把一塊內存中的數據DMA
    的頭像 發表于 04-27 09:22 ?9168次閱讀

    DMA數據傳輸在SPEAR300實現高速串口驅動設計

    DMA數據傳輸無需CPU的參與,是一種更加高效的數據傳輸方式。現有的DMA數據傳輸方案都是基于DMA
    發表于 04-04 12:23 ?1634次閱讀
    <b class='flag-5'>DMA</b><b class='flag-5'>數據傳輸</b>在SPEAR300實現高速串口驅動設計

    測試代碼中使用DMA傳輸定時器觸發ADC

    現在共用到ADC1模塊的4個ADC通道,即1個片內Vrefint通道和其它三個外部通道CH8,CH10,CH17。下面測試代碼中使用DMA傳輸定時器觸發ADC.
    的頭像 發表于 08-10 16:22 ?4509次閱讀
    測試代碼中使用<b class='flag-5'>DMA</b><b class='flag-5'>傳輸</b>,<b class='flag-5'>定時器</b><b class='flag-5'>觸發</b>ADC

    STM32CUBEMX配置教程(十二)STM32定時器觸發的固定頻率ADC采樣(使用DMA

    STM32CUBEMX配置教程(十二)STM32定時器觸發的固定頻率ADC采樣(使用DMA
    發表于 11-24 13:51 ?85次下載
    <b class='flag-5'>STM32</b>CUBEMX配置教程(十二)<b class='flag-5'>STM32</b>的<b class='flag-5'>定時器</b><b class='flag-5'>觸發</b>的固定頻率ADC采樣(使用<b class='flag-5'>DMA</b>)

    STM32CUBEMX配置教程(十三)STM32定時器觸發的固定頻率DAC輸出(使用DMA

    STM32CUBEMX配置教程(十三)STM32定時器觸發的固定頻率DAC輸出(使用DMA
    發表于 11-24 14:06 ?46次下載
    <b class='flag-5'>STM32</b>CUBEMX配置教程(十三)<b class='flag-5'>STM32</b>的<b class='flag-5'>定時器</b><b class='flag-5'>觸發</b>的固定頻率DAC輸出(使用<b class='flag-5'>DMA</b>)

    STM32F103定時器觸發ADC+DMA傳輸

    STM32F103定時器觸發ADC+DMA傳輸ADC除了軟件觸發方式之外還有外部
    發表于 11-30 10:36 ?57次下載
    <b class='flag-5'>STM32</b>F103<b class='flag-5'>定時器</b><b class='flag-5'>觸發</b>ADC+<b class='flag-5'>DMA</b><b class='flag-5'>傳輸</b>

    H743定時器觸發ADC轉換DMA傳輸之應用

    學習安富萊的H743的定時器觸發ADC DMA傳輸源碼
    發表于 11-30 11:21 ?11次下載
    H743<b class='flag-5'>定時器</b><b class='flag-5'>觸發</b>ADC轉換<b class='flag-5'>DMA</b><b class='flag-5'>傳輸</b>之應用

    stm32 定時器觸發ADC多通道采樣+DMA提取數據

    stm32g0 定時器觸發ADC多通道采樣+DMA提取數據stm32g0
    發表于 12-16 16:56 ?68次下載
    <b class='flag-5'>stm32</b> <b class='flag-5'>定時器</b><b class='flag-5'>觸發</b>ADC多通道采樣+<b class='flag-5'>DMA</b>提取<b class='flag-5'>數據</b>

    STM32CubeMX-串口開啟DMA進行數據傳輸

    STM32CubeMX筆記-串口開啟DMA進行數據傳輸
    發表于 12-27 18:40 ?7次下載
    <b class='flag-5'>STM32</b>CubeMX-串口開啟<b class='flag-5'>DMA</b>進行<b class='flag-5'>數據傳輸</b>

    stm32數據傳輸

    簡介DMA,全稱Direct Memory Access,即直接存儲訪問。DMA傳輸數據從一個地址空間復制到另一個地址空間,提供在外設和
    發表于 12-28 19:08 ?8次下載
    <b class='flag-5'>stm32</b><b class='flag-5'>數據傳輸</b>
    主站蜘蛛池模板: 亚洲成人精品久久| 成人免费无毒在线观看网站| 国产精品福利电影| 亚洲福利网站| 久久黄色录像| java农村野外妇女hd| 乳巨揉みま痴汉电车中文字幕动漫| 国产成人免费片在线视频观看| 亚洲精品久久无码AV片WWW | 六度影院最新| 俄罗斯bbbbbbbbb大片| 亚洲精品成人久久久影院| 久久综合久久鬼色| 嘟嘟嘟在线视频免费观看高清中文| 亚洲精品高清在线| 男人日女人的b| 国产日韩欧美三级| 97人视频国产在线观看| 午夜神器18以下不能进免费| 理论片午午伦夜理片久久| 国产AV果冻传奇麻豆| 中文字幕绝色少妇性| 色综合久久五月| 麻豆一二三四区乱码| 国产午夜婷婷精品无码A片| 99午夜视频| 亚洲日本乱码中文论理在线电影| 啪啪做羞羞事小黄文| 精品国产美女AV久久久久| 东北成人社区| 97在线视频免费| 亚洲免费三级电影| 色多多涩涩屋下载软件| 麻豆传煤网站网址入口在线下载| 国产女人喷潮视频免费| seba51久久精品| 曰本女人牲交视频免费| 午夜国产羞羞视频免费网站| 强奷漂亮女老板在线播放| 久久操热在线视频精品| 国产热久久精|