找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2210|回復(fù): 0
收起左側(cè)

STM32四通道ADC+DMA傳輸源碼

[復(fù)制鏈接]
ID:288575 發(fā)表于 2018-5-27 17:30 | 顯示全部樓層 |閱讀模式
由于STM32F1的DMA1中只有ADC1,所以利用ADC1的掃描模式進行開4個通道進行DMA的ADC采值。

單片機源程序如下:
  1. #include "delay.h"
  2. #include "sys.h"
  3. #include "usart.h"
  4. #include "lcd.h"
  5. #include "adc.h"
  6. #include "dma.h"

  7. #define ADC1_DR_Address    ((uint32_t)0x4001244C)
  8.   u16 AD_Value[6];   
  9.   float volta[6];
  10.   u8 i;
  11.   int main()
  12.   {
  13.           SystemInit();
  14.           delay_init(72);             //延時初始化
  15.         NVIC_Configuration();
  16.         uart_init(9600);
  17.         DMA_Config(DMA1_Channel1,(u32)ADC1_DR_Address,(u32)&AD_Value,6);//cndtr對應(yīng)所開信道個數(shù)
  18.           Adc_Init();
  19.           DMA_Cmd(DMA1_Channel1, ENABLE);      //啟動DMA通道
  20.     ADC_SoftwareStartConvCmd(ADC1, ENABLE);          //軟件啟動AD轉(zhuǎn)換
  21.                    while(1)
  22.    {
  23.                         for(i=0;i<6;i++)                        //循環(huán)6次轉(zhuǎn)換AD值
  24.                         {
  25.                         volta[i] =(float) AD_Value[i]/4095*3.3;
  26.                         }
  27.                       printf("AD1=%d\n",AD_Value[0]);        printf("\r\n volta1 = %f V \r\n",volta[0]);
  28.                         printf("AD2=%d\n",AD_Value[1]);        printf("\r\n volta2 = %f V \r\n",volta[1]);
  29.                         printf("AD3=%d\n",AD_Value[2]);        printf("\r\n volta3 = %f V \r\n",volta[2]);
  30.                         printf("AD4=%d\n",AD_Value[3]);        printf("\r\n volta4 = %f V \r\n",volta[3]);
  31.                         printf("AD5=%d\n",AD_Value[4]);        printf("\r\n volta5 = %f V \r\n",volta[4]);
  32.                         printf("AD6=%d\n",AD_Value[5]);        printf("\r\n volta6 = %f V \r\n",volta[5]);
  33.                           delay_ms(500);
  34.    }
  35.   }

復(fù)制代碼

所有資料51hei提供下載:
實驗24 四通道ADC (DMA傳輸).zip (353.93 KB, 下載次數(shù): 38)


回復(fù)

使用道具 舉報

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

本版積分規(guī)則

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

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表