LPC176x SPI / I2C PersistentStore (#17651)
This commit is contained in:
parent
7c3909bc3f
commit
5f7a75979f
86
Marlin/src/HAL/LPC1768/eeprom_wired.cpp
Normal file
86
Marlin/src/HAL/LPC1768/eeprom_wired.cpp
Normal file
@ -0,0 +1,86 @@
|
|||||||
|
/**
|
||||||
|
* Marlin 3D Printer Firmware
|
||||||
|
* Copyright (c) 2020 MarlinFirmware [https://github.com/MarlinFirmware/Marlin]
|
||||||
|
*
|
||||||
|
* Based on Sprinter and grbl.
|
||||||
|
* Copyright (c) 2011 Camiel Gubbels / Erik van der Zalm
|
||||||
|
*
|
||||||
|
* 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 <http://www.gnu.org/licenses/>.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* I2C/SPI EEPROM interface for LPC1768
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifdef TARGET_LPC1768
|
||||||
|
|
||||||
|
#include "../../inc/MarlinConfig.h"
|
||||||
|
|
||||||
|
#if USE_WIRED_EEPROM
|
||||||
|
|
||||||
|
#include "../shared/eeprom_api.h"
|
||||||
|
#include <Wire.h>
|
||||||
|
|
||||||
|
#ifndef EEPROM_SIZE
|
||||||
|
#define EEPROM_SIZE 0x8000 // 32kB
|
||||||
|
#endif
|
||||||
|
|
||||||
|
bool PersistentStore::access_start() {
|
||||||
|
TERN_(SPI_EEPROM, eeprom_init());
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool PersistentStore::access_finish() { return true; }
|
||||||
|
|
||||||
|
bool PersistentStore::write_data(int &pos, const uint8_t *value, size_t size, uint16_t *crc) {
|
||||||
|
while (size--) {
|
||||||
|
uint8_t v = *value;
|
||||||
|
|
||||||
|
// EEPROM has only ~100,000 write cycles,
|
||||||
|
// so only write bytes that have changed!
|
||||||
|
uint8_t * const p = (uint8_t * const)pos;
|
||||||
|
if (v != eeprom_read_byte(p)) {
|
||||||
|
eeprom_write_byte(p, v);
|
||||||
|
if (eeprom_read_byte(p) != v) {
|
||||||
|
SERIAL_ECHO_MSG(STR_ERR_EEPROM_WRITE);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
crc16(crc, &v, 1);
|
||||||
|
pos++;
|
||||||
|
value++;
|
||||||
|
};
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool PersistentStore::read_data(int &pos, uint8_t* value, size_t size, uint16_t *crc, const bool writing/*=true*/) {
|
||||||
|
do {
|
||||||
|
// Read from external EEPROM
|
||||||
|
const uint8_t c = eeprom_read_byte((uint8_t*)pos);
|
||||||
|
|
||||||
|
if (writing) *value = c;
|
||||||
|
crc16(crc, &c, 1);
|
||||||
|
pos++;
|
||||||
|
value++;
|
||||||
|
} while (--size);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
size_t PersistentStore::capacity() { return EEPROM_SIZE; }
|
||||||
|
|
||||||
|
#endif // USE_WIRED_EEPROM
|
||||||
|
#endif // TARGET_LPC1768
|
@ -28,13 +28,8 @@
|
|||||||
|
|
||||||
#include "../shared/eeprom_api.h"
|
#include "../shared/eeprom_api.h"
|
||||||
|
|
||||||
bool PersistentStore::access_start() {
|
bool PersistentStore::access_start() { return true; }
|
||||||
return true;
|
bool PersistentStore::access_finish() { return true; }
|
||||||
}
|
|
||||||
|
|
||||||
bool PersistentStore::access_finish() {
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
bool PersistentStore::write_data(int &pos, const uint8_t *value, size_t size, uint16_t *crc) {
|
bool PersistentStore::write_data(int &pos, const uint8_t *value, size_t size, uint16_t *crc) {
|
||||||
while (size--) {
|
while (size--) {
|
||||||
@ -84,13 +79,7 @@ bool PersistentStore::read_data(int &pos, uint8_t* value, size_t size, uint16_t
|
|||||||
}
|
}
|
||||||
|
|
||||||
size_t PersistentStore::capacity() {
|
size_t PersistentStore::capacity() {
|
||||||
return (
|
return TERN(USE_WIRED_EEPROM, E2END + 1, 4096); // 4K for emulated
|
||||||
#if USE_WIRED_EEPROM
|
|
||||||
E2END + 1
|
|
||||||
#else
|
|
||||||
4096 // 4kB
|
|
||||||
#endif
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif // USE_WIRED_EEPROM || SRAM_EEPROM_EMULATION
|
#endif // USE_WIRED_EEPROM || SRAM_EEPROM_EMULATION
|
||||||
|
@ -21,7 +21,7 @@
|
|||||||
*/
|
*/
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
// If no real EEPROM, Flash emulation, or SRAM emulation is available fall back to SD emulation
|
// If no real or emulated EEPROM selected, fall back to SD emulation
|
||||||
#if USE_FALLBACK_EEPROM
|
#if USE_FALLBACK_EEPROM
|
||||||
#define SDCARD_EEPROM_EMULATION
|
#define SDCARD_EEPROM_EMULATION
|
||||||
#endif
|
#endif
|
||||||
|
@ -80,7 +80,7 @@ void eeprom_write_byte(uint8_t *pos, unsigned char value) {
|
|||||||
HAL_FLASH_Unlock();
|
HAL_FLASH_Unlock();
|
||||||
__HAL_FLASH_CLEAR_FLAG(FLASH_FLAG_EOP | FLASH_FLAG_OPERR | FLASH_FLAG_WRPERR |FLASH_FLAG_PGAERR | FLASH_FLAG_PGPERR | FLASH_FLAG_PGSERR);
|
__HAL_FLASH_CLEAR_FLAG(FLASH_FLAG_EOP | FLASH_FLAG_OPERR | FLASH_FLAG_WRPERR |FLASH_FLAG_PGAERR | FLASH_FLAG_PGPERR | FLASH_FLAG_PGSERR);
|
||||||
|
|
||||||
uint16_t eeprom_address = unsigned(pos);
|
const unsigned eeprom_address = (unsigned)pos;
|
||||||
if (EE_WriteVariable(eeprom_address, uint16_t(value)) != EE_OK)
|
if (EE_WriteVariable(eeprom_address, uint16_t(value)) != EE_OK)
|
||||||
for (;;) HAL_Delay(1); // Spin forever until watchdog reset
|
for (;;) HAL_Delay(1); // Spin forever until watchdog reset
|
||||||
|
|
||||||
@ -91,7 +91,7 @@ uint8_t eeprom_read_byte(uint8_t *pos) {
|
|||||||
eeprom_init();
|
eeprom_init();
|
||||||
|
|
||||||
uint16_t data = 0xFF;
|
uint16_t data = 0xFF;
|
||||||
uint16_t eeprom_address = unsigned(pos);
|
const unsigned eeprom_address = (unsigned)pos;
|
||||||
(void)EE_ReadVariable(eeprom_address, &data); // Data unchanged on error
|
(void)EE_ReadVariable(eeprom_address, &data); // Data unchanged on error
|
||||||
|
|
||||||
return uint8_t(data);
|
return uint8_t(data);
|
||||||
@ -101,7 +101,7 @@ void eeprom_read_block(void *__dst, const void *__src, size_t __n) {
|
|||||||
eeprom_init();
|
eeprom_init();
|
||||||
|
|
||||||
uint16_t data = 0xFF;
|
uint16_t data = 0xFF;
|
||||||
uint16_t eeprom_address = unsigned(__src);
|
const unsigned eeprom_address = (unsigned)__src;
|
||||||
LOOP_L_N(c, __n) {
|
LOOP_L_N(c, __n) {
|
||||||
EE_ReadVariable(eeprom_address+c, &data);
|
EE_ReadVariable(eeprom_address+c, &data);
|
||||||
*((uint8_t*)__dst + c) = data;
|
*((uint8_t*)__dst + c) = data;
|
||||||
|
@ -26,4 +26,5 @@
|
|||||||
#undef SRAM_EEPROM_EMULATION
|
#undef SRAM_EEPROM_EMULATION
|
||||||
#undef SDCARD_EEPROM_EMULATION
|
#undef SDCARD_EEPROM_EMULATION
|
||||||
#define FLASH_EEPROM_EMULATION
|
#define FLASH_EEPROM_EMULATION
|
||||||
|
#warning "Forcing use of FLASH_EEPROM_EMULATION."
|
||||||
#endif
|
#endif
|
||||||
|
@ -35,44 +35,50 @@
|
|||||||
#include "../HAL.h"
|
#include "../HAL.h"
|
||||||
#include <Wire.h>
|
#include <Wire.h>
|
||||||
|
|
||||||
|
#ifndef EEPROM_WRITE_DELAY
|
||||||
|
#define EEPROM_WRITE_DELAY 5
|
||||||
|
#endif
|
||||||
|
|
||||||
// ------------------------
|
// ------------------------
|
||||||
// Private Variables
|
// Private Variables
|
||||||
// ------------------------
|
// ------------------------
|
||||||
|
|
||||||
static constexpr uint8_t eeprom_device_address = I2C_ADDRESS(0x50);
|
#ifndef EEPROM_DEVICE_ADDRESS
|
||||||
|
#define EEPROM_DEVICE_ADDRESS 0x50
|
||||||
|
#endif
|
||||||
|
|
||||||
|
static constexpr uint8_t eeprom_device_address = I2C_ADDRESS(EEPROM_DEVICE_ADDRESS);
|
||||||
|
|
||||||
// ------------------------
|
// ------------------------
|
||||||
// Public functions
|
// Public functions
|
||||||
// ------------------------
|
// ------------------------
|
||||||
|
|
||||||
static void eeprom_init() {
|
static void eeprom_init() { Wire.begin(); }
|
||||||
Wire.begin();
|
|
||||||
}
|
|
||||||
|
|
||||||
void eeprom_write_byte(uint8_t *pos, unsigned char value) {
|
void eeprom_write_byte(uint8_t *pos, unsigned char value) {
|
||||||
unsigned eeprom_address = (unsigned) pos;
|
const unsigned eeprom_address = (unsigned)pos;
|
||||||
|
|
||||||
eeprom_init();
|
|
||||||
|
|
||||||
Wire.beginTransmission(eeprom_device_address);
|
Wire.beginTransmission(eeprom_device_address);
|
||||||
Wire.write((int)(eeprom_address >> 8)); // MSB
|
Wire.write(int(eeprom_address >> 8)); // MSB
|
||||||
Wire.write((int)(eeprom_address & 0xFF)); // LSB
|
Wire.write(int(eeprom_address & 0xFF)); // LSB
|
||||||
Wire.write(value);
|
Wire.write(value);
|
||||||
Wire.endTransmission();
|
Wire.endTransmission();
|
||||||
|
|
||||||
// wait for write cycle to complete
|
// wait for write cycle to complete
|
||||||
// this could be done more efficiently with "acknowledge polling"
|
// this could be done more efficiently with "acknowledge polling"
|
||||||
delay(5);
|
delay(EEPROM_WRITE_DELAY);
|
||||||
}
|
}
|
||||||
|
|
||||||
// WARNING: address is a page address, 6-bit end will wrap around
|
// WARNING: address is a page address, 6-bit end will wrap around
|
||||||
// also, data can be maximum of about 30 bytes, because the Wire library has a buffer of 32 bytes
|
// also, data can be maximum of about 30 bytes, because the Wire library has a buffer of 32 bytes
|
||||||
void eeprom_update_block(const void *pos, void* eeprom_address, size_t n) {
|
void eeprom_update_block(const void *pos, void *__dst, size_t n) {
|
||||||
|
const unsigned eeprom_address = (unsigned)__dst;
|
||||||
|
|
||||||
eeprom_init();
|
eeprom_init();
|
||||||
|
|
||||||
Wire.beginTransmission(eeprom_device_address);
|
Wire.beginTransmission(eeprom_device_address);
|
||||||
Wire.write((int)((unsigned)eeprom_address >> 8)); // MSB
|
Wire.write(int(eeprom_address >> 8)); // MSB
|
||||||
Wire.write((int)((unsigned)eeprom_address & 0xFF)); // LSB
|
Wire.write(int(eeprom_address & 0xFF)); // LSB
|
||||||
Wire.endTransmission();
|
Wire.endTransmission();
|
||||||
|
|
||||||
uint8_t *ptr = (uint8_t*)pos;
|
uint8_t *ptr = (uint8_t*)pos;
|
||||||
@ -83,37 +89,37 @@ void eeprom_update_block(const void *pos, void* eeprom_address, size_t n) {
|
|||||||
|
|
||||||
if (flag) {
|
if (flag) {
|
||||||
Wire.beginTransmission(eeprom_device_address);
|
Wire.beginTransmission(eeprom_device_address);
|
||||||
Wire.write((int)((unsigned)eeprom_address >> 8)); // MSB
|
Wire.write(int(eeprom_address >> 8)); // MSB
|
||||||
Wire.write((int)((unsigned)eeprom_address & 0xFF)); // LSB
|
Wire.write(int(eeprom_address & 0xFF)); // LSB
|
||||||
Wire.write((uint8_t*)pos, n);
|
Wire.write((uint8_t*)pos, n);
|
||||||
Wire.endTransmission();
|
Wire.endTransmission();
|
||||||
|
|
||||||
// wait for write cycle to complete
|
// wait for write cycle to complete
|
||||||
// this could be done more efficiently with "acknowledge polling"
|
// this could be done more efficiently with "acknowledge polling"
|
||||||
delay(5);
|
delay(EEPROM_WRITE_DELAY);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
uint8_t eeprom_read_byte(uint8_t *pos) {
|
uint8_t eeprom_read_byte(uint8_t *pos) {
|
||||||
unsigned eeprom_address = (unsigned)pos;
|
const unsigned eeprom_address = (unsigned)pos;
|
||||||
|
|
||||||
eeprom_init();
|
|
||||||
|
|
||||||
Wire.beginTransmission(eeprom_device_address);
|
Wire.beginTransmission(eeprom_device_address);
|
||||||
Wire.write((int)(eeprom_address >> 8)); // MSB
|
Wire.write(int(eeprom_address >> 8)); // MSB
|
||||||
Wire.write((int)(eeprom_address & 0xFF)); // LSB
|
Wire.write(int(eeprom_address & 0xFF)); // LSB
|
||||||
Wire.endTransmission();
|
Wire.endTransmission();
|
||||||
Wire.requestFrom(eeprom_device_address, (byte)1);
|
Wire.requestFrom(eeprom_device_address, (byte)1);
|
||||||
return Wire.available() ? Wire.read() : 0xFF;
|
return Wire.available() ? Wire.read() : 0xFF;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Don't read more than 30..32 bytes at a time!
|
// Don't read more than 30..32 bytes at a time!
|
||||||
void eeprom_read_block(void* pos, const void* eeprom_address, size_t n) {
|
void eeprom_read_block(void* pos, const void *__dst, size_t n) {
|
||||||
|
const unsigned eeprom_address = (unsigned)__dst;
|
||||||
|
|
||||||
eeprom_init();
|
eeprom_init();
|
||||||
|
|
||||||
Wire.beginTransmission(eeprom_device_address);
|
Wire.beginTransmission(eeprom_device_address);
|
||||||
Wire.write((int)((unsigned)eeprom_address >> 8)); // MSB
|
Wire.write(int(eeprom_address >> 8)); // MSB
|
||||||
Wire.write((int)((unsigned)eeprom_address & 0xFF)); // LSB
|
Wire.write(int(eeprom_address & 0xFF)); // LSB
|
||||||
Wire.endTransmission();
|
Wire.endTransmission();
|
||||||
Wire.requestFrom(eeprom_device_address, (byte)n);
|
Wire.requestFrom(eeprom_device_address, (byte)n);
|
||||||
for (byte c = 0; c < n; c++ )
|
for (byte c = 0; c < n; c++ )
|
||||||
|
@ -35,6 +35,10 @@
|
|||||||
#define CMD_READ 2 // WRITE
|
#define CMD_READ 2 // WRITE
|
||||||
#define CMD_WRITE 2 // WRITE
|
#define CMD_WRITE 2 // WRITE
|
||||||
|
|
||||||
|
#ifndef EEPROM_WRITE_DELAY
|
||||||
|
#define EEPROM_WRITE_DELAY 7
|
||||||
|
#endif
|
||||||
|
|
||||||
uint8_t eeprom_read_byte(uint8_t* pos) {
|
uint8_t eeprom_read_byte(uint8_t* pos) {
|
||||||
uint8_t v;
|
uint8_t v;
|
||||||
uint8_t eeprom_temp[3];
|
uint8_t eeprom_temp[3];
|
||||||
@ -90,7 +94,7 @@ void eeprom_write_byte(uint8_t* pos, uint8_t value) {
|
|||||||
|
|
||||||
spiSend(SPI_CHAN_EEPROM1, value);
|
spiSend(SPI_CHAN_EEPROM1, value);
|
||||||
WRITE(SPI_EEPROM1_CS, HIGH);
|
WRITE(SPI_EEPROM1_CS, HIGH);
|
||||||
delay(7); // wait for page write to complete
|
delay(EEPROM_WRITE_DELAY); // wait for page write to complete
|
||||||
}
|
}
|
||||||
|
|
||||||
void eeprom_update_block(const void* src, void* eeprom_address, size_t n) {
|
void eeprom_update_block(const void* src, void* eeprom_address, size_t n) {
|
||||||
@ -112,7 +116,7 @@ void eeprom_update_block(const void* src, void* eeprom_address, size_t n) {
|
|||||||
|
|
||||||
spiSend(SPI_CHAN_EEPROM1, (const uint8_t*)src, n);
|
spiSend(SPI_CHAN_EEPROM1, (const uint8_t*)src, n);
|
||||||
WRITE(SPI_EEPROM1_CS, HIGH);
|
WRITE(SPI_EEPROM1_CS, HIGH);
|
||||||
delay(7); // wait for page write to complete
|
delay(EEPROM_WRITE_DELAY); // wait for page write to complete
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif // SPI_EEPROM
|
#endif // SPI_EEPROM
|
||||||
|
@ -31,14 +31,6 @@
|
|||||||
|
|
||||||
#define BOARD_INFO_NAME "AZSMZ MINI"
|
#define BOARD_INFO_NAME "AZSMZ MINI"
|
||||||
|
|
||||||
//
|
|
||||||
// EEPROM
|
|
||||||
//
|
|
||||||
#if NONE(FLASH_EEPROM_EMULATION, SDCARD_EEPROM_EMULATION)
|
|
||||||
#define FLASH_EEPROM_EMULATION
|
|
||||||
//#define SDCARD_EEPROM_EMULATION
|
|
||||||
#endif
|
|
||||||
|
|
||||||
//
|
//
|
||||||
// Servos
|
// Servos
|
||||||
//
|
//
|
||||||
|
@ -38,14 +38,6 @@
|
|||||||
#define BOARD_INFO_NAME "BIQU Thunder B300 V1.0"
|
#define BOARD_INFO_NAME "BIQU Thunder B300 V1.0"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
//
|
|
||||||
// EEPROM
|
|
||||||
//
|
|
||||||
#if NONE(FLASH_EEPROM_EMULATION, SDCARD_EEPROM_EMULATION)
|
|
||||||
#define FLASH_EEPROM_EMULATION
|
|
||||||
//#define SDCARD_EEPROM_EMULATION
|
|
||||||
#endif
|
|
||||||
|
|
||||||
//
|
//
|
||||||
// Limit Switches
|
// Limit Switches
|
||||||
//
|
//
|
||||||
|
@ -36,14 +36,6 @@
|
|||||||
|
|
||||||
#define BOARD_INFO_NAME "BIQU BQ111-A4"
|
#define BOARD_INFO_NAME "BIQU BQ111-A4"
|
||||||
|
|
||||||
//
|
|
||||||
// EEPROM
|
|
||||||
//
|
|
||||||
#if NONE(FLASH_EEPROM_EMULATION, SDCARD_EEPROM_EMULATION)
|
|
||||||
#define FLASH_EEPROM_EMULATION
|
|
||||||
//#define SDCARD_EEPROM_EMULATION
|
|
||||||
#endif
|
|
||||||
|
|
||||||
//
|
//
|
||||||
// Limit Switches
|
// Limit Switches
|
||||||
//
|
//
|
||||||
|
@ -23,14 +23,6 @@
|
|||||||
|
|
||||||
#define BOARD_INFO_NAME "BIGTREE SKR 1.1"
|
#define BOARD_INFO_NAME "BIGTREE SKR 1.1"
|
||||||
|
|
||||||
//
|
|
||||||
// EEPROM
|
|
||||||
//
|
|
||||||
#if NONE(FLASH_EEPROM_EMULATION, SDCARD_EEPROM_EMULATION)
|
|
||||||
#define FLASH_EEPROM_EMULATION
|
|
||||||
//#define SDCARD_EEPROM_EMULATION
|
|
||||||
#endif
|
|
||||||
|
|
||||||
//
|
//
|
||||||
// Limit Switches
|
// Limit Switches
|
||||||
//
|
//
|
||||||
|
@ -23,14 +23,6 @@
|
|||||||
|
|
||||||
#define BOARD_INFO_NAME "BIGTREE SKR 1.3"
|
#define BOARD_INFO_NAME "BIGTREE SKR 1.3"
|
||||||
|
|
||||||
//
|
|
||||||
// EEPROM
|
|
||||||
//
|
|
||||||
#if NONE(FLASH_EEPROM_EMULATION, SDCARD_EEPROM_EMULATION)
|
|
||||||
#define FLASH_EEPROM_EMULATION
|
|
||||||
//#define SDCARD_EEPROM_EMULATION
|
|
||||||
#endif
|
|
||||||
|
|
||||||
//
|
//
|
||||||
// Trinamic Stallguard pins
|
// Trinamic Stallguard pins
|
||||||
//
|
//
|
||||||
|
@ -25,14 +25,6 @@
|
|||||||
#define BOARD_INFO_NAME "BIGTREE SKR 1.4"
|
#define BOARD_INFO_NAME "BIGTREE SKR 1.4"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
//
|
|
||||||
// EEPROM
|
|
||||||
//
|
|
||||||
#if NONE(FLASH_EEPROM_EMULATION, SDCARD_EEPROM_EMULATION)
|
|
||||||
#define FLASH_EEPROM_EMULATION
|
|
||||||
//#define SDCARD_EEPROM_EMULATION
|
|
||||||
#endif
|
|
||||||
|
|
||||||
//
|
//
|
||||||
// SD Connection
|
// SD Connection
|
||||||
//
|
//
|
||||||
|
@ -32,10 +32,6 @@
|
|||||||
// Ignore temp readings during development.
|
// Ignore temp readings during development.
|
||||||
//#define BOGUS_TEMPERATURE_GRACE_PERIOD 2000
|
//#define BOGUS_TEMPERATURE_GRACE_PERIOD 2000
|
||||||
|
|
||||||
#if DISABLED(SDCARD_EEPROM_EMULATION)
|
|
||||||
#define FLASH_EEPROM_EMULATION
|
|
||||||
#endif
|
|
||||||
|
|
||||||
//
|
//
|
||||||
// Steppers
|
// Steppers
|
||||||
//
|
//
|
||||||
|
@ -30,14 +30,6 @@
|
|||||||
// Ignore temp readings during develpment.
|
// Ignore temp readings during develpment.
|
||||||
//#define BOGUS_TEMPERATURE_GRACE_PERIOD 2000
|
//#define BOGUS_TEMPERATURE_GRACE_PERIOD 2000
|
||||||
|
|
||||||
//
|
|
||||||
// EEPROM
|
|
||||||
//
|
|
||||||
#if NONE(FLASH_EEPROM_EMULATION, SDCARD_EEPROM_EMULATION)
|
|
||||||
#define FLASH_EEPROM_EMULATION
|
|
||||||
//#define SDCARD_EEPROM_EMULATION
|
|
||||||
#endif
|
|
||||||
|
|
||||||
//
|
//
|
||||||
// Enable 12MHz clock output on P1.27 pin to sync TMC2208 chip clocks
|
// Enable 12MHz clock output on P1.27 pin to sync TMC2208 chip clocks
|
||||||
//
|
//
|
||||||
|
@ -38,14 +38,6 @@
|
|||||||
#define BOARD_WEBSITE_URL "github.com/makerbase-mks/MKS-SBASE"
|
#define BOARD_WEBSITE_URL "github.com/makerbase-mks/MKS-SBASE"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
//
|
|
||||||
// EEPROM
|
|
||||||
//
|
|
||||||
#if NONE(FLASH_EEPROM_EMULATION, SDCARD_EEPROM_EMULATION)
|
|
||||||
#define FLASH_EEPROM_EMULATION
|
|
||||||
//#define SDCARD_EEPROM_EMULATION
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#define LED_PIN P1_18 // Used as a status indicator
|
#define LED_PIN P1_18 // Used as a status indicator
|
||||||
#define LED2_PIN P1_19
|
#define LED2_PIN P1_19
|
||||||
#define LED3_PIN P1_20
|
#define LED3_PIN P1_20
|
||||||
|
@ -32,14 +32,6 @@
|
|||||||
#define BOARD_INFO_NAME "MKS SGen-L"
|
#define BOARD_INFO_NAME "MKS SGen-L"
|
||||||
#define BOARD_WEBSITE_URL "github.com/makerbase-mks/MKS-SGEN_L"
|
#define BOARD_WEBSITE_URL "github.com/makerbase-mks/MKS-SGEN_L"
|
||||||
|
|
||||||
//
|
|
||||||
// EEPROM
|
|
||||||
//
|
|
||||||
#if NONE(FLASH_EEPROM_EMULATION, SDCARD_EEPROM_EMULATION)
|
|
||||||
#define FLASH_EEPROM_EMULATION
|
|
||||||
//#define SDCARD_EEPROM_EMULATION
|
|
||||||
#endif
|
|
||||||
|
|
||||||
//
|
//
|
||||||
// Servos
|
// Servos
|
||||||
//
|
//
|
||||||
|
@ -42,14 +42,6 @@
|
|||||||
|
|
||||||
#define BOARD_INFO_NAME "Re-ARM RAMPS 1.4"
|
#define BOARD_INFO_NAME "Re-ARM RAMPS 1.4"
|
||||||
|
|
||||||
//
|
|
||||||
// EEPROM
|
|
||||||
//
|
|
||||||
#if NONE(FLASH_EEPROM_EMULATION, SDCARD_EEPROM_EMULATION)
|
|
||||||
#define FLASH_EEPROM_EMULATION
|
|
||||||
//#define SDCARD_EEPROM_EMULATION
|
|
||||||
#endif
|
|
||||||
|
|
||||||
//
|
//
|
||||||
// Servos
|
// Servos
|
||||||
//
|
//
|
||||||
|
@ -32,14 +32,6 @@
|
|||||||
#define BOARD_INFO_NAME "Selena Compact"
|
#define BOARD_INFO_NAME "Selena Compact"
|
||||||
#define BOARD_WEBSITE_URL "github.com/Ales2-k/Selena"
|
#define BOARD_WEBSITE_URL "github.com/Ales2-k/Selena"
|
||||||
|
|
||||||
//
|
|
||||||
// EEPROM
|
|
||||||
//
|
|
||||||
#if NONE(FLASH_EEPROM_EMULATION, SDCARD_EEPROM_EMULATION)
|
|
||||||
#define FLASH_EEPROM_EMULATION
|
|
||||||
//#define SDCARD_EEPROM_EMULATION
|
|
||||||
#endif
|
|
||||||
|
|
||||||
//
|
//
|
||||||
// Servos
|
// Servos
|
||||||
//
|
//
|
||||||
|
@ -32,14 +32,6 @@
|
|||||||
#define BOARD_INFO_NAME "Azteeg X5 GT"
|
#define BOARD_INFO_NAME "Azteeg X5 GT"
|
||||||
#define BOARD_WEBSITE_URL "tinyurl.com/yx8tdqa3"
|
#define BOARD_WEBSITE_URL "tinyurl.com/yx8tdqa3"
|
||||||
|
|
||||||
//
|
|
||||||
// EEPROM
|
|
||||||
//
|
|
||||||
#if NONE(FLASH_EEPROM_EMULATION, SDCARD_EEPROM_EMULATION)
|
|
||||||
#define FLASH_EEPROM_EMULATION
|
|
||||||
//#define SDCARD_EEPROM_EMULATION
|
|
||||||
#endif
|
|
||||||
|
|
||||||
//
|
//
|
||||||
// Servos
|
// Servos
|
||||||
//
|
//
|
||||||
|
@ -187,14 +187,6 @@
|
|||||||
|
|
||||||
#endif // HAS_SPI_LCD
|
#endif // HAS_SPI_LCD
|
||||||
|
|
||||||
//
|
|
||||||
// EEPROM
|
|
||||||
//
|
|
||||||
#if NONE(FLASH_EEPROM_EMULATION, SDCARD_EEPROM_EMULATION)
|
|
||||||
#define FLASH_EEPROM_EMULATION
|
|
||||||
//#define SDCARD_EEPROM_EMULATION
|
|
||||||
#endif
|
|
||||||
|
|
||||||
//
|
//
|
||||||
// SD Support
|
// SD Support
|
||||||
//
|
//
|
||||||
|
@ -31,14 +31,6 @@
|
|||||||
|
|
||||||
#define BOARD_INFO_NAME "Azteeg X5 MINI WIFI"
|
#define BOARD_INFO_NAME "Azteeg X5 MINI WIFI"
|
||||||
|
|
||||||
//
|
|
||||||
// EEPROM
|
|
||||||
//
|
|
||||||
#if NONE(FLASH_EEPROM_EMULATION, SDCARD_EEPROM_EMULATION)
|
|
||||||
#define FLASH_EEPROM_EMULATION
|
|
||||||
//#define SDCARD_EEPROM_EMULATION
|
|
||||||
#endif
|
|
||||||
|
|
||||||
//
|
//
|
||||||
// DIGIPOT slave addresses
|
// DIGIPOT slave addresses
|
||||||
//
|
//
|
||||||
|
@ -24,14 +24,6 @@
|
|||||||
#define BOARD_INFO_NAME "BIGTREE SKR 1.4 TURBO"
|
#define BOARD_INFO_NAME "BIGTREE SKR 1.4 TURBO"
|
||||||
#define SKR_HAS_LPC1769
|
#define SKR_HAS_LPC1769
|
||||||
|
|
||||||
//
|
|
||||||
// EEPROM
|
|
||||||
//
|
|
||||||
#if NONE(FLASH_EEPROM_EMULATION, SDCARD_EEPROM_EMULATION)
|
|
||||||
#define FLASH_EEPROM_EMULATION
|
|
||||||
//#define SDCARD_EEPROM_EMULATION
|
|
||||||
#endif
|
|
||||||
|
|
||||||
//
|
//
|
||||||
// Include SKR 1.4 pins
|
// Include SKR 1.4 pins
|
||||||
//
|
//
|
||||||
|
@ -31,14 +31,6 @@
|
|||||||
|
|
||||||
#define BOARD_INFO_NAME "Cohesion3D Mini"
|
#define BOARD_INFO_NAME "Cohesion3D Mini"
|
||||||
|
|
||||||
//
|
|
||||||
// EEPROM
|
|
||||||
//
|
|
||||||
#if NONE(FLASH_EEPROM_EMULATION, SDCARD_EEPROM_EMULATION)
|
|
||||||
#define FLASH_EEPROM_EMULATION
|
|
||||||
//#define SDCARD_EEPROM_EMULATION
|
|
||||||
#endif
|
|
||||||
|
|
||||||
//
|
//
|
||||||
// Servos
|
// Servos
|
||||||
//
|
//
|
||||||
|
@ -31,14 +31,6 @@
|
|||||||
|
|
||||||
#define BOARD_INFO_NAME "Cohesion3D ReMix"
|
#define BOARD_INFO_NAME "Cohesion3D ReMix"
|
||||||
|
|
||||||
//
|
|
||||||
// EEPROM
|
|
||||||
//
|
|
||||||
#if NONE(FLASH_EEPROM_EMULATION, SDCARD_EEPROM_EMULATION)
|
|
||||||
#define FLASH_EEPROM_EMULATION
|
|
||||||
//#define SDCARD_EEPROM_EMULATION
|
|
||||||
#endif
|
|
||||||
|
|
||||||
//
|
//
|
||||||
// Servos
|
// Servos
|
||||||
//
|
//
|
||||||
|
@ -32,14 +32,6 @@
|
|||||||
#define BOARD_INFO_NAME "MKS SGen"
|
#define BOARD_INFO_NAME "MKS SGen"
|
||||||
#define BOARD_WEBSITE_URL "github.com/makerbase-mks/MKS-SGEN"
|
#define BOARD_WEBSITE_URL "github.com/makerbase-mks/MKS-SGEN"
|
||||||
|
|
||||||
//
|
|
||||||
// EEPROM
|
|
||||||
//
|
|
||||||
#if NONE(FLASH_EEPROM_EMULATION, SDCARD_EEPROM_EMULATION)
|
|
||||||
#define FLASH_EEPROM_EMULATION
|
|
||||||
//#define SDCARD_EEPROM_EMULATION
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#define MKS_HAS_LPC1769
|
#define MKS_HAS_LPC1769
|
||||||
#include "../lpc1768/pins_MKS_SBASE.h"
|
#include "../lpc1768/pins_MKS_SBASE.h"
|
||||||
|
|
||||||
|
@ -32,14 +32,6 @@
|
|||||||
#define BOARD_INFO_NAME "Smoothieboard"
|
#define BOARD_INFO_NAME "Smoothieboard"
|
||||||
#define BOARD_WEBSITE_URL "smoothieware.org/smoothieboard"
|
#define BOARD_WEBSITE_URL "smoothieware.org/smoothieboard"
|
||||||
|
|
||||||
//
|
|
||||||
// EEPROM
|
|
||||||
//
|
|
||||||
#if NONE(FLASH_EEPROM_EMULATION, SDCARD_EEPROM_EMULATION)
|
|
||||||
#define FLASH_EEPROM_EMULATION
|
|
||||||
//#define SDCARD_EEPROM_EMULATION
|
|
||||||
#endif
|
|
||||||
|
|
||||||
//
|
//
|
||||||
// Servos
|
// Servos
|
||||||
//
|
//
|
||||||
|
@ -32,14 +32,6 @@
|
|||||||
#define BOARD_INFO_NAME "TH3D EZBoard"
|
#define BOARD_INFO_NAME "TH3D EZBoard"
|
||||||
#define BOARD_WEBSITE_URL "th3dstudio.com"
|
#define BOARD_WEBSITE_URL "th3dstudio.com"
|
||||||
|
|
||||||
//
|
|
||||||
// EEPROM
|
|
||||||
//
|
|
||||||
#if NONE(FLASH_EEPROM_EMULATION, SDCARD_EEPROM_EMULATION)
|
|
||||||
#define FLASH_EEPROM_EMULATION
|
|
||||||
//#define SDCARD_EEPROM_EMULATION
|
|
||||||
#endif
|
|
||||||
|
|
||||||
//
|
//
|
||||||
// Servos
|
// Servos
|
||||||
//
|
//
|
||||||
|
Loading…
Reference in New Issue
Block a user