File tree 4 files changed +17
-14
lines changed
4 files changed +17
-14
lines changed Original file line number Diff line number Diff line change @@ -11,13 +11,6 @@ void HSPI::begin()
11
11
PIN_FUNC_SELECT (PERIPHS_IO_MUX_MTDI_U, FUNC_HSPIQ_MISO); // gpio12
12
12
PIN_FUNC_SELECT (PERIPHS_IO_MUX_MTCK_U, FUNC_HSPID_MOSI); // gpio13
13
13
PIN_FUNC_SELECT (PERIPHS_IO_MUX_MTMS_U, FUNC_HSPI_CLK); // gpio14
14
- PIN_FUNC_SELECT (PERIPHS_IO_MUX_MTDO_U, FUNC_HSPI_CS0); // gpio15
15
-
16
- uint32_t regvalue = SPI_FLASH_DOUT;
17
- regvalue |= SPI_DOUTDIN | SPI_CK_I_EDGE;
18
- regvalue &= ~(BIT2 | SPI_FLASH_USR_ADDR | SPI_FLASH_USR_DUMMY | SPI_FLASH_USR_DIN | SPI_USR_COMMAND);
19
-
20
- SET_PERI_REG_MASK (SPI_FLASH_USER (hspi_port), regvalue);
21
14
22
15
// SPI clock=CPU clock/8
23
16
WRITE_PERI_REG (SPI_FLASH_CLOCK (hspi_port),
@@ -26,6 +19,12 @@ void HSPI::begin()
26
19
((1 &SPI_CLKCNT_H)<<SPI_CLKCNT_H_S)|
27
20
((3 &SPI_CLKCNT_L)<<SPI_CLKCNT_L_S)); // clear bit 31,set SPI clock div
28
21
22
+ uint32_t regvalue = SPI_FLASH_DOUT;
23
+ regvalue |= SPI_DOUTDIN | SPI_CK_I_EDGE;
24
+ regvalue &= ~(BIT2 | SPI_FLASH_USR_ADDR | SPI_FLASH_USR_DUMMY | SPI_FLASH_USR_DIN | SPI_USR_COMMAND);
25
+
26
+ WRITE_PERI_REG (SPI_FLASH_USER (hspi_port), regvalue);
27
+ WRITE_PERI_REG (SPI_FLASH_CTRL1 (hspi_port), 0 );
29
28
}
30
29
31
30
void HSPI::end ()
Original file line number Diff line number Diff line change @@ -27,7 +27,7 @@ class HSPI : public SPIImpl
27
27
uint32_t _clkDiv;
28
28
uint32_t *spi_fifo;
29
29
const uint32_t hspi_port = 1 ;
30
- const uint32_t hspi_fifo_size = 32 ;
30
+ const uint32_t hspi_fifo_size = 16 ;
31
31
32
32
private:
33
33
inline void hspi_wait_ready (void ){while (READ_PERI_REG (SPI_FLASH_CMD (hspi_port))&SPI_FLASH_USR);}
Original file line number Diff line number Diff line change 26
26
27
27
void TFT::TFTinit (void )
28
28
{
29
+ pinMode (2 , OUTPUT);
30
+ pinMode (4 , OUTPUT);
31
+ pinMode (15 , OUTPUT);
29
32
SPI.begin ();
33
+ SPI.setClockDivider (2 );
30
34
31
35
TFT_CS_HIGH;
32
36
TFT_DC_HIGH;
Original file line number Diff line number Diff line change @@ -81,12 +81,12 @@ Modified by Sermus for ESP8266
81
81
#define XP 21 // can be a digital pin, this is A3
82
82
83
83
#else
84
- #define TFT_CS_LOW // ESP8266 hspi has hardware controlled CS
85
- #define TFT_CS_HIGH
86
- #define TFT_DC_LOW pinMode (2 , 0 );
87
- #define TFT_DC_HIGH pinMode (2 , 1 );
88
- #define TFT_BL_OFF pinMode ( 0 , 0 );
89
- #define TFT_BL_ON pinMode ( 0 , 1 );
84
+ #define TFT_CS_LOW digitalWrite ( 15 , 0 );
85
+ #define TFT_CS_HIGH digitalWrite ( 15 , 1 );
86
+ #define TFT_DC_LOW digitalWrite (2 , 0 );
87
+ #define TFT_DC_HIGH digitalWrite (2 , 1 );
88
+ #define TFT_BL_OFF digitalWrite ( 4 , 0 );
89
+ #define TFT_BL_ON digitalWrite ( 4 , 1 );
90
90
91
91
#define YP A2 // must be an analog pin, use "An" notation!
92
92
#define XM A1 // must be an analog pin, use "An" notation!
You can’t perform that action at this time.
0 commit comments