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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

STM32 DMA方式完成AD、DA實例 模數轉換實驗(DMA滑動平均濾波)

[復制鏈接]
跳轉到指定樓層
樓主
ID:453172 發表于 2018-12-24 10:17 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
STM32的內部自帶12位ADC,其特點如下:
(1)12位分辨率,最短時鐘周期為14個,時鐘周期可調,分別可以調整為14、20、26、41、54、68、252,因此當時鐘為14MHz時候,最快轉換時間為1us;
(2)供電電壓為2.4V到3.6V,注意stm32的最低供電電壓可以是2V,但是使用ADC時候,必須達到2.4V以上;
(3)輸入電壓范圍:0<vin< VCC
(4)最小量化單位為:LSB=Vref+/4096mV;
(5)為逐次比較型AD;
處理AD轉換的方法有兩個:一個是常用的中斷,另一個是DMA,相對來說,DMA模式下的效率要高,所以這里研究DMA下的ADC。
3、實驗目標:通過ADC1的11通道采集外部電壓,然后又DMA傳送到緩存,然后通過串口發到到PC上。
4、實驗程序:


1. 配置ADC等資源
2. 配置時鐘
3. 參數配置
點“ADC1”?
Mode: 模式為獨立模式。
Dataalignment數據對齊:右對齊
ScanConversionMode:掃描轉換模式,如果使用了一個ADC下的多個采集通道,需要選擇Enable模式,否則只會轉換設置的第一個通道。
ContinuousConversMode連續轉換模式
DiscontinuousConversionMode:不連續轉換模式
NVIC部分開啟DMA中斷,關閉中斷模式的中斷使能。
Memory:勾選此項,轉換數據將存在Memory中,并且地址自加連續存放。此功能對某個通道連續多次采樣很好用,采樣數據會自動填滿一個數組,方便軟件濾波。
Mode:選循環模式,填滿數組后自動從頭刷新。
DataWidth數據長度:如果是12位AD轉換,此處選半字。

4.程序實現
在STM32CubeMX生成好的程序基礎上。
在main設置一個uhADCxConvertedValue2的全局變量數組。類型為Uint16_t。
在main函數的初始化區后,while(1)區前,添加:
if(HAL_ADC_Start_DMA(&hadc1,(uint32_t*)&uhADCxConvertedValue2,100)!=HAL_OK)Error_Handler();
ADC1啟動,并開始連續轉換,轉換結果會放在uhADCxConvertedValue2數組中,大小是100。因為是連續轉換,所以數組中存放的是最近100次轉換結果。

5軟件濾波
濾波子函數:可以計算100個點的濾波結果。
此函數為中值平均滑動濾波,當然,滑動是ADC的DMA自動實現的。
  1. uint16_t ADC_Average(__IOuint16_t*buff,uint16_tnum,uint16_tthreshold)
  2. {
  3. uint32_tsigma=0;
  4. uint16_ti=0,j=0,temp=0;
  5. uint16_ttemp_buff[num];
  6. for(i=0;i<(num-1);i++)
  7.                {
  8. for(j=0;j<(num-1);j++)
  9. {
  10. if(temp_buff[j]<temp_buff[j+1])
  11. {
  12. temp=temp_buff[j];
  13. temp_buff[j]=temp_buff[j+1];
  14. temp_buff[j+1]=temp;
  15. }
  16. }
  17. }
  18. for(i=threshold;i<(num-threshold);i++){
  19. sigma=sigma+buff[i];
  20. }
  21. temp=(uint16_t)(sigma/(num-threshold*2));return(temp);
  22. }
復制代碼

完整的Word格式文檔51黑下載地址:
實驗8、模數轉換實驗(DMA 滑動平均濾波).doc (331.5 KB, 下載次數: 44)


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

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 精品国产乱码久久久久久果冻传媒 | 亚洲永久精品国产 | 91中文字幕在线观看 | 午夜欧美一区二区三区在线播放 | 亚洲欧美日韩在线不卡 | 蜜桃一区| 97av视频在线 | 午夜视频一区二区三区 | 日本精品裸体写真集在线观看 | 日韩成人精品在线观看 | 一级黄色影片在线观看 | 国产精品7777777 | 在线视频亚洲 | 亚洲欧美激情四射 | 一级免费看片 | 亚洲免费av一区 | 99热国产免费 | 亚洲 中文 欧美 日韩 在线观看 | 精品久久久久久久久久久久久久 | 中文字幕在线免费视频 | 日韩激情视频一区 | 亚洲一区二区三区在线 | 91久久久久久久久久久久久 | 综合一区二区三区 | 中文在线一区二区 | 亚洲精品日本 | 精品久久久久一区二区国产 | 亚洲欧洲日韩精品 中文字幕 | 国产区精品 | 国产夜恋视频在线观看 | 久久成人免费视频 | 中文字幕在线不卡 | 神马影院一区二区三区 | 国产激情一区二区三区 | 黄色片在线观看网址 | 国产一区二区三区四区在线观看 | 亚洲视频一区二区三区 | 午夜视频一区 | 91精品久久久久久久久 | 在线三级电影 | 成人日韩av |