#include <stdio.h>
#include "pico/stdlib.h"
#include "hardware/spi.h"
#include "hardware/adc.h"
#define NOISE_PIN 26
#define SPI_PORT spi0
#define SCK_PIN 18
#define SDI_PIN 19
#define CS_PIN 17
int main() {
stdio_init_all();
// while (true) {
// printf("Hello, Wokwi!\n");
// sleep_ms(250);
// }
adc_init();
adc_gpio_init(26);
adc_select_input(0);
spi_init(SPI_PORT, 500000);
gpio_set_function(SCK_PIN, GPIO_FUNC_SPI);
gpio_set_function(SDI_PIN, GPIO_FUNC_SPI);
gpio_init(CS_PIN);
gpio_set_dir(CS_PIN, GPIO_OUT);
gpio_put(CS_PIN, 1);
printf("Starting RP2040\n");
while (1) {
gpio_put(CS_PIN, 0);
const char msg[] = "Hello\n";
printf("Sending: %s", msg);
spi_write_blocking(SPI_PORT, (uint8_t*)msg, sizeof(msg) - 1);
gpio_put(CS_PIN, 1);
sleep_ms(500);
uint16_t noise = adc_read(); // use adc_read() not gpio_get() for analog pin
printf("Noise Level: %d\n", noise);
sleep_ms(500);
}
}