Die Pinbelegung des beelogger mit dem STM32F… Microcontroller ist im Layout an einige Randbedingungen gebunden.
– Port PA0: Wake-Up-Pin des STM32F…
– Port PA2/PA3: Serial 2, für ESP8266/SIM7600E
– Port PA 4,5,6,7: SPI-Schnittstelle LORA-Modul / SD-Karte
– Port PA9/PA10: Serial 1, wird für die Progammierung genutzt
– Port PA11/12: Serial6 – USB-Schnittstelle
– Port PB6/PB7: I2C-Bus 1, EE-Prom / Sensoren
– Port PC13: On-Board LED
– Port PC14/PC15: 32kHz Generator, um externe Beeinflussungen zu vermeiden, sollen diese Pins nicht mit Stiften versehen/verlötet werden.
beelogger spezifische Verwendung von Pins:
– Port PA1: analog Input Audio
– Port PA8: OneWire, DS18B20
– Port PB0: Akkuspannung
– Port PB1: Solarzellenspannung
– Port PB4: Power On
– Port PB5: SIM-Modul power on
– Port PB8/PB9: HX711 Nr. 1
– Port PB2/PB10 (Blackpill): I2C-Bus 2, Pins werden für HX711 Nr. 2 verwendet
– Port PB12/PB13: DHT
– Port PA 15: Bluepill Niederschlagmesser
Sonstige Informationen:
Der USB-Stecker wird beim beelogger nicht verwendet, weil dessen Nutzung einen zusätzlichen Bootloader benötigt.
Dieser Bootloader stört den Ablauf im DeepSleep, den die beelogger-Firmware für die Schlaf-Funktion und Zeitsteuerung nutzt.
Der beelogger-Blue kann auch über den ST-Link Anschluß programmiert werden. Hierzu muss die passende Einstellung in der Arduino-IDE gewählt werden.
Pin-Belegung für die beelogger-Blue Sketche:
//################################################################
// STM32 Pins
//################################################################
//********
// Port PA
//********
//----------------------------------------------------------------
// WakeUp
//----------------------------------------------------------------
#define WakeUp_Pin PA0 // STM32 Shutdown Wakeup Pin
//----------------------------------------------------------------
//#define unused_PA1 // analog Input
// Serielle Schnittstelle Nr.2 Serial2
#define SER2_TX PA2 // Serial 2
#define SER2_RX PA3 // Serial 2
// SPI Schnittstelle
//#define SPI_PA4 // SS
//#define SPI_PA5 // SCK
//#define SPI_PA6 // MISO
//#define SPI_PA7 // MOSI
//----------------------------------------------------------------
// Konfiguration One-Wire-Bus für DS18B20
//----------------------------------------------------------------
#define ONE_WIRE_BUS PA8
//----------------------------------------------------------------
//----------------------------------------------------------------
// Serielle Schnittstelle #1 Serial / Serial 1
//----------------------------------------------------------------
#define SER_TX PA9 // Pin TX / USB-Serial
#define SER_RX PA10 // Pin RX / USB-Serial
//----------------------------------------------------------------
//#define unused_PA11 // USB
//#define unused_PA12 // USB
//#define unused_PA13 // not available
//#define unused_PA14 // not available
//#define RainInterrupt_Pin PA15 // Regensensor
//********
// Port PB
//********
//----------------------------------------------------------------
// Pins Spannungen messen
//----------------------------------------------------------------
#define Batterie_messen PB0
#define Solarzelle_messen PB1
//----------------------------------------------------------------
//#define PB2 // Boot1 Jumper
//#define unused_PB3 //
//----------------------------------------------------------------
// Konfiguration ESP / SIM7600E
//----------------------------------------------------------------
// Reset ESP8266
#define ESP_RESET PB4
// Power SIM7600E
#define GSM_Power_Pin PB4
//----------------------------------------------------------------
//----------------------------------------------------------------
// Power on/off
//---------------------------------------------------------------
#define Power_Pin PB5
//----------------------------------------------------------------
//----------------------------------------------------------------
// I2C
//----------------------------------------------------------------
//#define SCL PB6 // I2C Clock
//#define SDA PB7 // I2C Data
//----------------------------------------------------------------
//----------------------------------------------------------------
// Konfiguration HX711 SCK /Data
//----------------------------------------------------------------
uint8_t HX711_DT[3] = {PB8, PB11}; // HX711 Nr.1: A,B; HX711 Nr.2: A,B Data
uint8_t HX711_SCK[3] = {PB9, PB10}; // HX711 Nr.1: A,B; HX711 Nr.2: A,B S-Clock
//----------------------------------------------------------------
//----------------------------------------------------------------
// I2C Nr.2
//----------------------------------------------------------------
//#define SCL_2 PB10 // I2C Clock used for 2. HX
//#define SDA_2 PB11 // I2C Data used for 2. HX
//----------------------------------------------------------------
//----------------------------------------------------------------
// Konfiguration DHT21 / DHT22 - Temperatur und Luftfeuchte
//----------------------------------------------------------------
uint8_t DHT_Sensor_Pin[2] = {PB12, PB13}; // zwei DHT
//----------------------------------------------------------------
//#define unused_PB14
//#define unused_PB15
//********
// Port PC
//********
//#define PC13_LED // LED
//#define unused_PC14 // 32kHz ClockGen
//#define unused_PC15 // 32kHz ClockGen