Clean up SPI and ST7920 defines (#19956)

This commit is contained in:
Scott Lahteine 2020-11-01 04:40:59 -06:00 committed by GitHub
parent 4a39c8cd53
commit 22bf2b49c6
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
21 changed files with 68 additions and 82 deletions

View file

@ -49,10 +49,6 @@
#undef SDSS #undef SDSS
#define SDSS SS_PIN #define SDSS SS_PIN
#if ENABLED(ENABLE_SPI3) #ifndef SPI_DEVICE
#define SPI_DEVICE 3
#elif ENABLED(ENABLE_SPI2)
#define SPI_DEVICE 2
#else
#define SPI_DEVICE 1 #define SPI_DEVICE 1
#endif #endif

View file

@ -33,6 +33,38 @@
#include "ultralcd_st7920_u8glib_rrd_AVR.h" #include "ultralcd_st7920_u8glib_rrd_AVR.h"
#if F_CPU >= 20000000
#define CPU_ST7920_DELAY_1 DELAY_NS(0)
#define CPU_ST7920_DELAY_2 DELAY_NS(0)
#define CPU_ST7920_DELAY_3 DELAY_NS(50)
#elif MB(3DRAG, K8200, K8400)
#define CPU_ST7920_DELAY_1 DELAY_NS(0)
#define CPU_ST7920_DELAY_2 DELAY_NS(188)
#define CPU_ST7920_DELAY_3 DELAY_NS(0)
#elif MB(MINIRAMBO, EINSY_RAMBO, EINSY_RETRO, SILVER_GATE)
#define CPU_ST7920_DELAY_1 DELAY_NS(0)
#define CPU_ST7920_DELAY_2 DELAY_NS(250)
#define CPU_ST7920_DELAY_3 DELAY_NS(0)
#elif MB(RAMBO)
#define CPU_ST7920_DELAY_1 DELAY_NS(0)
#define CPU_ST7920_DELAY_2 DELAY_NS(0)
#define CPU_ST7920_DELAY_3 DELAY_NS(0)
#elif MB(BQ_ZUM_MEGA_3D)
#define CPU_ST7920_DELAY_1 DELAY_NS(0)
#define CPU_ST7920_DELAY_2 DELAY_NS(0)
#define CPU_ST7920_DELAY_3 DELAY_NS(189)
#elif defined(ARDUINO_ARCH_STM32)
#define CPU_ST7920_DELAY_1 DELAY_NS(300)
#define CPU_ST7920_DELAY_2 DELAY_NS(40)
#define CPU_ST7920_DELAY_3 DELAY_NS(340)
#elif F_CPU == 16000000
#define CPU_ST7920_DELAY_1 DELAY_NS(0)
#define CPU_ST7920_DELAY_2 DELAY_NS(0)
#define CPU_ST7920_DELAY_3 DELAY_NS(63)
#else
#error "No valid condition for delays in 'ultralcd_st7920_u8glib_rrd_AVR.h'"
#endif
#ifndef ST7920_DELAY_1 #ifndef ST7920_DELAY_1
#ifdef BOARD_ST7920_DELAY_1 #ifdef BOARD_ST7920_DELAY_1
#define ST7920_DELAY_1 BOARD_ST7920_DELAY_1 #define ST7920_DELAY_1 BOARD_ST7920_DELAY_1

View file

@ -37,43 +37,6 @@
#include <U8glib.h> #include <U8glib.h>
// If you want you can define your own set of delays in Configuration.h
//#define ST7920_DELAY_1 DELAY_NS(0)
//#define ST7920_DELAY_2 DELAY_NS(0)
//#define ST7920_DELAY_3 DELAY_NS(0)
#if F_CPU >= 20000000
#define CPU_ST7920_DELAY_1 DELAY_NS(0)
#define CPU_ST7920_DELAY_2 DELAY_NS(0)
#define CPU_ST7920_DELAY_3 DELAY_NS(50)
#elif MB(3DRAG, K8200, K8400)
#define CPU_ST7920_DELAY_1 DELAY_NS(0)
#define CPU_ST7920_DELAY_2 DELAY_NS(188)
#define CPU_ST7920_DELAY_3 DELAY_NS(0)
#elif MB(MINIRAMBO, EINSY_RAMBO, EINSY_RETRO, SILVER_GATE)
#define CPU_ST7920_DELAY_1 DELAY_NS(0)
#define CPU_ST7920_DELAY_2 DELAY_NS(250)
#define CPU_ST7920_DELAY_3 DELAY_NS(0)
#elif MB(RAMBO)
#define CPU_ST7920_DELAY_1 DELAY_NS(0)
#define CPU_ST7920_DELAY_2 DELAY_NS(0)
#define CPU_ST7920_DELAY_3 DELAY_NS(0)
#elif MB(BQ_ZUM_MEGA_3D)
#define CPU_ST7920_DELAY_1 DELAY_NS(0)
#define CPU_ST7920_DELAY_2 DELAY_NS(0)
#define CPU_ST7920_DELAY_3 DELAY_NS(189)
#elif defined(ARDUINO_ARCH_STM32)
#define CPU_ST7920_DELAY_1 DELAY_NS(300)
#define CPU_ST7920_DELAY_2 DELAY_NS(40)
#define CPU_ST7920_DELAY_3 DELAY_NS(340)
#elif F_CPU == 16000000
#define CPU_ST7920_DELAY_1 DELAY_NS(0)
#define CPU_ST7920_DELAY_2 DELAY_NS(0)
#define CPU_ST7920_DELAY_3 DELAY_NS(63)
#else
#error "No valid condition for delays in 'ultralcd_st7920_u8glib_rrd_AVR.h'"
#endif
void ST7920_SWSPI_SND_8BIT(uint8_t val); void ST7920_SWSPI_SND_8BIT(uint8_t val);
#if DOGM_SPI_DELAY_US > 0 #if DOGM_SPI_DELAY_US > 0
@ -82,8 +45,8 @@ void ST7920_SWSPI_SND_8BIT(uint8_t val);
#define U8G_DELAY() DELAY_US(10) #define U8G_DELAY() DELAY_US(10)
#endif #endif
#define ST7920_CS() { WRITE(ST7920_CS_PIN,1); U8G_DELAY(); } #define ST7920_CS() { WRITE(ST7920_CS_PIN, HIGH); U8G_DELAY(); }
#define ST7920_NCS() { WRITE(ST7920_CS_PIN,0); } #define ST7920_NCS() { WRITE(ST7920_CS_PIN, LOW); }
#define ST7920_SET_CMD() { ST7920_SWSPI_SND_8BIT(0xF8); U8G_DELAY(); } #define ST7920_SET_CMD() { ST7920_SWSPI_SND_8BIT(0xF8); U8G_DELAY(); }
#define ST7920_SET_DAT() { ST7920_SWSPI_SND_8BIT(0xFA); U8G_DELAY(); } #define ST7920_SET_DAT() { ST7920_SWSPI_SND_8BIT(0xFA); U8G_DELAY(); }
#define ST7920_WRITE_BYTE(a) { ST7920_SWSPI_SND_8BIT((uint8_t)((a)&0xF0u)); ST7920_SWSPI_SND_8BIT((uint8_t)((a)<<4U)); U8G_DELAY(); } #define ST7920_WRITE_BYTE(a) { ST7920_SWSPI_SND_8BIT((uint8_t)((a)&0xF0u)); ST7920_SWSPI_SND_8BIT((uint8_t)((a)<<4U)); U8G_DELAY(); }

View file

@ -871,6 +871,9 @@
#undef ST7920_DELAY_1 #undef ST7920_DELAY_1
#undef ST7920_DELAY_2 #undef ST7920_DELAY_2
#undef ST7920_DELAY_3 #undef ST7920_DELAY_3
#undef BOARD_ST7920_DELAY_1
#undef BOARD_ST7920_DELAY_2
#undef BOARD_ST7920_DELAY_3
#endif #endif
#undef HAS_FREE_AUX2_PINS #undef HAS_FREE_AUX2_PINS

View file

@ -210,14 +210,13 @@
#endif #endif
#if SD_CONNECTION_IS(LCD) #if SD_CONNECTION_IS(LCD)
#define ENABLE_SPI3 #define SPI_DEVICE 3
#define SD_DETECT_PIN PB9 #define SD_DETECT_PIN PB9
#define SCK_PIN PB3 #define SCK_PIN PB3
#define MISO_PIN PB4 #define MISO_PIN PB4
#define MOSI_PIN PB5 #define MOSI_PIN PB5
#define SS_PIN PA15 #define SS_PIN PA15
#elif SD_CONNECTION_IS(ONBOARD) #elif SD_CONNECTION_IS(ONBOARD)
#define ENABLE_SPI1
#define SD_DETECT_PIN PA3 #define SD_DETECT_PIN PA3
#define SCK_PIN PA5 #define SCK_PIN PA5
#define MISO_PIN PA6 #define MISO_PIN PA6

View file

@ -165,7 +165,6 @@
// SD-NAND // SD-NAND
// //
#if SD_CONNECTION_IS(ONBOARD) #if SD_CONNECTION_IS(ONBOARD)
#define ENABLE_SPI1
#define SD_DETECT_PIN -1 #define SD_DETECT_PIN -1
#define SCK_PIN PA5 #define SCK_PIN PA5
#define MISO_PIN PA6 #define MISO_PIN PA6

View file

@ -185,7 +185,7 @@
// SPI1(PA7)=LCD & SPI3(PB5)=STUFF, are not available // SPI1(PA7)=LCD & SPI3(PB5)=STUFF, are not available
// Needs to use SPI2 // Needs to use SPI2
#define ENABLE_SPI2 #define SPI_DEVICE 2
#define SCK_PIN PB13 #define SCK_PIN PB13
#define MISO_PIN PB14 #define MISO_PIN PB14
#define MOSI_PIN PB15 #define MOSI_PIN PB15

View file

@ -200,7 +200,7 @@
// SPI1(PA7)=LCD & SPI3(PB5)=STUFF, are not available // SPI1(PA7)=LCD & SPI3(PB5)=STUFF, are not available
// so SPI2 is required. // so SPI2 is required.
#define ENABLE_SPI2 #define SPI_DEVICE 2
#define SCK_PIN PB13 #define SCK_PIN PB13
#define MISO_PIN PB14 #define MISO_PIN PB14
#define MOSI_PIN PB15 #define MOSI_PIN PB15

View file

@ -56,7 +56,7 @@
// SPI // SPI
// Note: FLSun Hispeed (clone MKS_Robin_miniV2) board is using SPI2 interface. // Note: FLSun Hispeed (clone MKS_Robin_miniV2) board is using SPI2 interface.
// //
#define ENABLE_SPI2 #define SPI_DEVICE 2
// SPI Flash // SPI Flash
#define HAS_SPI_FLASH 1 #define HAS_SPI_FLASH 1

View file

@ -132,7 +132,7 @@
// //
// LCD / Controller // LCD / Controller
// //
#define ENABLE_SPI2 #define SPI_DEVICE 2
#define SS_PIN PB12 #define SS_PIN PB12
#define SCK_PIN PB13 #define SCK_PIN PB13
#define MISO_PIN PB14 #define MISO_PIN PB14

View file

@ -166,7 +166,7 @@
#endif #endif
// SPI1(PA7) & SPI3(PB5) not available // SPI1(PA7) & SPI3(PB5) not available
#define ENABLE_SPI2 #define SPI_DEVICE 2
#if ENABLED(SDIO_SUPPORT) #if ENABLED(SDIO_SUPPORT)
#define SCK_PIN PB13 // SPI2 #define SCK_PIN PB13 // SPI2

View file

@ -55,8 +55,7 @@
// //
// Note: MKS Robin board is using SPI2 interface. // Note: MKS Robin board is using SPI2 interface.
// //
//#define SPI_MODULE 2 #define SPI_DEVICE 2
#define ENABLE_SPI2
// //
// Limit Switches // Limit Switches

View file

@ -167,7 +167,7 @@
// //
// SD Card // SD Card
// //
#define ENABLE_SPI2 #define SPI_DEVICE 2
#define SD_DETECT_PIN PC10 #define SD_DETECT_PIN PC10
#define SCK_PIN PB13 #define SCK_PIN PB13
#define MISO_PIN PB14 #define MISO_PIN PB14

View file

@ -34,7 +34,6 @@
//#define DISABLE_DEBUG //#define DISABLE_DEBUG
#define DISABLE_JTAG #define DISABLE_JTAG
#define ENABLE_SPI2
// //
// Limit Switches // Limit Switches
@ -135,8 +134,12 @@
// //
// SD Card // SD Card
// //
#define ENABLE_SPI2
#define SD_DETECT_PIN PC10 #define SD_DETECT_PIN PC10
//
// SPI
//
#define SPI_DEVICE 2
#define SCK_PIN PB13 #define SCK_PIN PB13
#define MISO_PIN P1B4 #define MISO_PIN P1B4
#define MOSI_PIN P1B5 #define MOSI_PIN P1B5

View file

@ -38,7 +38,6 @@
//#define DISABLE_DEBUG //#define DISABLE_DEBUG
#define DISABLE_JTAG #define DISABLE_JTAG
#define ENABLE_SPI2
// //
// Servos // Servos
@ -87,9 +86,9 @@
// //
// Temperature Sensors // Temperature Sensors
// //
#define TEMP_BED_PIN PA1 //TB #define TEMP_BED_PIN PA1 // TB
#define TEMP_0_PIN PA0 //TH1 #define TEMP_0_PIN PA0 // TH1
#define TEMP_1_PIN PA2 //TH2 #define TEMP_1_PIN PA2 // TH2
#define FIL_RUNOUT_PIN PB10 // MT_DET #define FIL_RUNOUT_PIN PB10 // MT_DET
@ -132,24 +131,22 @@
#endif // !MKS_MINI_12864 #endif // !MKS_MINI_12864
#define BOARD_ST7920_DELAY_1 DELAY_NS(125)
#define BOARD_ST7920_DELAY_2 DELAY_NS(125)
#define BOARD_ST7920_DELAY_3 DELAY_NS(125)
#endif // HAS_WIRED_LCD #endif // HAS_WIRED_LCD
// //
// SD Card // SD Card
// //
#define ENABLE_SPI2
#define SD_DETECT_PIN PC10 #define SD_DETECT_PIN PC10
//
// SPI
//
#define SPI_DEVICE 2
#define SCK_PIN PB13 #define SCK_PIN PB13
#define MISO_PIN PB14 #define MISO_PIN PB14
#define MOSI_PIN PB15 #define MOSI_PIN PB15
#define SS_PIN PA15 #define SS_PIN PA15
#ifndef BOARD_ST7920_DELAY_1
#define BOARD_ST7920_DELAY_1 DELAY_NS(125)
#endif
#ifndef BOARD_ST7920_DELAY_2
#define BOARD_ST7920_DELAY_2 DELAY_NS(125)
#endif
#ifndef BOARD_ST7920_DELAY_3
#define BOARD_ST7920_DELAY_3 DELAY_NS(125)
#endif

View file

@ -48,7 +48,7 @@
#define MARLIN_EEPROM_SIZE EEPROM_PAGE_SIZE // 2KB #define MARLIN_EEPROM_SIZE EEPROM_PAGE_SIZE // 2KB
#endif #endif
#define ENABLE_SPI2 #define SPI_DEVICE 2
// //
// Limit Switches // Limit Switches

View file

@ -48,7 +48,7 @@
#define MARLIN_EEPROM_SIZE EEPROM_PAGE_SIZE // 2KB #define MARLIN_EEPROM_SIZE EEPROM_PAGE_SIZE // 2KB
#endif #endif
#define ENABLE_SPI2 #define SPI_DEVICE 2
// //
// Limit Switches // Limit Switches

View file

@ -55,8 +55,7 @@
// //
// Note: MKS Robin board is using SPI2 interface. // Note: MKS Robin board is using SPI2 interface.
// //
//#define SPI_MODULE 2 #define SPI_DEVICE 2
#define ENABLE_SPI2
// //
// Limit Switches // Limit Switches

View file

@ -41,8 +41,7 @@
// //
// Note: MKS Robin board is using SPI2 interface. // Note: MKS Robin board is using SPI2 interface.
// //
//#define SPI_MODULE 2 #define SPI_DEVICE 2
#define ENABLE_SPI2
// //
// Servos // Servos
@ -191,7 +190,6 @@
#endif #endif
#if SD_CONNECTION_IS(LCD) #if SD_CONNECTION_IS(LCD)
#define ENABLE_SPI2
#define SD_DETECT_PIN PG3 #define SD_DETECT_PIN PG3
#define SCK_PIN PB13 #define SCK_PIN PB13
#define MISO_PIN PB14 #define MISO_PIN PB14

View file

@ -173,7 +173,7 @@
#endif #endif
// SPI1(PA7) & SPI3(PB5) not available // SPI1(PA7) & SPI3(PB5) not available
#define ENABLE_SPI2 #define SPI_DEVICE 2
#if ENABLED(SDIO_SUPPORT) #if ENABLED(SDIO_SUPPORT)
#define SCK_PIN PB13 // SPI2 ok #define SCK_PIN PB13 // SPI2 ok

View file

@ -46,8 +46,6 @@
#define FLASH_EEPROM_LEVELING #define FLASH_EEPROM_LEVELING
#endif #endif
#define ENABLE_SPI1
#include "pins_RUMBA32_common.h" #include "pins_RUMBA32_common.h"
#if HAS_TMC_UART #if HAS_TMC_UART