久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 7182|回復: 6
打印 上一主題 下一主題
收起左側

STM32F407定時器觸發ADC采樣并通過DMA傳輸的源程序

  [復制鏈接]
跳轉到指定樓層
樓主
ID:588281 發表于 2019-7-22 17:30 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
這是我使用標準庫寫的,通過定時器觸發ADC采樣,然后通過DMA進行傳輸的例程。例程已在STM32F407上驗證通過

單片機源程序如下:
  1. /*需要按下復位鍵才能正常打印數據,原因不明
  2. 定時器1s觸發一次ADC轉換,然后通過DMA將ADC轉換的數據搬運到內存中,然后在dma中斷中判斷搬運是否完成,在main
  3. 的循環中不斷讀取轉換的值-----取采樣數據的平均值的代碼可以參考原子的
  4. 要注意的是,這里采用的是定時器1通道1上升沿觸發,而數據有8個,若每1s觸發一次,則需要每8s才能顯示一次轉換的數據,因此將定時器觸發時間改為了1/8s*/
  5. //#include "stm32f4xx.h"
  6. #include "usart_printf.h"
  7. #include "bsp_systick.h"
  8. #include "bsp_led.h"
  9. #include "ADC.h"
  10. #include "DMA.h"
  11. #include "Timer.h"
  12. RCC_ClocksTypeDef get_rcc_clock;
  13. __IO uint16_t ADC_RegularConvertedValueTab[8] = {0};

  14. //這里可以使用兩種定時器觸發模式,一種是TIM2 CH2對應PA1,一種是TIM_CH1對應PA8
  15. u8 flag=0;
  16. /*軟件復位*/
  17. //void mcuRestart(void)
  18. //{
  19. //__set_FAULTMASK(1); //關閉所有中斷
  20. //NVIC_SystemReset(); //復位
  21. //}

  22. int main(void)
  23. {
  24. //        mcuRestart();
  25.         usart_Init ();
  26.         delay_init();                     //延時函數初始化
  27.         NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);
  28.         TIM1_PWM_Init();
  29.   ADC_Configuration();
  30.         DMA2_Init();
  31.         printf("這是一個測試\r\n");
  32.         RCC_GetClocksFreq(&get_rcc_clock);
  33.   while (1)
  34.   {
  35.                 if(flag)
  36.                  {
  37.                          flag=0;
  38.                                          for(int i=0;i<8;i++)
  39.                                         {
  40.                                                 printf("%d ",ADC_RegularConvertedValueTab[i]);                        
  41.                                         }

  42.                  }
  43.   }
  44. }
復制代碼

所有資料51hei提供下載:
TIM+ADC+DMA實驗.7z (592.7 KB, 下載次數: 330)


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏5 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:588726 發表于 2019-7-23 15:29 | 只看該作者
沒有資源下載!
回復

使用道具 舉報

板凳
ID:376348 發表于 2019-8-7 15:31 | 只看該作者
請問樓主,我把定時器觸發AD改成1us觸發一次為什么就傳輸不了數據了??
回復

使用道具 舉報

地板
ID:609954 發表于 2019-12-13 12:08 | 只看該作者
AD采集精度如何呢
回復

使用道具 舉報

5#
ID:359762 發表于 2020-1-19 12:52 | 只看該作者
下載來看看。。希望有用
回復

使用道具 舉報

6#
ID:783744 發表于 2020-6-19 02:47 | 只看該作者
下載看看
回復

使用道具 舉報

7#
ID:591382 發表于 2020-8-17 18:36 | 只看該作者
STM32F407中的AD采樣模塊、DMA模塊,我這幾天都有在學,今天參考了這個程序代碼,確實很有用。希望自己能堅持學習下去。
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 免费看a | 亚洲精品亚洲人成人网 | 久久久久久久久99精品 | 久久日韩粉嫩一区二区三区 | 久久久www成人免费精品张筱雨 | 免费黄色特级片 | www.av在线| 九九在线视频 | 欧美一级全黄 | 久久伊人免费视频 | 亚洲精品一区二区三区中文字幕 | 在线免费国产视频 | 日韩一区二区三区av | 久久综合一区 | 久久精品视频一区二区 | 国产在线1 | 欧美白人做受xxxx视频 | 在线毛片网 | 91精品国产一区 | 久久亚洲国产精品 | 一区二区三区国产好的精 | 欧美不卡一区 | 狼人伊人影院 | 欧美激情精品久久久久久 | 欧美一区二区综合 | 欧美成人精品一区二区男人看 | 国产1区2区3区 | 色综合天天天天做夜夜夜夜做 | 在线视频国产一区 | 嫩草91在线| 成人依人 | 亚洲午夜视频在线观看 | 日本一区二区电影 | 干一干操一操 | 国产乱码精品一区二区三区忘忧草 | 欧美激情欧美激情在线五月 | 瑞克和莫蒂第五季在线观看 | 久久久精品网 | 日本色婷婷 | 免费久久精品 | 日韩av一区二区在线观看 |