diff options
author | Daniel Garcia <dgarcia@dgarcia.net> | 2018-09-09 01:14:51 +0300 |
---|---|---|
committer | Daniel Garcia <dgarcia@dgarcia.net> | 2018-09-09 01:14:51 +0300 |
commit | d7007f461fceabac086a8404ef7855032b3467ce (patch) | |
tree | b5cbd8a5d078f25911fa493199e95142e513a160 | |
parent | 6d0cc96ffbc0f4f98cd123121df0c85df86e4a4c (diff) |
Fix apa102 output for esp32 where the compiler is optimizing some of our pin writes out a little too aggressively
-rw-r--r-- | fastspi_bitbang.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/fastspi_bitbang.h b/fastspi_bitbang.h index 3add2b9c..dacdc237 100644 --- a/fastspi_bitbang.h +++ b/fastspi_bitbang.h @@ -123,6 +123,9 @@ public: //cli(); if(b & (1 << BIT)) { FastPin<DATA_PIN>::hi(); +#ifdef ESP32 + FastPin<CLOCK_PIN>::lo(); // kick a different register, block premature optimizations? +#endif FastPin<CLOCK_PIN>::hi(); CLOCK_HI_DELAY; FastPin<CLOCK_PIN>::lo(); CLOCK_LO_DELAY; } else { |