Hirdetés
-
PROHARDVER!
Arduino hardverrel és szoftverrel foglakozó téma. Minden mikrovezérlő ami arduinoval programozható, és minden arduino program, board, és hardverrel kapcsolatos kérdések helye.
Új hozzászólás Aktív témák
-
Postas99
őstag
válasz
Wolfram
#23177
üzenetére
Hackster.io, nem emékszem hogy fizettem-e valaha is érte. Lehet csak regisztrációt igényel.
Bemásolom ide a kódot. De valamiért szétesik./* Audio streamer with ESP32 and Adafruit elected microphone board. * Created by Julian Schroeter. */ #include <Arduino.h> #include <WiFi.h> #include <driver/adc.h> #define AUDIO_BUFFER_MAX 800 uint8_t audioBuffer[AUDIO_BUFFER_MAX]; uint8_t transmitBuffer[AUDIO_BUFFER_MAX]; uint32_t bufferPointer = 0; const char* ssid = "YOUR SSID"; const char* password = "YOUR PASSWORD"; const char* host = "YOUR SERVER IP ADDRESS"; bool transmitNow = false; WiFiClient client; hw_timer_t * timer = NULL; // our timer portMUX_TYPE timerMux = portMUX_INITIALIZER_UNLOCKED; void IRAM_ATTR onTimer() { portENTER_CRITICAL_ISR(&timerMux); // says that we want to run critical code and don't want to be interrupted int adcVal = adc1_get_voltage(ADC1_CHANNEL_0); // reads the ADC uint8_t value = map(adcVal, 0 , 4096, 0, 255); // converts the value to 0..255 (8bit) audioBuffer[bufferPointer] = value; // stores the value bufferPointer++; if (bufferPointer == AUDIO_BUFFER_MAX) { // when the buffer is full bufferPointer = 0; memcpy(transmitBuffer, audioBuffer, AUDIO_BUFFER_MAX); // copy buffer into a second buffer transmitNow = true; // sets the value true so we know that we can transmit now } portEXIT_CRITICAL_ISR(&timerMux); // says that we have run our critical code } void setup() { Serial.begin(115200); WiFi.mode(WIFI_STA); WiFi.begin(ssid, password); while (WiFi.status() != WL_CONNECTED) { delay(500); Serial.print("."); } Serial.println(""); Serial.println("WiFi connected"); Serial.println("MY IP address: "); Serial.println(WiFi.localIP()); adc1_config_width(ADC_WIDTH_12Bit); // configure the analogue to digital converter adc1_config_channel_atten(ADC1_CHANNEL_0, ADC_ATTEN_0db); // connects the ADC 1 with channel 0 (GPIO 36) const int port = 4444; while (!client.connect(host, port)) { Serial.println("connection failed"); delay(1000); } Serial.println("connected to server"); timer = timerBegin(0, 80, true); // 80 Prescaler timerAttachInterrupt(timer, &onTimer, true); // binds the handling function to our timer timerAlarmWrite(timer, 125, true); timerAlarmEnable(timer); } void loop() { if (transmitNow) { // checks if the buffer is full transmitNow = false; client.write((const uint8_t *)audioBuffer, sizeof(audioBuffer)); // sending the buffer to our server }}
Új hozzászólás Aktív témák
- Arc Raiders
- Fejhallgató erősítő és DAC topik
- TCL LCD és LED TV-k
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- Vezetékes FEJhallgatók
- Steam Deck
- Óvodások homokozója
- Robotporszívók
- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- További aktív témák...
- HIBÁTLAN iPhone 15 Pro 128GB Blue Tianium -1 ÉV GARANCIA - Kártyafüggetlen, MS3909, 100% Akkumulátor
- HIBÁTLAN iPhone 13 mini 256GB Pink -1 ÉV GARANCIA - Kártyafüggetlen, MS3441, 92% Akkumulátor
- HIBÁTLAN iPhone 14 Pro Max 256GB Purple -1 ÉV GARANCIA -Kártyafüggetlen, MS3932, 100% Akkumulátor
- Apple iPhone 12 Pro Max 128GB, Kártyafüggetlen, 1 Év Garanciával
- 0% THM 4 havi részlet beszámítás! 5060Ti/5070/5070Ti/5080/5090 videokártyák készletről KAMATMENTESEN
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: NetGo.hu Kft.
Város: Gödöllő
ekkold

