Advertisement
CHU2

ELEC 2 LAB 3

May 11th, 2025
94
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Arduino 0.89 KB | Source Code | 0 0
  1. #include <Arduino.h>
  2. #include "esp_sleep.h"
  3.  
  4. const int analog_pin = 34;      // ADC1_CH6 (GPIO34)
  5. const int led_pin    = 2;       // on-board LED
  6.  
  7. // #define sweep_mode
  8. // #define deep_sweep_mode
  9.  
  10. void setup() {
  11.   pinMode(led_pin, OUTPUT);
  12.   analogSetAttenuation(ADC_11db);         // ensure 0–3.3 V range
  13.   analogReadResolution(12);               // 12-bit (0–4095)
  14.   Serial.begin(115200);
  15. }
  16.  
  17. void loop() {
  18.   int raw = analogRead(analog_pin);       // 0–4095
  19.   float volts = raw * (3.3f / 4095.0f);    // map to 0–3.3 V
  20.   Serial.print("  V: "); Serial.println(volts, 3);
  21.  
  22.   digitalWrite(led_pin, !digitalRead(led_pin)); // blink LED
  23.  
  24.   #ifdef sweep_mode
  25.     esp_sleep_enable_timer_wakeup(1'000'000);
  26.     esp_light_sleep_start();
  27.   #elif defined(deep_sweep_mode)
  28.     esp_sleep_enable_timer_wakeup(2'000'000);
  29.     esp_deep_sleep_start();
  30.   #else
  31.     delay(1000);
  32.   #endif
  33. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement