Commit Graph
104 Commits
Author SHA1 Message Date
Mikey SklarandClaude Opus 5.5 9569fc6f3e ESP8266: use optimistic_yield in writeColor instead of delay(1)
delay(1) ran on every writeColor call, making small fills about 3x
slower (#479). delay(0) no longer yields on core 3.x and trips the
soft WDT, and yield() panics when drawing from SYS context.
optimistic_yield(10000) yields only after 10 ms and is a no-op where
yielding is not allowed.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-16 07:08:59 -07:00
caternuson 9709959658 fix RP2040 SPI peripheral mapping 2025-04-09 11:17:59 -07:00
Jeff Epler f80daa51c9 GFXcanvas: Allow subclass to take charge of buffer allocations (#465)
* GFXcanvas: Allow subclass to take charge of buffer allocations

In Adafruit_dvhstx, the low level driver takes charge of the framebuffer
allocations. Consequently, any allocation by the GFXcanvas class would be
an unused waste of memory.

Introduce a new constructor parameter `bool allocate_buffer=true`. The
default preserves the old behavior of allocating the buffer in the
constructor and freeing it in the destructor, while passing in `false`
skips buffer allocation & freeing.

In this case, the subclass must allocate the buffer before the first
drawing operation (such as in its constructor or begin method), and
free it in its own destructor or end method.

The subclass can also freely change the buffer pointer at runtime, for
instance in a swap method if the underlying framebuffer is double-buffered.

* experimentally run a different clang-format

This runs version 19.1.7: uvx clang-format -i *.cpp *.h

the changes look similar to what was shown during CI

* undo one edit that ci doesn't like
2025-02-19 10:15:01 -05:00
Jeff Epler 1124b157d5 Merge pull request #394 from Rotzbua/patch-1
Doc: fix link to Adafruit GFX github repository
2025-02-18 20:14:09 -06:00
Jeff Epler 19ae104713 Merge pull request #313 from jayzakk/lgt8-support
add support for LGT8F cpu
2025-02-18 19:55:49 -06:00
Meco Man 22ad39d702 add ARDUINO_ARCH_RTTHREAD to support RTduino (#460) 2024-10-07 09:48:11 -04:00
Zane Bauman 5080bec822 Allow using ATtiny84 (#455) 2024-07-18 10:16:19 -04:00
caternuson 3c0c85ba5d clang 2023-10-10 14:34:28 -07:00
caternuson 8eca715530 remove loops 2023-10-10 14:13:04 -07:00
caternuson f9821f6821 remove volatile 2023-10-10 12:19:26 -07:00
ladyada ff70355ed6 for unknown reason, esp8266 wants delay() not yield() so it doesnt crash 2023-09-24 01:09:06 -04:00
Rotzbua 4de9954507 Doc: fix link to Adafruit GFX github repository 2023-03-27 03:32:58 +02:00
Alexander Golovanov 0548084d9a Fixed Doxygen 2022-04-27 19:01:45 +03:00
Alexander Golovanov 8d14ea77ac Fixed clang-format 2022-04-27 18:43:27 +03:00
Alexander Golovanov 09cb6f4993 Add dmaBusy() 2022-04-26 15:28:36 +03:00
Paint Your Dragon cda80a23d2 Update Adafruit_SPITFT.cpp
Appease clang-format
2021-09-17 10:49:34 -07:00
Charlie Birks b654431d6f Even more direct writes for writePixels on RP2040
Switch SPI to 16-bit for little-endian, write bytes as-is for big-endian
2021-09-15 12:09:29 +01:00
Charlie Birks a3bf8baeee Call spi_write_blocking directly for RP2040
This is around a 6-13x speed up in graphicstest (at 62.5Mhz)
2021-09-14 13:44:35 +01:00
ladyada f2df85851f reclang 2021-05-26 17:59:18 -04:00
ladyada f9af48ba13 clangd 2021-05-26 17:50:22 -04:00
Phillip Burgess 4c87f9a048 Fix misnamed function call in nRF code 2021-05-25 13:14:49 -07:00
Phillip Burgess d69f14c151 Fix class on swapBytes() 2021-05-25 09:43:28 -07:00
Phillip Burgess f31c435d8c Fix cast for ESP32 writeBytes() 2021-05-25 09:32:43 -07:00
Phillip Burgess c288843ec3 Add swapBytes() function, fix some longstanding endian issues in writePixels() 2021-05-25 09:20:34 -07:00
Robin Giese e9b86373a6 Fix compiler warning: "SPI_INTERFACES_COUNT" is not defined, evaluates to 0 [-Wundef] 2021-01-31 17:05:02 -08:00
Brian Park 58606c5701 Fix -Wunused-parameter warnings (#328) 2020-12-08 17:37:27 -05:00
Oliver 2bfe2cbad2 add support for LGT8F cpu 2020-08-07 01:48:15 +02:00
Oliver 14aa943754 add support for LGT8F cpu 2020-08-07 01:26:10 +02:00
lady ada 156f8d4f0d fixed up https://github.com/adafruit/Adafruit-GFX-Library/pull/275 2020-05-17 12:33:07 -04:00
Melissa LeBlanc-Williams 2798aee127 Removed duplicate spiWrite to fix bbSPI 2020-02-12 08:37:10 -08:00
Limor "Ladyada" Fried 6abf693056 Actionsci2 (#264)
add library dependancy
remove travis CI
update badge
enable Actions
2019-12-27 17:10:08 -05:00
Henry Gabryjelski 6d513193e6 Fix two compiler warnings. (#259)
* Fix compiler warning [-Wunused-const-variable=]

Compiling a sketches that uses this library can report a warning
about the const variable `font` being defined, but never used.
Work around this by defining a (static inline) function which
references the variable.

* Remove unused variable (compiler warning)
2019-12-20 15:16:24 -05:00
Melissa LeBlanc-Williams 70950e3d3b Added removed sendCommand overload to fix rotation 2019-12-19 11:20:06 -08:00
Melissa LeBlanc-Williams 181591a14d Fixing issue with 8-bit procs not working 2019-12-18 14:50:46 -08:00
Paint Your Dragon 3447387cc7 Add 16-bit read/write commands for NT35510 display lib (#254)
* Add 16-bit read/write commands for NT35510 display lib

* Fix readcommand16()
2019-12-07 18:41:19 -05:00
ladyada 1b91a1705f fix SAMD21 definition and turn on DMA for CPX (gizmo is big) - tested with ST7789 gizmo 2019-10-18 12:12:04 -04:00
ladyada 8596d46bce since now we have SPI DMA for nrf, we need to add some more #define's 2019-10-17 15:05:39 -04:00
hathach c4e7aea568 better use nrf spi with dma for drawing pixels with nrf52840 (#248)
* better use nrf spi with dma

* only use spim dma API with 52840
2019-10-17 14:22:54 -04:00
Ladyada e3073d243f add ability to change SPI speed after init 2019-09-13 00:10:35 -04:00
Ruben van Leeuwen bb020872cd Replaced the "GFX DMA IS ENABLED" pragma message (#238)
* Update Adafruit_SPITFT.cpp

* Update Adafruit_SPITFT.h
2019-07-18 12:39:49 -04:00
prenticedavid 13aaca5da1 conditional AVR macro for TFT_HARD_SPI 2019-07-03 00:58:23 +01:00
KurtE 0e92646066 Teensy T4.0 support (#232)
The Teensy T4 (__IMXRT1062__) port registers need to be 32 bits unlike the Teensy 3.x which are 8 bits.

adafruit_ili9341  and adafruit_st7735 libraries graphic test

Removed compiler warning

that PROGMEM was previously defined.  So undefine it first...

Note: Thought of simply doing nothing here
(do neither the #undef nor the #define).

But that gives compiler error

Teensy T4 - Make Bit Bang version work.

With T4, the Port/Set registers are masks not single value.

So need to setup those class variables:

Also found that bitbang of T4, was too fast for display, so put in same slow
down that ESP32 has, which gets the clock down to mayby 12.5mhz

Tried these changes out with both:
adafruit_ili9341  and adafruit_st7735 libraries graphic test

Update comments
2019-06-27 17:50:37 -04:00
Phillip Burgess 7214a0452d Appease the Travis 2019-05-29 20:42:31 -07:00
Phillip Burgess a103ad28a2 Restore hwspi._mode at the end of all DMA transfers 2019-05-17 23:32:23 -07:00
Phillip Burgess 5fa33d0020 Add hooks for SPI data mode 2019-05-17 22:25:09 -07:00
Melissa LeBlanc-Williams c555f0b217 Fixed paramter name for doxygen 2019-05-10 15:21:53 -07:00
Melissa LeBlanc-Williams 30e45c9825 Added readcommand8 to GFX 2019-05-10 15:05:33 -07:00
Phillip Burgess 0f3f657f43 SPITFT: ESP8266 fix 2019-05-03 13:59:22 -07:00
Phillip Burgess a453d081b4 SPITFT: work with any SERCOM SPIs 2019-05-03 11:36:29 -07:00
ladyada a2a0335f90 Merge branch 'master' of github.com:adafruit/Adafruit-GFX-Library 2019-04-27 16:49:21 -04:00