在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

電子發燒友App

硬聲App

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

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

3天內不再提示
電子發燒友網>電子資料下載>工控技術>STM32串口DMA容易忽視的問題資料下載

STM32串口DMA容易忽視的問題資料下載

2021-04-16 | pdf | 154.13KB | 次下載 | 2積分

資料介紹

博主昨天晚上在STM32串口DMA的問題上糾結了好長時間,所以今天上午寫篇博客來談談我對串口DMA發送的理解→_→今天主要討論三個問題:1、什么叫串口DMA 請求;2、串口簡要復習;3、串口DMA發送流程。1、什么叫串口DMA 請求(博主用的是戰艦STM32開發板)說這個問題之前先簡單回顧DMA的基本特性。先導出原子哥的PPT內容:DMA全稱Direct Memory Access,即直接存儲器訪問。DMA傳輸將數據從一個地址空間復制到另一個地址空間。當CPU初始化這個傳輸動作,傳輸動作本身是由DMA控制器來實現和完成的。STM32有兩個DMA控制器(DMA2只存在于大容量產品中),DMA1有7個通道,DMA2有5個通道,每個通道專門用來管理來自于一個或者多個外設對存儲器的訪問請求。還有一個仲裁器來協調各個DMA請求的優先權。作用:為CPU減負!下面上圖→_→DMA各通道從外設(TIMx、ADCx、SPIx、I2Cx、和USARTx)產生的DMA請求,通過邏輯或輸入到DMA控制器,這就意味著同時只能有一個請求有效(在同一時間,就只能使用其中的一個,其他通道也類似)。外設的DMA請求,可以通過設置相應的外設寄存器中的控制位,被獨立的開啟或關閉。看到這里串口DMA請求的定義就出來了:先舉個例子:譬如我想用串口發送數據到PC機,一般做法是CPU通過APB1/APB2總線往串口寫數據,然后串口發送;或者是CPU通過總線從串口取(讀)數據;如果此時CPU處理的任務非常多,這就會耗費CPU的處理時間。而我們如果用DMA來傳送數據那就很快了,DMA會通過自己的特定通道將數據從一個地址空間復制到另一個地址空間,而且不需要CPU的干預。所以串口DMA請求的定義是:串口要發送/接收數據會請求DMA來完成數據的寫和讀。(注意這句話只針對本文!)2、串口簡要復習(博主用的是戰艦庫函數)本來想給讀者準備個帖子,關于printf重定向和半主機模式的講解,但是鏈接發不了。只能讀者自己去搜索了。。。這里簡要復習一下戰艦STM32串口的知識點。舉個例子:我想用PC機往STM32串口發送個數據,然后STM32接收到后將數據原樣返回給PC機(顯示在串口調試助手中)。下面來給大家屢下思路→_→首先我們會在串口初始化函數中配置串口接收中斷,當你PC機往串口發送數據時,串口會產生接收中斷;并在中斷服務函數中,判斷接沒接收完,如果接收完畢就會把接收狀態寄存器的接收完成標志位置1。到這兒是接收中斷的作用。。然后在主函數中,我們不斷檢測接收狀態寄存器的接收完成標志,看接沒接收完。如果接收完了,就通過for循環將接收到的數據,全部發給串口的USART_DR寄存器(當向該寄存器寫數據時,串口就會自動發送)。于是我們通過PC機發給串口的數據就會被STM32通過串口發回來了,顯示在串口調試助手中。3、串口DMA發送流程(博主用的是戰艦STM32庫函數)戰艦實驗:通過按鍵KEY0來控制DMA發送,每按一次KEY0,DMA就傳送一次數據到USART1,然后在TFTLCD模塊上顯示進度信息。這個現在理解就不難了吧。。。來,博主給讀者屢一下思路→_→從主函數入手!首先我們在STM32的SRAM中開辟一段5200(這個數字越大DMA傳輸越慢,反之越快)字節的空間SendBuff[],作為我們的存儲器(內存),存儲要往外設(USART1)發送的數據。然后我們在SendBuff[]中寫滿TEXT_TO_SEND[]里的內容。這里戰艦往SendBuff[]里寫的算法非常巧妙,應該學習;(讀者有興趣可以自己上網上搜索戰艦STM32第26章實驗--DMA實驗)現在SendBuff[]中已經存滿了要發送給串口的數據。這時我們還要檢測KEY0有沒有按下,如果按下了,就通過兩個函數:1、使能串口發送(在STM32庫函數stm32f10x_usart.c中,配置USART_CR3中的DMA使能位DMAT);2、使能DMA1通道4,啟動傳輸(在dam.c中,最后也是調用了stm32f10x_dma.c中的DMA_Cmd();函數來使能通道)。加上之前(本文沒有)對DMA參數的初始化(初始化存儲器和外設基地址等),就可以啟動一次傳輸了。如果讀者對傳輸時間感興趣或有疑問,博主給大家點一下,非常簡單的計算。傳輸時間將跟波特率密切相關。比如波特率是9600,意思就是每秒鐘發送或接受的速率為9600bit/s,8bit=1Byte(字節),故當波特率為9600時,串口的傳輸速率為1200字節每秒。上文我們申請的存儲器(內存)空間是5200字節,故串口要傳輸完這個大小的空間內容內容,預計需要5200/1200約4秒多。。。這個很簡單啊!講到這里,不知道讀者聽沒聽懂,反正我表述的不是很清楚→_→讀者可以調試代碼,觀察現象。作者:后起(mbbeetchina)
下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1PC2570低Iq 理想二極管控制芯片中文資料
  2. 1.56 MB   |  13次下載  |  免費
  3. 2PC2557正向高壓理想二極管控制電路中文資料
  4. 1.84 MB   |  11次下載  |  免費
  5. 3PC2559 帶反向輸入保護理想二極管控制電路中文資料
  6. 1.11 MB   |  11次下載  |  免費
  7. 4FS8023 USB的PD和QC快充協議電壓誘騙控制器中文手冊
  8. 2.61 MB   |  3次下載  |  免費
  9. 5AG32VH 系列應用指南
  10. 0.60 MB   |  1次下載  |  免費
  11. 6AD庫封裝庫安裝教程
  12. 0.49 MB   |  1次下載  |  免費
  13. 7PC6206 300mA低功耗低壓差線性穩壓器中文資料
  14. 1.12 MB   |  1次下載  |  免費
  15. 8網絡安全從業者入門指南
  16. 2.91 MB   |  1次下載  |  免費

