乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      關(guān)于esp32的ADC采集

       iamlijin 2019-08-07

      對于ADC采集

      程序源碼如下:

      復(fù)制代碼
       1 /* ADC1 Example
       2 
       3    This example code is in the Public Domain (or CC0 licensed, at your option.)
       4 
       5    Unless required by applicable law or agreed to in writing, this
       6    software is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
       7    CONDITIONS OF ANY KIND, either express or implied.
       8 */
       9 #include <stdio.h>
      10 #include <string.h>
      11 #include <stdlib.h>
      12 #include "freertos/FreeRTOS.h"
      13 #include "freertos/task.h"
      14 #include "freertos/queue.h"
      15 #include "driver/gpio.h"
      16 #include "driver/adc.h"
      17 
      18 #define ADC1_TEST_CHANNEL (4)
      19 
      20 void adc1task(void* arg)
      21 {
      22     // initialize ADC
      23     adc1_config_width(ADC_WIDTH_12Bit);
      24     adc1_config_channel_atten(ADC1_TEST_CHANNEL,ADC_ATTEN_11db);
      25     while(1){
      26         printf("The adc1 value:%d\n",adc1_get_voltage(ADC1_TEST_CHANNEL));
      27         vTaskDelay(1000/portTICK_PERIOD_MS);
      28     }
      29 }
      30 
      31 void app_main()
      32 {
      33     xTaskCreate(adc1task, "adc1task", 1024*3, NULL, 10, NULL);
      34 }
      復(fù)制代碼

        ESP32集成了兩個12位SAR(“逐次逼近寄存器”)ADC(模數(shù)轉(zhuǎn)換器),并支持18通道(模擬使能引腳)的測量。這些引腳中的一些可用于構(gòu)建用于測量小型模擬信號的可編程增益放大器。

      ADC驅(qū)動程序API目前僅支持ADC1(9個通道,連接到GPIO 32-39)。

        進行ADC讀取需要以所需的精度和注意事項設(shè)置ADC,然后調(diào)用adc1_get_voltage()來讀取通道。

      本例程選用adc1task對adc進行初始化設(shè)置

          (1)adc1_config_width(),設(shè)定捕獲寬度,其中ADC_WIDTH_12Bit表示捕獲寬度位數(shù),esp32有四種捕獲寬度,分別為9bit,10bit,11bit和12bit。

       

          (2)adc1_config_channel_atten(),設(shè)定捕獲通道,其中ADC1_TEST_CHANNEL為配置的通道,ADC_ATTEN_11db為設(shè)定衰減比(即滿量程的電壓,11db是滿量程時電壓為3.9V,其他衰減比看API手冊)。
         ?。?)adc1_get_voltage()用來讀取在單個通道上的ADC讀數(shù)。
      最后在主函數(shù)中對adctask進行調(diào)用即可。

      程序源碼如下;

         燒寫程序后,將GPIO32連接到一個可以改變的電壓輸出口,打開minicom,觀察電壓輸出值,調(diào)節(jié)電壓,觀察輸出值變化。

      硬件連接如下

       

       minicom輸出如下圖所示

       

       

       

      相關(guān)知識:AD轉(zhuǎn)換相關(guān)函數(shù)API接口

       

       

       

       

        本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
        轉(zhuǎn)藏 分享 獻花(0

        0條評論

        發(fā)表

        請遵守用戶 評論公約

        類似文章 更多