From 3afa6e526bbf286ebd24a50b1962b27667a5225f Mon Sep 17 00:00:00 2001 From: Jason Smith Date: Fri, 6 Nov 2020 21:51:52 -0800 Subject: [PATCH] STM32F1 cleanup, incl. SoftwareSerial removal (#20046) --- Marlin/src/HAL/STM32F1/SoftwareSerial.cpp | 60 ----------------------- Marlin/src/HAL/STM32F1/SoftwareSerial.h | 44 ----------------- Marlin/src/HAL/STM32F1/build_flags.py | 2 +- Marlin/src/HAL/STM32F1/inc/SanityCheck.h | 5 -- platformio.ini | 14 ++---- 5 files changed, 6 insertions(+), 119 deletions(-) delete mode 100644 Marlin/src/HAL/STM32F1/SoftwareSerial.cpp delete mode 100644 Marlin/src/HAL/STM32F1/SoftwareSerial.h diff --git a/Marlin/src/HAL/STM32F1/SoftwareSerial.cpp b/Marlin/src/HAL/STM32F1/SoftwareSerial.cpp deleted file mode 100644 index 993403cf7..000000000 --- a/Marlin/src/HAL/STM32F1/SoftwareSerial.cpp +++ /dev/null @@ -1,60 +0,0 @@ -/** - * Marlin 3D Printer Firmware - * Copyright (c) 2020 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - * - */ -#if defined(__STM32F1__) && !defined(HAVE_SW_SERIAL) - -/** - * Empty class for Software Serial implementation (Custom RX/TX pins) - * - * TODO: Optionally use https://github.com/FYSETC/SoftwareSerialM if TMC UART is wanted - */ - -#include "SoftwareSerial.h" - -// Constructor - -SoftwareSerial::SoftwareSerial(int8_t RX_pin, int8_t TX_pin) {} - -// Public - -void SoftwareSerial::begin(const uint32_t baudrate) { -} - -bool SoftwareSerial::available() { - return false; -} - -uint8_t SoftwareSerial::read() { - return 0; -} - -uint16_t SoftwareSerial::write(uint8_t byte) { - return 0; -} - -void SoftwareSerial::flush() {} - -void SoftwareSerial::listen() { - listening = true; -} - -void SoftwareSerial::stopListening() { - listening = false; -} - -#endif // __STM32F1__ diff --git a/Marlin/src/HAL/STM32F1/SoftwareSerial.h b/Marlin/src/HAL/STM32F1/SoftwareSerial.h deleted file mode 100644 index 1c8058665..000000000 --- a/Marlin/src/HAL/STM32F1/SoftwareSerial.h +++ /dev/null @@ -1,44 +0,0 @@ -/** - * Marlin 3D Printer Firmware - * Copyright (c) 2020 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - * - */ -#pragma once - -#include - -#ifndef HAVE_SW_SERIAL - #define SW_SERIAL_PLACEHOLDER 1 -#endif - -class SoftwareSerial { -public: - SoftwareSerial(int8_t RX_pin, int8_t TX_pin); - - void begin(const uint32_t baudrate); - - bool available(); - - uint8_t read(); - uint16_t write(uint8_t byte); - void flush(); - - void listen(); - void stopListening(); - -protected: - bool listening; -}; diff --git a/Marlin/src/HAL/STM32F1/build_flags.py b/Marlin/src/HAL/STM32F1/build_flags.py index 98c871a1d..c51fd4fa5 100755 --- a/Marlin/src/HAL/STM32F1/build_flags.py +++ b/Marlin/src/HAL/STM32F1/build_flags.py @@ -3,7 +3,7 @@ import sys #dynamic build flags for generic compile options if __name__ == "__main__": - args = " ".join([ "-std=gnu11", + args = " ".join([ "-std=gnu++14", "-Os", "-mcpu=cortex-m3", "-mthumb", diff --git a/Marlin/src/HAL/STM32F1/inc/SanityCheck.h b/Marlin/src/HAL/STM32F1/inc/SanityCheck.h index 937bef880..8d4c54ec0 100644 --- a/Marlin/src/HAL/STM32F1/inc/SanityCheck.h +++ b/Marlin/src/HAL/STM32F1/inc/SanityCheck.h @@ -25,11 +25,6 @@ * Test STM32F1-specific configuration values for errors at compile-time. */ -#if !defined(HAVE_SW_SERIAL) && HAS_TMC_SW_SERIAL - #warning "With TMC2208/9 consider using SoftwareSerialM with HAVE_SW_SERIAL and appropriate SS_TIMER." - #error "Missing SoftwareSerial implementation." -#endif - #if ENABLED(SDCARD_EEPROM_EMULATION) && DISABLED(SDSUPPORT) #undef SDCARD_EEPROM_EMULATION // Avoid additional error noise #if USE_FALLBACK_EEPROM diff --git a/platformio.ini b/platformio.ini index 0bd4fbe7a..7ab0755cd 100644 --- a/platformio.ini +++ b/platformio.ini @@ -711,7 +711,7 @@ src_filter = ${common.default_src_filter} + + lib_ignore = SPI @@ -1121,18 +1121,14 @@ build_flags = ${env:chitu_f103.build_flags} -DCHITU_V5_Z_MIN_BUGFIX # Creality (STM32F103RET6) # [env:STM32F103RET6_creality] -platform = ${common_stm32f1.platform} -extends = common_stm32f1 -board = genericSTM32F103RE -build_flags = !python Marlin/src/HAL/STM32F1/build_flags.py - ${common.build_flags} -std=gnu++14 -DSTM32_XL_DENSITY -DTEMP_TIMER_CHAN=4 -extra_scripts = ${common.extra_scripts} +platform = ${env:STM32F103RE.platform} +extends = env:STM32F103RE +build_flags = ${env:STM32F103RE.build_flags} -DTEMP_TIMER_CHAN=4 +extra_scripts = ${env:STM32F103RE.extra_scripts} pre:buildroot/share/PlatformIO/scripts/random-bin.py buildroot/share/PlatformIO/scripts/creality.py -lib_ignore = ${common_stm32f1.lib_ignore} debug_tool = jlink upload_protocol = jlink -monitor_speed = 115200 # # FLSUN QQ (STM32F103VET6)