reclaimerlabs / rgbmatrixpanelcpld Goto Github PK
View Code? Open in Web Editor NEWRGBmatrixPanelCPLD Particle library for 32x32 RGB LED matrix panels with Reclaimer Labs CPLD backpack.
License: MIT License
RGBmatrixPanelCPLD Particle library for 32x32 RGB LED matrix panels with Reclaimer Labs CPLD backpack.
License: MIT License
The gamma
table in gamma.h conflicts with the extern double gamma _PARAMS((double))
declaration in arm-none-eabi's math.h and compilation fails (particle must have changed something in there compilation recently, as this didn't used to be a problem). Needs a new name.
Compiler error trace:
lib/Adafruit_mfGFX/src/Adafruit_mfGFX.cpp:46:0: warning: "pgm_read_byte" redefined [enabled by default]
#define pgm_read_byte(addr) (*(const uint8_t *)(addr))
^
In file included from ../wiring/inc/spark_wiring_arduino.h:35:0,
from ./inc/application.h:92,
from lib/Adafruit_mfGFX/src/Adafruit_mfGFX.h:13,
from lib/Adafruit_mfGFX/src/Adafruit_mfGFX.cpp:42:
../wiring/inc/avr/pgmspace.h:98:0: note: this is the location of the previous definition
#define pgm_read_byte(addr) (*(const unsigned char *)(addr))
^
lib/Adafruit_mfGFX/src/Adafruit_mfGFX.cpp: In member function 'void Adafruit_GFX::drawChar(int16_t, int16_t, unsigned char, uint16_t, uint16_t, uint8_t)':
lib/Adafruit_mfGFX/src/Adafruit_mfGFX.cpp:487:7: warning: 'line' may be used uninitialized in this function [-Wmaybe-uninitialized]
if (line & 0x80) {
^
In file included from lib/RGBmatrixPanelCPLD/src/RGBmatrixPanelCPLD.cpp:46:0:
lib/RGBmatrixPanelCPLD/src/gamma.h:6:36: error: 'const uint8_t gamma []' redeclared as different kind of symbol
static const uint8_t PROGMEM gamma[] = {
^
In file included from /usr/local/gcc-arm-embedded-gcc-arm-none-eabi-4_8-2014q2-20140609-linux-tar-bz2/arm-none-eabi/include/c++/4.8.4/cmath:44:0,
from /usr/local/gcc-arm-embedded-gcc-arm-none-eabi-4_8-2014q2-20140609-linux-tar-bz2/arm-none-eabi/include/c++/4.8.4/random:38,
from ../system/inc/channel.h:12,
from ../system/inc/active_object.h:31,
from ../system/inc/system_task.h:33,
from ../wiring/inc/spark_wiring_usbserial.h:33,
from ./inc/application.h:45,
from lib/RGBmatrixPanelCPLD/src/RGBmatrixPanelCPLD.cpp:44:
/usr/local/gcc-arm-embedded-gcc-arm-none-eabi-4_8-2014q2-20140609-linux-tar-bz2/arm-none-eabi/include/math.h:296:15: error: previous declaration of 'double gamma(double)'
extern double gamma _PARAMS((double));
^
In file included from ../wiring/inc/spark_wiring_arduino.h:35:0,
from ./inc/application.h:92,
from lib/RGBmatrixPanelCPLD/src/RGBmatrixPanelCPLD.cpp:44:
lib/RGBmatrixPanelCPLD/src/RGBmatrixPanelCPLD.cpp: In member function 'uint16_t RGBmatrixPanelCPLD::Color888(uint8_t, uint8_t, uint8_t, boolean)':
lib/RGBmatrixPanelCPLD/src/RGBmatrixPanelCPLD.cpp:349:31: warning: pointer to a function used in arithmetic [-Wpointer-arith]
r = pgm_read_byte(&gamma[r]); // Gamma correction table maps
^
../wiring/inc/avr/pgmspace.h:98:55: note: in definition of macro 'pgm_read_byte'
#define pgm_read_byte(addr) (*(const unsigned char *)(addr))
^
lib/RGBmatrixPanelCPLD/src/RGBmatrixPanelCPLD.cpp:350:31: warning: pointer to a function used in arithmetic [-Wpointer-arith]
g = pgm_read_byte(&gamma[g]); // 8-bit input to 4-bit output
^
../wiring/inc/avr/pgmspace.h:98:55: note: in definition of macro 'pgm_read_byte'
#define pgm_read_byte(addr) (*(const unsigned char *)(addr))
^
lib/RGBmatrixPanelCPLD/src/RGBmatrixPanelCPLD.cpp:351:31: warning: pointer to a function used in arithmetic [-Wpointer-arith]
b = pgm_read_byte(&gamma[b]);
^
../wiring/inc/avr/pgmspace.h:98:55: note: in definition of macro 'pgm_read_byte'
#define pgm_read_byte(addr) (*(const unsigned char *)(addr))
^
lib/RGBmatrixPanelCPLD/src/RGBmatrixPanelCPLD.cpp: In member function 'uint16_t RGBmatrixPanelCPLD::ColorHSV(long int, uint8_t, uint8_t, boolean)':
lib/RGBmatrixPanelCPLD/src/RGBmatrixPanelCPLD.cpp:390:43: warning: pointer to a function used in arithmetic [-Wpointer-arith]
r = pgm_read_byte(&gamma[(r * v1) >> 8]); // Gamma correction table maps
^
../wiring/inc/avr/pgmspace.h:98:55: note: in definition of macro 'pgm_read_byte'
#define pgm_read_byte(addr) (*(const unsigned char *)(addr))
^
lib/RGBmatrixPanelCPLD/src/RGBmatrixPanelCPLD.cpp:391:43: warning: pointer to a function used in arithmetic [-Wpointer-arith]
g = pgm_read_byte(&gamma[(g * v1) >> 8]); // 8-bit input to 4-bit output
^
../wiring/inc/avr/pgmspace.h:98:55: note: in definition of macro 'pgm_read_byte'
#define pgm_read_byte(addr) (*(const unsigned char *)(addr))
^
lib/RGBmatrixPanelCPLD/src/RGBmatrixPanelCPLD.cpp:392:43: warning: pointer to a function used in arithmetic [-Wpointer-arith]
b = pgm_read_byte(&gamma[(b * v1) >> 8]);
^
../wiring/inc/avr/pgmspace.h:98:55: note: in definition of macro 'pgm_read_byte'
#define pgm_read_byte(addr) (*(const unsigned char *)(addr))
^
make[1]: *** [../build/target/user/platform-6RGBmatrixPanelCPLD/src/RGBmatrixPanelCPLD.o] Error 1
make: *** [user] Error 2
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.