mirror of
https://github.com/YuzuZensai/MCUFRIEND_kbv.git
synced 2026-01-30 12:22:43 +00:00
Init all the GPIO ports. Adjust read timing.
This commit is contained in:
@@ -9,6 +9,8 @@
|
||||
#define RD_ACTIVE16 {RD_ACTIVE8; RD_ACTIVE8;}
|
||||
#define WR_IDLE2 {WR_IDLE; WR_IDLE;}
|
||||
#define WR_IDLE4 {WR_IDLE2; WR_IDLE2;}
|
||||
#define RD_IDLE2 {RD_IDLE; RD_IDLE;}
|
||||
#define RD_IDLE4 {RD_IDLE2; RD_IDLE2;}
|
||||
|
||||
#if defined(USE_SPECIAL)
|
||||
#include "mcufriend_special.h"
|
||||
@@ -418,7 +420,7 @@ void write_8(uint8_t x)
|
||||
#define WRITE_DELAY { WR_ACTIVE8; } //120MHz
|
||||
#define IDLE_DELAY { WR_IDLE2;WR_IDLE; }
|
||||
#define READ_DELAY { RD_ACTIVE16;}
|
||||
#define GPIO_INIT() { RCC->AHB1ENR |= RCC_AHB1ENR_GPIOAEN | RCC_AHB1ENR_GPIOBEN | RCC_AHB1ENR_GPIOCEN; }
|
||||
#define GPIO_INIT() { RCC->AHB1ENR |= RCC_AHB1ENR_GPIOAEN | RCC_AHB1ENR_GPIOCEN | RCC_AHB1ENR_GPIODEN | RCC_AHB1ENR_GPIOEEN | RCC_AHB1ENR_GPIOFEN; }
|
||||
#define PIN_OUTPUT(port, pin) PIN_MODE2((port)->MODER, pin, 0x1)
|
||||
|
||||
#elif defined(STM32F303xE)
|
||||
@@ -444,7 +446,7 @@ void write_8(uint8_t x)
|
||||
#define WRITE_DELAY { WR_ACTIVE8; } //180MHz
|
||||
#define IDLE_DELAY { WR_IDLE2;WR_IDLE; }
|
||||
#define READ_DELAY { RD_ACTIVE16;}
|
||||
#define GPIO_INIT() { RCC->AHB1ENR |= RCC_AHB1ENR_GPIOAEN | RCC_AHB1ENR_GPIOBEN | RCC_AHB1ENR_GPIOCEN; }
|
||||
#define GPIO_INIT() { RCC->AHB1ENR |= RCC_AHB1ENR_GPIOAEN | RCC_AHB1ENR_GPIOCEN | RCC_AHB1ENR_GPIODEN | RCC_AHB1ENR_GPIOEEN | RCC_AHB1ENR_GPIOFEN; }
|
||||
#define PIN_OUTPUT(port, pin) PIN_MODE2((port)->MODER, pin, 0x1)
|
||||
|
||||
#elif defined(STM32F446xx)
|
||||
@@ -456,10 +458,10 @@ void write_8(uint8_t x)
|
||||
|
||||
#elif defined(STM32F767xx)
|
||||
#warning DELAY macros untested yet
|
||||
#define WRITE_DELAY { WR_ACTIVE8;WR_ACTIVE8; } //216MHz
|
||||
#define IDLE_DELAY { WR_IDLE4;WR_IDLE; }
|
||||
#define READ_DELAY { RD_ACTIVE16;RD_ACTIVE16;}
|
||||
#define GPIO_INIT() { RCC->AHB1ENR |= RCC_AHB1ENR_GPIOAEN | RCC_AHB1ENR_GPIOBEN | RCC_AHB1ENR_GPIOCEN; }
|
||||
#define WRITE_DELAY { WR_ACTIVE8;WR_ACTIVE2; } //216MHz
|
||||
#define IDLE_DELAY { WR_IDLE2;WR_IDLE; }
|
||||
#define READ_DELAY { RD_ACTIVE16;RD_ACTIVE16;RD_ACTIVE4;}
|
||||
#define GPIO_INIT() { RCC->AHB1ENR |= RCC_AHB1ENR_GPIOAEN | RCC_AHB1ENR_GPIOCEN | RCC_AHB1ENR_GPIODEN | RCC_AHB1ENR_GPIOEEN | RCC_AHB1ENR_GPIOFEN; }
|
||||
#define PIN_OUTPUT(port, pin) PIN_MODE2((port)->MODER, pin, 0x1)
|
||||
|
||||
#elif defined(STM32L053xx)
|
||||
@@ -484,7 +486,7 @@ void write_8(uint8_t x)
|
||||
#warning DELAY macros untested yet
|
||||
#define WRITE_DELAY { WR_ACTIVE2; } //80MHz
|
||||
#define READ_DELAY { RD_ACTIVE4; RD_ACTIVE; }
|
||||
#define GPIO_INIT() { RCC->AHB2ENR |= RCC_AHB2ENR_GPIOAEN | RCC_AHB2ENR_GPIOBEN | RCC_AHB2ENR_GPIOCEN; }
|
||||
#define GPIO_INIT() { RCC->AHB2ENR |= RCC_AHB2ENR_GPIOAEN | RCC_AHB2ENR_GPIOCEN | RCC_AHB2ENR_GPIODEN | RCC_AHB2ENR_GPIOEEN | RCC_AHB2ENR_GPIOFEN; }
|
||||
#define PIN_OUTPUT(port, pin) PIN_MODE2((port)->MODER, pin, 0x1)
|
||||
|
||||
#else
|
||||
@@ -663,7 +665,7 @@ void write_8(uint8_t x)
|
||||
|
||||
#define write8(x) { write_8(x); WRITE_DELAY; WR_STROBE; IDLE_DELAY; }
|
||||
#define write16(x) { uint8_t h = (x)>>8, l = x; write8(h); write8(l); }
|
||||
#define READ_8(dst) { RD_STROBE; READ_DELAY; dst = read_8(); RD_IDLE; RD_IDLE; }
|
||||
#define READ_8(dst) { RD_STROBE; READ_DELAY; dst = read_8(); RD_IDLE2; RD_IDLE; }
|
||||
#define READ_16(dst) { uint8_t hi; READ_8(hi); READ_8(dst); dst |= (hi << 8); }
|
||||
|
||||
//################################### ESP32 ##############################
|
||||
|
||||
Reference in New Issue
Block a user