diff --git a/firmware/test1/heizung-test1/platformio.ini b/firmware/test1/heizung-test1/platformio.ini index 824ceec02a6ad4369ed58d9c20a883707ccf8daf..25fb01e8b6ffa3df45b6015a01d0bbad935aec3a 100644 --- a/firmware/test1/heizung-test1/platformio.ini +++ b/firmware/test1/heizung-test1/platformio.ini @@ -9,6 +9,12 @@ ; https://docs.platformio.org/page/projectconf.html [env:pico] -platform = raspberrypi +#platform = raspberrypi +#board = pico +#framework = arduino + +platform = https://github.com/maxgerhardt/platform-raspberrypi.git board = pico framework = arduino +board_build.core = earlephilhower +#board_build.filesystem_size = 2m diff --git a/firmware/test1/heizung-test1/src/main.cpp b/firmware/test1/heizung-test1/src/main.cpp index 1fdbf66bf4b885fcaeb0fdfdee293696ee57576b..67bb68d20039ab762a1501f05e445d236900ac0c 100644 --- a/firmware/test1/heizung-test1/src/main.cpp +++ b/firmware/test1/heizung-test1/src/main.cpp @@ -1,11 +1,63 @@ #include <Arduino.h> +#include <Wire.h> + +enum Pinout { + DRIVE1 = 0, + DRIVE2 = 1, + LED_W = 2, + LED_Y = 3, + LED_B = 4, + LED_G = 5, + LED_R = 6, + MATRIX_IN1 = 7, + SBU1 = 8, + SBU2 = 9, + VBUS_DET = 10, + BOOT2 = 11, + I2C_OLED_SDA = 12, + I2C_OLED_SCL = 13, + WS2811 = 14, + TX_EN = 15, + TX = 16, + RX = 17, + MATRIX_IN2 = 18, + REED3 = 19, + REED4 = 20, + REED2 = 21, + REED1 = 22, + MATRIX_IN3 = 23, + DIGOUT1 = 24, + DIGOUT2 = 25, + ANALOG_IN1 = 26, + CURRENT2 = 27, + CURRENT1 = 28, + MEASURE_VCC = 29, +}; void setup() { + rp2040.enableDoubleResetBootloader(); + + pinMode(DRIVE1, OUTPUT); digitalWrite(DRIVE1, LOW); + pinMode(DRIVE2, OUTPUT); digitalWrite(DRIVE2, LOW); pinMode(2, OUTPUT); pinMode(3, OUTPUT); pinMode(4, OUTPUT); pinMode(5, OUTPUT); pinMode(6, OUTPUT); + + pinMode(BOOT2, INPUT_PULLUP); + pinMode(WS2811, INPUT_PULLUP); + pinMode(REED1, INPUT_PULLUP); + pinMode(REED2, INPUT_PULLUP); + pinMode(REED3, INPUT_PULLUP); + pinMode(REED4, INPUT_PULLUP); + + Serial1.setTX(TX); + Serial1.setRX(RX); + Wire.setSDA(I2C_OLED_SDA); + Wire.setSCL(I2C_OLED_SCL); + + Serial.begin(9600); } void loop() { @@ -16,4 +68,22 @@ void loop() { digitalWrite(i, 1); delay(100); } + + Serial.write("x: "); + Serial.write('0' + digitalRead(VBUS_DET)); + Serial.write('0' + digitalRead(BOOT2)); + Serial.write('0' + digitalRead(WS2811)); + Serial.write('0' + digitalRead(REED1)); + Serial.write('0' + digitalRead(REED2)); + Serial.write('0' + digitalRead(REED3)); + Serial.write('0' + digitalRead(REED4)); + Serial.write(", f_cpu="); + Serial.print(rp2040.f_cpu()); + Serial.write(", id="); + Serial.print(rp2040.cpuid()); + Serial.write(", cycles="); + Serial.print(rp2040.getCycleCount64()); + Serial.write(", rand="); + Serial.print(rp2040.hwrand32()); + Serial.write("\r\n"); } \ No newline at end of file