Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
T
TFT_eSPI
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Analytics
Analytics
Repository
Value Stream
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Commits
Open sidebar
xpstem
TFT_eSPI
Commits
9d33b3ea
Commit
9d33b3ea
authored
Nov 04, 2021
by
Bodmer
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
RP2040 DMA image copy bug fix
memcpy should be memmove since areas overlap.
parent
e23d8e08
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
6 additions
and
4 deletions
+6
-4
Processors/TFT_eSPI_RP2040.c
Processors/TFT_eSPI_RP2040.c
+3
-1
TFT_eSPI.h
TFT_eSPI.h
+1
-1
library.json
library.json
+1
-1
library.properties
library.properties
+1
-1
No files found.
Processors/TFT_eSPI_RP2040.c
View file @
9d33b3ea
...
@@ -365,7 +365,7 @@ void TFT_eSPI::pushImageDMA(int32_t x, int32_t y, int32_t w, int32_t h, uint16_t
...
@@ -365,7 +365,7 @@ void TFT_eSPI::pushImageDMA(int32_t x, int32_t y, int32_t w, int32_t h, uint16_t
// If image is clipped, copy pixels into a contiguous block
// If image is clipped, copy pixels into a contiguous block
if
(
(
dw
!=
w
)
||
(
dh
!=
h
)
)
{
if
(
(
dw
!=
w
)
||
(
dh
!=
h
)
)
{
for
(
int32_t
yb
=
0
;
yb
<
dh
;
yb
++
)
{
for
(
int32_t
yb
=
0
;
yb
<
dh
;
yb
++
)
{
mem
cpy
((
uint8_t
*
)
(
buffer
+
yb
*
dw
),
(
uint8_t
*
)
(
image
+
dx
+
w
*
(
yb
+
dy
)),
dw
<<
1
);
mem
move
((
uint8_t
*
)
(
buffer
+
yb
*
dw
),
(
uint8_t
*
)
(
image
+
dx
+
w
*
(
yb
+
dy
)),
dw
<<
1
);
}
}
}
}
// else, if a buffer pointer has been provided copy whole image to the buffer
// else, if a buffer pointer has been provided copy whole image to the buffer
...
@@ -389,6 +389,8 @@ void TFT_eSPI::pushImageDMA(int32_t x, int32_t y, int32_t w, int32_t h, uint16_t
...
@@ -389,6 +389,8 @@ void TFT_eSPI::pushImageDMA(int32_t x, int32_t y, int32_t w, int32_t h, uint16_t
bool
TFT_eSPI
::
initDMA
(
bool
ctrl_cs
)
bool
TFT_eSPI
::
initDMA
(
bool
ctrl_cs
)
{
{
if
(
DMA_Enabled
)
return
false
;
if
(
DMA_Enabled
)
return
false
;
ctrl_cs
=
ctrl_cs
;
// stop unused parameter warning
dma_tx_channel
=
dma_claim_unused_channel
(
true
);
dma_tx_channel
=
dma_claim_unused_channel
(
true
);
dma_tx_config
=
dma_channel_get_default_config
(
dma_tx_channel
);
dma_tx_config
=
dma_channel_get_default_config
(
dma_tx_channel
);
...
...
TFT_eSPI.h
View file @
9d33b3ea
...
@@ -16,7 +16,7 @@
...
@@ -16,7 +16,7 @@
#ifndef _TFT_eSPIH_
#ifndef _TFT_eSPIH_
#define _TFT_eSPIH_
#define _TFT_eSPIH_
#define TFT_ESPI_VERSION "2.3.7
1
"
#define TFT_ESPI_VERSION "2.3.7
2
"
// Bit level feature flags
// Bit level feature flags
// Bit 0 set: viewport capability
// Bit 0 set: viewport capability
...
...
library.json
View file @
9d33b3ea
{
{
"name"
:
"TFT_eSPI"
,
"name"
:
"TFT_eSPI"
,
"version"
:
"2.3.7
1
"
,
"version"
:
"2.3.7
2
"
,
"keywords"
:
"Arduino, tft, ePaper, display, Pico, RP2040, STM32, ESP8266, NodeMCU, ESP32, M5Stack, ILI9341, ST7735, ILI9163, S6D02A1, ILI9481, ILI9486, ILI9488, ST7789, RM68140, SSD1351, SSD1963, ILI9225, HX8357D"
,
"keywords"
:
"Arduino, tft, ePaper, display, Pico, RP2040, STM32, ESP8266, NodeMCU, ESP32, M5Stack, ILI9341, ST7735, ILI9163, S6D02A1, ILI9481, ILI9486, ILI9488, ST7789, RM68140, SSD1351, SSD1963, ILI9225, HX8357D"
,
"description"
:
"A TFT and ePaper SPI graphics library with optimisation for Raspberry Pi Pico, ESP8266, ESP32 and STM32"
,
"description"
:
"A TFT and ePaper SPI graphics library with optimisation for Raspberry Pi Pico, ESP8266, ESP32 and STM32"
,
"repository"
:
"repository"
:
...
...
library.properties
View file @
9d33b3ea
name
=
TFT_eSPI
name
=
TFT_eSPI
version
=
2.3.7
1
version
=
2.3.7
2
author
=
Bodmer
author
=
Bodmer
maintainer
=
Bodmer
maintainer
=
Bodmer
sentence
=
TFT graphics library for Arduino processors with performance optimisation for RP2040, STM32, ESP8266 and ESP32
sentence
=
TFT graphics library for Arduino processors with performance optimisation for RP2040, STM32, ESP8266 and ESP32
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment