娇小w搡bbbb搡bbb,《第一次の人妻》,中国成熟妇女毛茸茸,边啃奶头边躁狠狠躁视频免费观看

使用兩路PA.1 (ADC Channel 1) 和 PA.4 (ADC Channel 4),配置方式如代碼所示。使用的芯片是STM32F030C8。


需定義兩個變量

static __IO uint16_t RegularConvertedAdcValue[ADC_CHANNEL_NUM];     // ADC1轉換的電壓值通過MDA方式傳到flash

static float AdcValueConvertToVoltage;             // 局部變量,用于存從flash讀到的電壓值


然后上電初始化時調用

void ADCD_Init(void)

{

    GPIO_Config();

    DMA_Config();

    ADC_Config();

}


通過以下方式可以打印看到AD值和電壓轉換值。


    printf("ADC Value[0] = %d rn", RegularConvertedAdcValue[0]);

    AdcValueConvertToVoltage = (((float)RegularConvertedAdcValue[0] / 4096) * 3.3);  /* 2^12 = 4096, Vref = 3.3V */

    printf("  Voltage[0] = %2.2f Vrn", AdcValueConvertToVoltage);


    printf("ADC Value[1] = %d rn", RegularConvertedAdcValue[1]);

    AdcValueConvertToVoltage = (((float)RegularConvertedAdcValue[1] / 4096) * 3.3);  /* 2^12 = 4096, Vref = 3.3V */

    printf("  Voltage[1] = %2.2f Vrn", AdcValueConvertToVoltage);


    printf("ADC Value[2] = %d rn", RegularConvertedAdcValue[2]);

    AdcValueConvertToVoltage = (((float)RegularConvertedAdcValue[2] / 4096) * 3.3);  /* 2^12 = 4096, Vref = 3.3V */

    printf("  Voltage[2] = %2.2f Vrn", AdcValueConvertToVoltage);


以下是初始化代碼,供參考。

static void GPIO_Config(void)

{

    GPIO_InitTypeDef GPIO_InitStructure;


    /* Enable the GPIOA Clock */

    RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOA, ENABLE);


    /* Configure PA.1 (ADC Channel1) & PA.4 (ADC Channel4) in analog mode */

    GPIO_InitStructure.GPIO_Pin  = GPIO_Pin_1 | GPIO_Pin_4;

    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AN;

    GPIO_InitStructure.GPIO_Speed= GPIO_Speed_50MHz;

    GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL;

    GPIO_Init(GPIOA, &GPIO_InitStructure);

}


static void DMA_Config(void)

{

    DMA_InitTypeDef DMA_InitStructure;


    /* Enable DMA1 clock */

    RCC_AHBPeriphClockCmd(RCC_AHBPeriph_DMA1, ENABLE);

    //DMA1通道1配置

    DMA_DeInit(DMA1_Channel1);

    //外設地址

    DMA_InitStructure.DMA_PeripheralBaseAddr = ADC1_DR_ADDRESS;

    //內存地址

    DMA_InitStructure.DMA_MemoryBaseAddr = (uint32_t)&RegularConvertedAdcValue;

    //DMA傳輸方向單向

    DMA_InitStructure.DMA_DIR = DMA_DIR_PeripheralSRC;

    //設置DMA在傳輸時緩沖區的長度

    DMA_InitStructure.DMA_BufferSize = 2;

    //設置DMA的外設遞增模式,一個外設

    DMA_InitStructure.DMA_PeripheralInc = DMA_PeripheralInc_Disable;

    //設置DMA的內存遞增模式

    DMA_InitStructure.DMA_MemoryInc = DMA_MemoryInc_Enable;

    //外設數據字長

    DMA_InitStructure.DMA_PeripheralDataSize = DMA_PeripheralDataSize_HalfWord;

    //內存數據字長

    DMA_InitStructure.DMA_MemoryDataSize = DMA_MemoryDataSize_HalfWord;

    //設置DMA的傳輸模式:連續不斷的循環模式

    DMA_InitStructure.DMA_Mode = DMA_Mode_Circular;

    //設置DMA的優先級別

    DMA_InitStructure.DMA_Priority = DMA_Priority_High;

    //設置DMA的2個memory中的變量互相訪問

    DMA_InitStructure.DMA_M2M = DMA_M2M_Disable;


    DMA_Init(DMA1_Channel1, &DMA_InitStructure);


    /* Enable DMA1 Channel1 */

    DMA_Cmd(DMA1_Channel1, ENABLE);

}


static void ADC_Config(void)

{

    ADC_InitTypeDef  ADC_InitStructure;


    /* ADC1 DeInit */

    ADC_DeInit(ADC1);


    /* Load ADC default value */

    ADC_StructInit(&ADC_InitStructure);


    /* Enable ADC1 clock */

    RCC_APB2PeriphClockCmd(RCC_APB2Periph_ADC1, ENABLE);


    //轉換分辨率

    ADC_InitStructure.ADC_Resolution = ADC_Resolution_12b;

    //連續轉換

    ADC_InitStructure.ADC_ContinuousConvMode = ENABLE;

    //外部觸發禁止

    ADC_InitStructure.ADC_ExternalTrigConvEdge = ADC_ExternalTrigConvEdge_None;

    //ADC_InitStructure.ADC_ExternalTrigConv = ADC_ExternalTrigConv_T1_TRGO;

    //數據右對齊

    ADC_InitStructure.ADC_DataAlign = ADC_DataAlign_Right;

    //掃描方向

    ADC_InitStructure.ADC_ScanDirection = ADC_ScanDirection_Upward;


    ADC_Init(ADC1, &ADC_InitStructure);


    /* ADC1 regular channel1 configuration */

    ADC_ChannelConfig(ADC1, ADC_Channel_1, ADC_SampleTime_55_5Cycles);

    ADC_ChannelConfig(ADC1, ADC_Channel_4, ADC_SampleTime_55_5Cycles);


    /* ADC Calibration */

    ADC_GetCalibrationFactor(ADC1);


    /* ADC DMA request in Circular mode */

    ADC_DMARequestModeConfig(ADC1, ADC_DMAMode_Circular);


    /* Enable ADC DMA request */

    ADC_DMACmd(ADC1, ENABLE);


    /* Enable ADC1 */

    ADC_Cmd(ADC1, ENABLE);


    /* Wait until the ADC enable falg is set to start conversion */

    while(!ADC_GetFlagStatus(ADC1, ADC_FLAG_ADEN));


    /* Start ADC1 Software Conversion */

    ADC_StartOfConversion(ADC1);

}

關鍵字:STM32F0  兩路AD  配置參考 引用地址:STM32F0兩路AD配置參考

上一篇:利用ST MCU內部基準參考電壓監測電源電壓及其它
下一篇:STM8開發記錄二:UART RX空閑中斷和DMA操作

推薦閱讀

據研調機構顯示,智能音箱在未來二到三年內,平均年成長率可達到三成的高度成長,預料2020年全球智能音箱出貨量將超過1億臺,市場規模達130億美元,是繼智能機后,下個市場規模有機會挑戰上億臺的產品,無論是產量或產值,均為兵家必爭之地,商機驚人。目前市場以蘋果的HomePod、亞馬遜的Echo Dot、Google Home三強鼎立,分食全球超過一半智能音箱市場;...
聊天機器人最初是為了以色列微軟公司實驗室的一項黑客馬拉松項目——讓病人更容易找到可能提供其他藥物和治療方法的臨床試驗。臨床試驗機器人可以讓患者和醫生搜索與疾病相關的研究,然后回答一系列文本問題。然后,機器人會建議最符合患者需求的試驗鏈接。制藥商也可以用它來尋找測試對象。微軟不會將機器人作為自己的產品發布。相反,微軟醫療保健以色列...
有數十位特斯拉車主發現自己買的國產 Model 3 整車控制器代碼與環保信息隨車清單標注上存在不一致的情況。 他們向 3·15 平臺提起維權訴訟,以“欺詐消費者”為由向特斯拉上海公司索賠。車主投訴稱,自己的國產 Model 3 搭載的是 HW2.5(自動駕駛硬件 2.5),而非隨車環保清單上標注的 HW3.0(自動駕駛硬件 3.0)。 “已交付的國產 Model 3 ...
引言CortexM0/M0+是RISC類型的低端ARM內核,其指令集與高端ARM兼容,在性能、功耗和價格方面遠優于傳統的以8051、68S08/12等為代表的8/16位CISC(復雜指令流)CPU。目前,各半導體廠商紛紛以之替代原有的8/16位MCU內核,32位ARM MCU全面替代8/16位MCU已是大勢所趨。CortexM0+將CortexM0的3級流水線簡化為2級,并進一步降低功耗、提高性能,這些優點使得Co...

史海拾趣

問答坊 | AI 解惑

很多人都抱怨工作,難道換個工作就比這個好么

很多人都抱怨工作,也包括我。難道換個工作就比這個好么?…

查看全部問答∨

DirectFB旋轉有問題?

請問一下有沒有熟悉DirectFB的? 比如我的程序如下(豎屏程序) (0,0) ------- |     | |     | |     | |     | -------  (240*320) ...…

查看全部問答∨

維視工業攝像頭,1394工業CCD攝像頭,1394接口CCD工業相機

維視工業攝像頭,1394工業CCD攝像頭,1394接口CCD工業相機 作者:維視圖像   來自:http://www.xamv.com   http://www.micovision.com.cn 【1394接口工業攝像頭簡介】 MV-VS 1394接口CCD工業攝像頭。該系列工業相機采用幀曝光CCD ...…

查看全部問答∨

關于RAMIMAGE和ROMIMAGE

NK    8C100000  01EB0000  RAMIMAGE ROMSTART=8C100000 RAMIMAGE和ROMSTART在虛擬地址上是重合的,知道這樣是對的。但不知道為什么?求教…

查看全部問答∨

單片機tcp/ip問題

我現在做個程序,從計算機上的1000端口發送數據過來,但在單片機上接收到上位機來的命令字,不知道怎么發送單片機上的數據到上位機,哪位大蝦指點一下…

查看全部問答∨

【LED術語】GaN(gallium nitride)

   由鎵(Ga)和氮(N)構成的化合物半導體。帶隙為3.45eV(用光的波長表示相當于約365nm),比硅(Si)要寬3倍。利用該特性,GaN主要應用于光元件。通過混合銦(In)和鋁(Al)調整帶隙,所獲得的LED和藍紫色半導體激光器等發光元件已經實 ...…

查看全部問答∨

波形檢測

         我想設計一個用MSP430控制的波形檢測電路,需要20-30路(可切換的)送到示波器。要用什么型號的模擬開關呢?哪位大俠能指點一下,將萬分感激!…

查看全部問答∨

大型美資IC公司招聘Analog IC Design Engineers

如題:   大型美資IC公司招聘Analog IC Design Engineers   Location: Beijing or Shanghai   ·          Responsibilities: 1.    Analog IC circuit design; si ...…

查看全部問答∨

嵌入式 linux 構建郵件服務器

求高手指點一下,我想在我的linux上面添加一個郵件服務。這個服務器不要太大的,只要可以實現往固定郵件地址發送設備狀態就行。有沒有那種嵌入式方面用的郵件服務器呢,, 謝謝各位大大 …

查看全部問答∨

Cyclone V試用報告一 QuartusII使用

拿到板子已經有一段時間了,之間也陸陸續續的學習了一些板子資源,比較郁悶的是QuartusII 12.0軟件。期間玲瓏也很關心學習進度,心里甚是過意不去,寫寫對開發環境的一些感受,和大伙交流交流。      板子上有集成的板載USB B ...…

查看全部問答∨
小廣播
設計資源 培訓 開發板 精華推薦

最新單片機文章
何立民專欄 單片機及嵌入式寶典

北京航空航天大學教授,20余年來致力于單片機與嵌入式系統推廣工作。

 
EEWorld訂閱號

 
EEWorld服務號

 
汽車開發圈

 
機器人開發圈

電子工程世界版權所有 京ICP證060456號 京ICP備10001474號-1 電信業務審批[2006]字第258號函 京公網安備 11010802033920號 Copyright ? 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
主站蜘蛛池模板: 邵武市| 华池县| 平乡县| 乌鲁木齐市| 石棉县| 大悟县| 青龙| 广南县| 图木舒克市| 孟州市| 沾益县| 宜城市| 辰溪县| 临邑县| 大余县| 团风县| 奈曼旗| 沈丘县| 凌云县| 平远县| 淳安县| 西充县| 杂多县| 五河县| 平凉市| 晋州市| 平乡县| 基隆市| 楚雄市| 新平| 台南市| 拜城县| 温州市| 自治县| 克拉玛依市| 门源| 革吉县| 卓尼县| 金堂县| 东乌珠穆沁旗| 涞源县|