#include <stdio.h>
#include "pico/stdlib.h"
#include "hardware/gpio.h"
#include "hardware/adc.h"
#include "hardware/pwm.h"
const int PWM_14_PIN = 14;
#define ADC_NUM2 2
#define ADC_PIN2 (26 + ADC_NUM2)
int main() {
gpio_set_function(PWM_14_PIN,GPIO_FUNC_PWM);
uint slice_num = pwm_gpio_to_slice_num(PWM_14_PIN);
pwm_set_clkdiv(slice_num,125);
pwm_set_wrap(slice_num,100);
pwm_set_chan_level(slice_num,PWM_CHAN_A,100);
pwm_set_enabled(slice_num,true);
stdio_init_all();
adc_init();
adc_gpio_init(ADC_PIN2);
uint adc_valor2;
while (true) {
adc_select_input(ADC_NUM2);
adc_valor2 = adc_read();
if(adc_valor2 <= 1000){
pwm_set_chan_level(slice_num, PWM_CHAN_A, 100);
pwm_set_enabled (slice_num, true);
printf("motor ligado: ");
printf("%d\n", adc_valor2);
sleep_ms(100);
}
if(adc_valor2 >= 3000){
pwm_set_chan_level(slice_num, PWM_CHAN_A, 0);
pwm_set_enabled (slice_num, true);
printf("motor desligado: ");
printf("%d\n", adc_valor2);
sleep_ms(100);
}
}
}