-
Datei
Logo-lesen.ino
/* ============================================================ ESP32-WROOM Siemens LOGO! 8 FS4 ============================================================ LOGO! IP-Adresse: 192.168.0.99 LOGO! Variable: VW0 S7-Adresse: DB1.DBW0 Kommunikation: S7 / ISO-on-TCP TCP Port 102 Rack 0 Slot 2 ESP32: Asynchroner Webserver Automatische LOGO!-Wiederverbindung VW0 wird alle 500 ms gelesen ============================================================ BENÖTIGTE LIBRARIES ============================================================ Settimino AsyncTCP ESPAsyncWebServer =============================================
in „mit ESP32 LOGO 8 VM Block lesen“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
ArduinoISP.ino
// ArduinoISP // Copyright (c) 2008-2011 Randall Bohn // If you require a license, see // https://opensource.org/licenses/bsd-license.php // // Note that this sketch refers to the SPI bus pins using the legacy MISO/MOSI // names rather than the modern CIPO/COPI names. // For further details, see https://docs.arduino.cc/learn/communication/spi // // This sketch turns the Arduino into a AVRISP using the following Arduino pins: // // Pin 10 is used to reset the target microcontroller. // // By default, the hardware SPI pins MISO, MOSI and SCK are used to communicate // with the target. On all Arduinos
in „Problem beim Hochladen zum Arduino Nano“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
morse_esp32.ino
/* * ========================================================================== * Morse-Decoder / Morse-Geber für ESP32 mit SPI-TFT (ILI9341 / ST7735 / ST7789) * ========================================================================== * * Board : AZ-Delivery ESP32 DevKit V4 (ESP32-WROOM-32, ESP32-D0WD-V3, 4 MB Flash) * Display: 1,69" ST7789V2, 240x280 (Pins/Einstellungen aus PlatformIO-Projekt "Test ST7789") * Arduino-Board-Einstellung: "ESP32 Dev Module" (FQBN esp32:esp32:esp32) * * Funktionen * ---------- * DECODER : Morsetaste (Taster gegen GND) an GPIO 27. * - Entprellung in Software * -
in „Mit KI generierter CW-Decoder für ESP32“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
Poti_16_Stufen.ino
/* Die Spannung eines Potis wird mit 16 abgestuften Spanungswerten 0 -> VCC am PWM-Ausgang ausgegeben; dazu muß ein RC-Filter ergaenzt werden. Die Stellung des Potis muß zuvor ueber 80 ms stabil sein und wird mit einer Hysterese ausgewertet, damit der Ausgangswert nicht 'wackelt'. Verwendete Hardware: Arduino UNO mit ATmega328 http://www.mino-elektronik.de Alle Angaben ohne Gewaehr ! 2025-10-17 */ #include <avr/io.h> #include <avr/interrupt.h> #include <stdlib.h> #define BIT(x) (1<<x) #define F_CPU 16000000L // 16MHz ggf. an eff.Frequenz anpassen #define T1_VORTEILER 8 #define PRO_SEKUNDE 100 /
in „Ich möchte aus einer Spannung einen binärcode erzeugen“ · Analoge Elektronik und Schaltungstechnik ·
-
Datei
sketch_sep10a.ino
#include <SD.h> #include <Wire.h> #include <Adafruit_Sensor.h> #include <Adafruit_BME280.h> #include <TinyGPS++.h> // Pins definieren const int GPS_PPS_PIN = 2; // PPS-Signal vom GPS für Sekundentakt const int LICHTSCHRANKE_PIN = 3; // Signal von der Lichtschranke const int SD_CS_PIN = 10; // Chip Select für SD-Kartenleser // Speicher-Intervall für die Lichtschranke (jeder 1800. Impuls) const unsigned long SPEICHER_INTERVALL_IMPULSE = 1800; // Instanzen TinyGPSPlus gps; Adafruit_BME280 bme; // Volatile Variablen für die Interrupts volatile unsigned long ppsMicrosRef = 0; // Systemzeit der letzten GPS-Sekunde
in „Datenlogger Pendeluhr“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
sketch_oct23a.ino
#include <SPI.h> #include <SD.h> #include <Wire.h> #include <RTClib.h> #include <Adafruit_BME280.h> #include <TinyGPS++.h> // Pin-Konfiguration const int LIGHT_BARRIER_PIN = 2; const int RTC_SQW_PIN = 3; const int SD_CS_PIN = 10; // Sensor-, Uhr- und GPS-Objekte RTC_DS3231 rtc; Adafruit_BME280 bme; TinyGPSPlus gps; // Volatile Variablen für die Interrupts volatile unsigned long totalPulses = 0; volatile unsigned long ppsMicros = 0; volatile unsigned long currentRtcEpoch = 0; // Hilfsvariablen für die Datenübergabe aus dem Interrupt volatile unsigned long targetPulseNumber = 0; volatile unsigned
in „Datenlogger Pendeluhr“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
Messung_der_Spannung_eines_48V_LiFePO4-Akkus_an_seinen_Polklemmen.ino
/* Pseudocode Messung der Spannung eines 48V LiFePO4-Akkus an seinen Polklemmen mit ATmega328P und 16MHz CPU-Takt Spannungsteiler zur Messung der Batteriespannung: R1 = 100 kOhm, R2 = 1,8 kOhm, C2_block 100 nF ... 10µF zur Glättung Mit ADCref = 1,1V ergibt sich rechnerisch ein Spannungsmessbereich von 0 V ... 62,2 V. Das sollte mit einem guten Multimeter bei unbelastetem Akku kalibriert werden, bevor UBATTLOW_LIM berechnet wird. Wichtig: ein ADC-Wert = 1023 entspricht dann einer Spannung von rechnerisch 62,14 V und nicht 62,2 V! Berechnung von UBATTLOW_LIM (z.B. 45V): -> UBATTLOW_LIM = 45V * 1024
in „avr adc streuung ausgleichen“ · Mikrocontroller und Digitale Elektronik ·
-
Datei
Messung_der_Spannung_eines_48V_LiFePO4-Akkus_an_seinen_Polklemmen_v1.1.ino
/*********************** ATmega328P und 16MHz CPU-Takt *********************** V1.1 - Spannungshysterese zum Schalten des LEDPIN - Atomic Absicherung gegen Verfälschung von uint16_t adc_wert durch etwaige Unterbrechung (warum auch immer) während uint16_t Vergleich durch ISR(ADC_vect) - Ermittlung der ADC-Min-Max-Werte über eine volle 50 Hz Netzperiode - Entprellung der Schaltschwelle V1.0 Pseudocode Messung der Spannung eines 48V LiFePO4-Akkus an seinen Polklemmen mit ATmega328P und 16MHz CPU-Takt Spannungsteiler zur Messung der Batteriespannung: R1 = 100 kOhm, R2 = 1,8 kOhm, C2_block 100 nF ..
in „avr adc streuung ausgleichen“ · Mikrocontroller und Digitale Elektronik ·