Fix SPI_SD Outside of HAL_STM32F1 (#14306)
This commit is contained in:
parent
089d12df16
commit
5b13abcacb
3 changed files with 34 additions and 25 deletions
|
@ -113,9 +113,7 @@ void spiInit(uint8_t spiRate) {
|
||||||
* @details
|
* @details
|
||||||
*/
|
*/
|
||||||
uint8_t spiRec(void) {
|
uint8_t spiRec(void) {
|
||||||
WRITE(SS_PIN, LOW);
|
|
||||||
uint8_t returnByte = SPI.transfer(0xFF);
|
uint8_t returnByte = SPI.transfer(0xFF);
|
||||||
WRITE(SS_PIN, HIGH);
|
|
||||||
return returnByte;
|
return returnByte;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -129,9 +127,7 @@ uint8_t spiRec(void) {
|
||||||
* @details Uses DMA
|
* @details Uses DMA
|
||||||
*/
|
*/
|
||||||
void spiRead(uint8_t* buf, uint16_t nbyte) {
|
void spiRead(uint8_t* buf, uint16_t nbyte) {
|
||||||
WRITE(SS_PIN, LOW);
|
|
||||||
SPI.dmaTransfer(0, const_cast<uint8_t*>(buf), nbyte);
|
SPI.dmaTransfer(0, const_cast<uint8_t*>(buf), nbyte);
|
||||||
WRITE(SS_PIN, HIGH);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -142,9 +138,7 @@ void spiRead(uint8_t* buf, uint16_t nbyte) {
|
||||||
* @details
|
* @details
|
||||||
*/
|
*/
|
||||||
void spiSend(uint8_t b) {
|
void spiSend(uint8_t b) {
|
||||||
WRITE(SS_PIN, LOW);
|
|
||||||
SPI.send(b);
|
SPI.send(b);
|
||||||
WRITE(SS_PIN, HIGH);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -156,10 +150,8 @@ void spiSend(uint8_t b) {
|
||||||
* @details Use DMA
|
* @details Use DMA
|
||||||
*/
|
*/
|
||||||
void spiSendBlock(uint8_t token, const uint8_t* buf) {
|
void spiSendBlock(uint8_t token, const uint8_t* buf) {
|
||||||
WRITE(SS_PIN, LOW);
|
|
||||||
SPI.send(token);
|
SPI.send(token);
|
||||||
SPI.dmaSend(const_cast<uint8_t*>(buf), 512);
|
SPI.dmaSend(const_cast<uint8_t*>(buf), 512);
|
||||||
WRITE(SS_PIN, HIGH);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#if ENABLED(SPI_EEPROM)
|
#if ENABLED(SPI_EEPROM)
|
||||||
|
|
|
@ -23,28 +23,36 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Define SPI Pins: SCK, MISO, MOSI, SS
|
* STM32F1 Default SPI Pins
|
||||||
*
|
|
||||||
* Any PIN can be used for Chip Select (SS)
|
|
||||||
*
|
*
|
||||||
|
* SS SCK MISO MOSI
|
||||||
|
* +-----------------------------+
|
||||||
|
* SPI1 | PA4 PA5 PA6 PA7 |
|
||||||
|
* SPI2 | PB12 PB13 PB14 PB15 |
|
||||||
|
* SPI3 | PA15 PB3 PB4 PB5 |
|
||||||
|
* +-----------------------------+
|
||||||
|
* Any pin can be used for Chip Select (SS_PIN)
|
||||||
* SPI1 is enabled by default
|
* SPI1 is enabled by default
|
||||||
*/
|
*/
|
||||||
|
#ifndef SCK_PIN
|
||||||
|
#define SCK_PIN PA5
|
||||||
|
#endif
|
||||||
|
#ifndef MISO_PIN
|
||||||
|
#define MISO_PIN PA6
|
||||||
|
#endif
|
||||||
|
#ifndef MOSI_PIN
|
||||||
|
#define MOSI_PIN PA7
|
||||||
|
#endif
|
||||||
|
#ifndef SS_PIN
|
||||||
|
#define SS_PIN PA4
|
||||||
|
#endif
|
||||||
|
#undef SDSS
|
||||||
|
#define SDSS SS_PIN
|
||||||
|
|
||||||
#if ENABLED(ENABLE_SPI3)
|
#if ENABLED(ENABLE_SPI3)
|
||||||
#define SPI_DEVICE 3
|
#define SPI_DEVICE 3
|
||||||
#define SCK_PIN BOARD_SPI3_SCK_PIN
|
|
||||||
#define MISO_PIN BOARD_SPI3_MISO_PIN
|
|
||||||
#define MOSI_PIN BOARD_SPI3_MOSI_PIN
|
|
||||||
#define SS_PIN BOARD_SPI3_NSS_PIN
|
|
||||||
#elif ENABLED(ENABLE_SPI2)
|
#elif ENABLED(ENABLE_SPI2)
|
||||||
#define SPI_DEVICE 2
|
#define SPI_DEVICE 2
|
||||||
#define SCK_PIN BOARD_SPI2_SCK_PIN
|
|
||||||
#define MISO_PIN BOARD_SPI2_MISO_PIN
|
|
||||||
#define MOSI_PIN BOARD_SPI2_MOSI_PIN
|
|
||||||
#define SS_PIN BOARD_SPI2_NSS_PIN
|
|
||||||
#else
|
#else
|
||||||
#define SPI_DEVICE 1
|
#define SPI_DEVICE 1
|
||||||
#define SCK_PIN BOARD_SPI1_SCK_PIN
|
|
||||||
#define MISO_PIN BOARD_SPI1_MISO_PIN
|
|
||||||
#define MOSI_PIN BOARD_SPI1_MOSI_PIN
|
|
||||||
#define SS_PIN BOARD_SPI1_NSS_PIN
|
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -133,8 +133,17 @@
|
||||||
//#define STM32_SD_LCD
|
//#define STM32_SD_LCD
|
||||||
|
|
||||||
#if ENABLED(STM32_SD_LCD)
|
#if ENABLED(STM32_SD_LCD)
|
||||||
#define SD_DETECT_PIN PB9
|
|
||||||
#define ENABLE_SPI3
|
#define ENABLE_SPI3
|
||||||
|
#define SD_DETECT_PIN PB9
|
||||||
|
#define SCK_PIN PB3
|
||||||
|
#define MISO_PIN PB4
|
||||||
|
#define MOSI_PIN PB5
|
||||||
|
#define SS_PIN PA15
|
||||||
#else
|
#else
|
||||||
|
#define ENABLE_SPI1
|
||||||
#define SD_DETECT_PIN PA3
|
#define SD_DETECT_PIN PA3
|
||||||
|
#define SCK_PIN PA5
|
||||||
|
#define MISO_PIN PA6
|
||||||
|
#define MOSI_PIN PA7
|
||||||
|
#define SS_PIN PA4
|
||||||
#endif
|
#endif
|
||||||
|
|
Reference in a new issue