[MK4Duo + Marlin2] Nuovo compilatore Arduino di serie in IDE 1.8.10, dà problemi October 01, 2019 09:12PM |
Registered: 5 years ago Posts: 124 |
Re: [MK4Duo + Marlin2] Nuovo compilatore Arduino di serie in IDE 1.8.10, dà problemi October 02, 2019 07:34AM |
Registered: 5 years ago Posts: 124 |
Re: [MK4Duo + Marlin2] Nuovo compilatore Arduino di serie in IDE 1.8.10, dà problemi October 02, 2019 02:32PM |
Registered: 11 years ago Posts: 6,409 |
Re: [MK4Duo + Marlin2] Nuovo compilatore Arduino di serie in IDE 1.8.10, dà problemi October 03, 2019 07:49AM |
Registered: 7 years ago Posts: 1,059 |
Pointers are 16 bits wide but you are using a 32-bit value like a pointer. That's worth a warning because 16 bits will be lost.
Re: [MK4Duo + Marlin2] Nuovo compilatore Arduino di serie in IDE 1.8.10, dà problemi October 03, 2019 08:31AM |
Registered: 5 years ago Posts: 124 |
#define digitalPinToPCICR(p) ( WITHIN(p, 10, 15) || \ WITHIN(p, 50, 53) || \ WITHIN(p, 62, 69) ? &PCICR : nullptr )Non piace il &PCICR
#if HAS_X_MAX #if (digitalPinToInterrupt(X_MAX_PIN) != NOT_AN_INTERRUPT) _ATTACH(X_MAX_PIN); #else static_assert(digitalPinToPCICR(X_MAX_PIN), "X_MAX_PIN is not interrupt-capable"); pciSetup(X_MAX_PIN); #endif #endifdice che il contenuto passato alla funzione static_assert non è costante e questo non è ammesso (forse in passato erano warning ora sono error).
Re: [MK4Duo + Marlin2] Nuovo compilatore Arduino di serie in IDE 1.8.10, dà problemi October 03, 2019 02:50PM |
Registered: 11 years ago Posts: 6,409 |
Re: [MK4Duo + Marlin2] Nuovo compilatore Arduino di serie in IDE 1.8.10, dà problemi October 04, 2019 07:11AM |
Registered: 7 years ago Posts: 1,059 |
Re: [MK4Duo + Marlin2] Nuovo compilatore Arduino di serie in IDE 1.8.10, dà problemi November 16, 2019 01:24PM |
Registered: 5 years ago Posts: 124 |
Quote
FabryR
Gli errori per Marlin2 (ma anche Marlin1) sono esattamente questi:
reinterpret_cast from integer to pointer sul frammento
#define digitalPinToPCICR(p) ( WITHIN(p, 10, 15) || \ WITHIN(p, 50, 53) || \ WITHIN(p, 62, 69) ? &PCICR : nullptr )Non piace il &PCICR
Poi c'è un altro frammento che il compilatore potrebbe segnalare con lo stesso errore (ma probabilmente si ferma al primo errore per tipo)
non-constant condition for static assertion sul frammento
#if HAS_X_MAX #if (digitalPinToInterrupt(X_MAX_PIN) != NOT_AN_INTERRUPT) _ATTACH(X_MAX_PIN); #else static_assert(digitalPinToPCICR(X_MAX_PIN), "X_MAX_PIN is not interrupt-capable"); pciSetup(X_MAX_PIN); #endif #endifdice che il contenuto passato alla funzione static_assert non è costante e questo non è ammesso (forse in passato erano warning ora sono error).
Di questi frammenti (il compilatore segnala solo il primo) ce ne sono decine (Min_Pin e Max_Pin per ogni asse, spesso asse doppio tipo X e X2 se non triplo più Z_Min_Probe) ed alcuni utenti per risolvere in passato si limitavano a commentare il blocco.
Ora magari qualcuno (se glielo risegnalano ancora) lo sistemerà prima o poi.
Però purtroppo esce solo a quelli che attivano gli IRQ per gli endstop, sennò passa inosservato il problema.
#define REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLERche trovate in Configuration.h in Marlin e Configuration_Overall.h in Mk4Duo, il codice
#define ST7920_DELAY_1 DELAY_NS(125) //these help keep the display from being weird #define ST7920_DELAY_2 DELAY_NS(125) #define ST7920_DELAY_3 DELAY_NS(125)I valori dei delay probabilmente non sono ottimizzati (altri utenti consigliano valori diversi sia più bassi che più alti o si limitano a specificare solo ST7920_DELAY_3) e sono pure quelli consigliati per un processore a 32 bit, in ogni caso funzionano sia su Marlin 2.0 che su Mk4Duo 4.3.9 e non ho perso tempo a provare altri valori.
Re: [MK4Duo + Marlin2] Nuovo compilatore Arduino di serie in IDE 1.8.10, dà problemi November 17, 2019 11:26AM |
Registered: 7 years ago Posts: 1,059 |
Re: [MK4Duo + Marlin2] Nuovo compilatore Arduino di serie in IDE 1.8.10, dà problemi November 17, 2019 01:55PM |
Registered: 5 years ago Posts: 124 |
//#define ST7920_DELAY_1 DELAY_0_NOP //#define ST7920_DELAY_2 DELAY_0_NOP //#define ST7920_DELAY_3 DELAY_0_NOPche in realtà non è più presente nei config (e va scritto da zero) e sperimentare con i valori DELAY_0_NOP, DELAY_1_NOP, DELAY_2_NOP, DELAY_3_NOP, DELAY_4_NOP, finché si risolveva.
Re: [MK4Duo + Marlin2] Nuovo compilatore Arduino di serie in IDE 1.8.10, dà problemi November 17, 2019 03:08PM |
Registered: 11 years ago Posts: 6,409 |