本月

  1. 1貼片三極管上的印字與真實名稱的對照表詳細說明
  2. 0.50 MB   |  103次下載  |  1 積分
  3. 2涂鴉各WiFi模塊原理圖加PCB封裝
  4. 11.75 MB   |  89次下載  |  1 積分
  5. 3錦銳科技CA51F2 SDK開發包
  6. 24.06 MB   |  43次下載  |  1 積分
  7. 4錦銳CA51F005 SDK開發包
  8. 19.47 MB   |  19次下載  |  1 積分
  9. 5PCB的EMC設計指南
  10. 2.47 MB   |  16次下載  |  1 積分
  11. 6HC05藍牙原理圖加PCB
  12. 15.76 MB   |  13次下載  |  1 積分
  13. 7PC2570低Iq 理想二極管控制芯片中文資料
  14. 1.56 MB   |  13次下載  |  免費
  15. 8802.11_Wireless_Networks
  16. 4.17 MB   |  12次下載  |  免費

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935127次下載  |  10 積分
  3. 2開源硬件-PMP21529.1-4 開關降壓/升壓雙向直流/直流轉換器 PCB layout 設計
  4. 1.48MB  |  420064次下載  |  10 積分
  5. 3Altium DXP2002下載入口
  6. 未知  |  233089次下載  |  10 積分
  7. 4電路仿真軟件multisim 10.0免費下載
  8. 340992  |  191390次下載  |  10 積分
  9. 5十天學會AVR單片機與C語言視頻教程 下載
  10. 158M  |  183342次下載  |  10 積分
  11. 6labview8.5下載
  12. 未知  |  81588次下載  |  10 積分
  13. 7Keil工具MDK-Arm免費下載
  14. 0.02 MB  |  73815次下載  |  10 積分
  15. 8LabVIEW 8.6下載
  16. 未知  |  65989次下載  |  10 積分
主站蜘蛛池模板: 色老头影视| 热久久这里只有精品 | 欧美精品videosex极品 | 国产三级日产三级韩国三级 | 在线看逼| 一区二区不卡免费视频 | 国产精品一一在线观看 | 婷婷丁香在线观看 | 天天射天天做 | 中文字幕一区二区在线观看 | 亚洲午夜在线视频 | 操操操综合| 色婷婷一区二区三区四区成人网 | 在线观看日本免费视频大片一区 | 香蕉色网 | 天堂中文网 | 国产精品a在线观看香蕉 | www亚洲成人 | 午夜美女久久久久爽久久 | 国产精品久久久久天天影视 | 欧美午夜网站 | 人与禽交免费网站视频 | 午夜在线亚洲男人午在线 | 黄网站在线观看永久免费 | 永久免费人成网ww555kkk手机 | 色一欲一性一乱一区二区三区 | 欧美日韩高清一本大道免费 | 91视频免费网站 | se94se欧美 | 超人碰碰碰人人成碰人 | 永久精品免费影院在线观看网站 | 国产精品资源手机在线播放 | caoporn成人免费公开 | 国产区精品高清在线观看 | 网站色| 天天靠天天擦天天摸 | 久久综合图片 | 午夜色在线 | 激情五月综合综合久久69 | 特黄特黄| 亚洲欧美在线精品一区二区 |