I am trying to take the names of the colours and thee RGB value from the following website store it into a library so as to make my RGB led blink all of those colours. Is there any way i could do it?
The link to the website : Color Names — HTML Color Codes
If you show the source of the HTML you could copy the table definitions
<td class="color-table__cell color-table__cell--name">IndianRed</td>
<td class="color-table__cell color-table__cell--hex">#CD5C5C</td>
<td class="color-table__cell color-table__cell--rgb">rgb(205, 92, 92)</td>
</tr>
<tr class="color-table__row">
<td class="color-table__cell color-table__cell--color">
<div class="color-table__color js-color" style="background-color: #F08080;" data-hex="#F08080" data-rgb="rgb(240, 128, 128)" data-hsl="hsl(0, 79%, 72%)"></div>
</td>
<td class="color-table__cell color-table__cell--name">LightCoral</td>
<td class="color-table__cell color-table__cell--hex">#F08080</td>
<td class="color-table__cell color-table__cell--rgb">rgb(240, 128, 128)</td>
</tr>
<tr class="color-table__row">
<td class="color-table__cell color-table__cell--color">
<div class="color-table__color js-color" style="background-color: #FA8072;" data-hex="#FA8072" data-rgb="rgb(250, 128, 114)" data-hsl="hsl(6, 93%, 71%)"></div>
</td>
<td class="color-table__cell color-table__cell--name">Salmon</td>
<td class="color-table__cell color-table__cell--hex">#FA8072</td>
<td class="color-table__cell color-table__cell--rgb">rgb(250, 128, 114)</td>
</tr>
Some work with a text editor would enable you to extract the name, hex value and RGB values for each colour in a format amenable to putting the values into an array of structs for use by your library. How good are you at using a text editor and maybe regular expressions ?
You can simply use a header (or even .INO) file filled up with
#define IndianRed 0xCD5C5CUL
etc.
The code for the color, minus the '#' is simply the Hexadecimal representation of RGB
CD for Red (205)
5C for Green (92)
5C for Blue (92)
so to use it in a sketch you have to add '0x' in front to make sure it is recognized as Hexadecimal, and 'UL' behind to make sure it is treated as an 'Unsigned Long'
Rather than look at the HTML, just copy the text into an editor. You will have to convert this into something suitable for your code
NAME HEX CODE RGB CODE
IndianRed #CD5C5C rgb(205, 92, 92)
LightCoral #F08080 rgb(240, 128, 128)
Salmon #FA8072 rgb(250, 128, 114)
DarkSalmon #E9967A rgb(233, 150, 122)
LightSalmon #FFA07A rgb(255, 160, 122)
Crimson #DC143C rgb(220, 20, 60)
Red #FF0000 rgb(255, 0, 0)
FireBrick #B22222 rgb(178, 34, 34)
DarkRed #8B0000 rgb(139, 0, 0)
Pink #FFC0CB rgb(255, 192, 203)
LightPink #FFB6C1 rgb(255, 182, 193)
HotPink #FF69B4 rgb(255, 105, 180)
DeepPink #FF1493 rgb(255, 20, 147)
MediumVioletRed #C71585 rgb(199, 21, 133)
PaleVioletRed #DB7093 rgb(219, 112, 147)
LightSalmon #FFA07A rgb(255, 160, 122)
Coral #FF7F50 rgb(255, 127, 80)
Tomato #FF6347 rgb(255, 99, 71)
OrangeRed #FF4500 rgb(255, 69, 0)
DarkOrange #FF8C00 rgb(255, 140, 0)
Orange #FFA500 rgb(255, 165, 0)
Gold #FFD700 rgb(255, 215, 0)
Yellow #FFFF00 rgb(255, 255, 0)
LightYellow #FFFFE0 rgb(255, 255, 224)
LemonChiffon #FFFACD rgb(255, 250, 205)
LightGoldenrodYellow #FAFAD2 rgb(250, 250, 210)
PapayaWhip #FFEFD5 rgb(255, 239, 213)
Moccasin #FFE4B5 rgb(255, 228, 181)
PeachPuff #FFDAB9 rgb(255, 218, 185)
PaleGoldenrod #EEE8AA rgb(238, 232, 170)
Khaki #F0E68C rgb(240, 230, 140)
DarkKhaki #BDB76B rgb(189, 183, 107)
Lavender #E6E6FA rgb(230, 230, 250)
Thistle #D8BFD8 rgb(216, 191, 216)
Plum #DDA0DD rgb(221, 160, 221)
Violet #EE82EE rgb(238, 130, 238)
Orchid #DA70D6 rgb(218, 112, 214)
Fuchsia #FF00FF rgb(255, 0, 255)
Magenta #FF00FF rgb(255, 0, 255)
MediumOrchid #BA55D3 rgb(186, 85, 211)
MediumPurple #9370DB rgb(147, 112, 219)
RebeccaPurple #663399 rgb(102, 51, 153)
BlueViolet #8A2BE2 rgb(138, 43, 226)
DarkViolet #9400D3 rgb(148, 0, 211)
DarkOrchid #9932CC rgb(153, 50, 204)
DarkMagenta #8B008B rgb(139, 0, 139)
Purple #800080 rgb(128, 0, 128)
Indigo #4B0082 rgb(75, 0, 130)
SlateBlue #6A5ACD rgb(106, 90, 205)
DarkSlateBlue #483D8B rgb(72, 61, 139)
MediumSlateBlue #7B68EE rgb(123, 104, 238)
GreenYellow #ADFF2F rgb(173, 255, 47)
Chartreuse #7FFF00 rgb(127, 255, 0)
LawnGreen #7CFC00 rgb(124, 252, 0)
Lime #00FF00 rgb(0, 255, 0)
LimeGreen #32CD32 rgb(50, 205, 50)
PaleGreen #98FB98 rgb(152, 251, 152)
LightGreen #90EE90 rgb(144, 238, 144)
MediumSpringGreen #00FA9A rgb(0, 250, 154)
SpringGreen #00FF7F rgb(0, 255, 127)
MediumSeaGreen #3CB371 rgb(60, 179, 113)
SeaGreen #2E8B57 rgb(46, 139, 87)
ForestGreen #228B22 rgb(34, 139, 34)
Green #008000 rgb(0, 128, 0)
DarkGreen #006400 rgb(0, 100, 0)
YellowGreen #9ACD32 rgb(154, 205, 50)
OliveDrab #6B8E23 rgb(107, 142, 35)
Olive #808000 rgb(128, 128, 0)
DarkOliveGreen #556B2F rgb(85, 107, 47)
MediumAquamarine #66CDAA rgb(102, 205, 170)
DarkSeaGreen #8FBC8B rgb(143, 188, 139)
LightSeaGreen #20B2AA rgb(32, 178, 170)
DarkCyan #008B8B rgb(0, 139, 139)
Teal #008080 rgb(0, 128, 128)
Aqua #00FFFF rgb(0, 255, 255)
Cyan #00FFFF rgb(0, 255, 255)
LightCyan #E0FFFF rgb(224, 255, 255)
PaleTurquoise #AFEEEE rgb(175, 238, 238)
Aquamarine #7FFFD4 rgb(127, 255, 212)
Turquoise #40E0D0 rgb(64, 224, 208)
MediumTurquoise #48D1CC rgb(72, 209, 204)
DarkTurquoise #00CED1 rgb(0, 206, 209)
CadetBlue #5F9EA0 rgb(95, 158, 160)
SteelBlue #4682B4 rgb(70, 130, 180)
LightSteelBlue #B0C4DE rgb(176, 196, 222)
PowderBlue #B0E0E6 rgb(176, 224, 230)
LightBlue #ADD8E6 rgb(173, 216, 230)
SkyBlue #87CEEB rgb(135, 206, 235)
LightSkyBlue #87CEFA rgb(135, 206, 250)
DeepSkyBlue #00BFFF rgb(0, 191, 255)
DodgerBlue #1E90FF rgb(30, 144, 255)
CornflowerBlue #6495ED rgb(100, 149, 237)
MediumSlateBlue #7B68EE rgb(123, 104, 238)
RoyalBlue #4169E1 rgb(65, 105, 225)
Blue #0000FF rgb(0, 0, 255)
MediumBlue #0000CD rgb(0, 0, 205)
DarkBlue #00008B rgb(0, 0, 139)
Navy #000080 rgb(0, 0, 128)
MidnightBlue #191970 rgb(25, 25, 112)
Cornsilk #FFF8DC rgb(255, 248, 220)
BlanchedAlmond #FFEBCD rgb(255, 235, 205)
Bisque #FFE4C4 rgb(255, 228, 196)
NavajoWhite #FFDEAD rgb(255, 222, 173)
Wheat #F5DEB3 rgb(245, 222, 179)
BurlyWood #DEB887 rgb(222, 184, 135)
Tan #D2B48C rgb(210, 180, 140)
RosyBrown #BC8F8F rgb(188, 143, 143)
SandyBrown #F4A460 rgb(244, 164, 96)
Goldenrod #DAA520 rgb(218, 165, 32)
DarkGoldenrod #B8860B rgb(184, 134, 11)
Peru #CD853F rgb(205, 133, 63)
Chocolate #D2691E rgb(210, 105, 30)
SaddleBrown #8B4513 rgb(139, 69, 19)
Sienna #A0522D rgb(160, 82, 45)
Brown #A52A2A rgb(165, 42, 42)
Maroon #800000 rgb(128, 0, 0)
White #FFFFFF rgb(255, 255, 255)
Snow #FFFAFA rgb(255, 250, 250)
HoneyDew #F0FFF0 rgb(240, 255, 240)
MintCream #F5FFFA rgb(245, 255, 250)
Azure #F0FFFF rgb(240, 255, 255)
AliceBlue #F0F8FF rgb(240, 248, 255)
GhostWhite #F8F8FF rgb(248, 248, 255)
WhiteSmoke #F5F5F5 rgb(245, 245, 245)
SeaShell #FFF5EE rgb(255, 245, 238)
Beige #F5F5DC rgb(245, 245, 220)
OldLace #FDF5E6 rgb(253, 245, 230)
FloralWhite #FFFAF0 rgb(255, 250, 240)
Ivory #FFFFF0 rgb(255, 255, 240)
AntiqueWhite #FAEBD7 rgb(250, 235, 215)
Linen #FAF0E6 rgb(250, 240, 230)
LavenderBlush #FFF0F5 rgb(255, 240, 245)
MistyRose #FFE4E1 rgb(255, 228, 225)
Gainsboro #DCDCDC rgb(220, 220, 220)
LightGray #D3D3D3 rgb(211, 211, 211)
Silver #C0C0C0 rgb(192, 192, 192)
DarkGray #A9A9A9 rgb(169, 169, 169)
Gray #808080 rgb(128, 128, 128)
DimGray #696969 rgb(105, 105, 105)
LightSlateGray #778899 rgb(119, 136, 153)
SlateGray #708090 rgb(112, 128, 144)
DarkSlateGray #2F4F4F rgb(47, 79, 79)
Black #000000 rgb(0, 0, 0)
Color.hpp
#pragma once
#include <stdint.h> // uint8_t, uint32_t
struct Color {
uint8_t r = 0, g = 0, b = 0;
constexpr Color() = default;
constexpr Color(uint8_t r, uint8_t g, uint8_t b) : r(r), g(g), b(b) {}
constexpr explicit Color(uint32_t c) : r(c >> 16), g(c >> 8), b(c >> 0) {}
constexpr explicit operator uint32_t() const {
return (uint32_t(r) << 16) | (uint32_t(g) << 8) | (uint32_t(b) << 0);
}
};
namespace Colors {
constexpr Color IndianRed { 205, 92, 92 };
constexpr Color LightCoral { 240, 128, 128 };
constexpr Color Salmon { 250, 128, 114 };
constexpr Color DarkSalmon { 233, 150, 122 };
constexpr Color LightSalmon { 255, 160, 122 };
constexpr Color Crimson { 220, 20, 60 };
constexpr Color Red { 255, 0, 0 };
constexpr Color FireBrick { 178, 34, 34 };
constexpr Color DarkRed { 139, 0, 0 };
constexpr Color Pink { 255, 192, 203 };
constexpr Color LightPink { 255, 182, 193 };
constexpr Color HotPink { 255, 105, 180 };
constexpr Color DeepPink { 255, 20, 147 };
constexpr Color MediumVioletRed { 199, 21, 133 };
constexpr Color PaleVioletRed { 219, 112, 147 };
constexpr Color Coral { 255, 127, 80 };
constexpr Color Tomato { 255, 99, 71 };
constexpr Color OrangeRed { 255, 69, 0 };
constexpr Color DarkOrange { 255, 140, 0 };
constexpr Color Orange { 255, 165, 0 };
constexpr Color Gold { 255, 215, 0 };
constexpr Color Yellow { 255, 255, 0 };
constexpr Color LightYellow { 255, 255, 224 };
constexpr Color LemonChiffon { 255, 250, 205 };
constexpr Color LightGoldenrodYellow { 250, 250, 210 };
constexpr Color PapayaWhip { 255, 239, 213 };
constexpr Color Moccasin { 255, 228, 181 };
constexpr Color PeachPuff { 255, 218, 185 };
constexpr Color PaleGoldenrod { 238, 232, 170 };
constexpr Color Khaki { 240, 230, 140 };
constexpr Color DarkKhaki { 189, 183, 107 };
constexpr Color Lavender { 230, 230, 250 };
constexpr Color Thistle { 216, 191, 216 };
constexpr Color Plum { 221, 160, 221 };
constexpr Color Violet { 238, 130, 238 };
constexpr Color Orchid { 218, 112, 214 };
constexpr Color Fuchsia { 255, 0, 255 };
constexpr Color Magenta { 255, 0, 255 };
constexpr Color MediumOrchid { 186, 85, 211 };
constexpr Color MediumPurple { 147, 112, 219 };
constexpr Color RebeccaPurple { 102, 51, 153 };
constexpr Color BlueViolet { 138, 43, 226 };
constexpr Color DarkViolet { 148, 0, 211 };
constexpr Color DarkOrchid { 153, 50, 204 };
constexpr Color DarkMagenta { 139, 0, 139 };
constexpr Color Purple { 128, 0, 128 };
constexpr Color Indigo { 75, 0, 130 };
constexpr Color SlateBlue { 106, 90, 205 };
constexpr Color DarkSlateBlue { 72, 61, 139 };
constexpr Color MediumSlateBlue { 123, 104, 238 };
constexpr Color GreenYellow { 173, 255, 47 };
constexpr Color Chartreuse { 127, 255, 0 };
constexpr Color LawnGreen { 124, 252, 0 };
constexpr Color Lime { 0, 255, 0 };
constexpr Color LimeGreen { 50, 205, 50 };
constexpr Color PaleGreen { 152, 251, 152 };
constexpr Color LightGreen { 144, 238, 144 };
constexpr Color MediumSpringGreen { 0, 250, 154 };
constexpr Color SpringGreen { 0, 255, 127 };
constexpr Color MediumSeaGreen { 60, 179, 113 };
constexpr Color SeaGreen { 46, 139, 87 };
constexpr Color ForestGreen { 34, 139, 34 };
constexpr Color Green { 0, 128, 0 };
constexpr Color DarkGreen { 0, 100, 0 };
constexpr Color YellowGreen { 154, 205, 50 };
constexpr Color OliveDrab { 107, 142, 35 };
constexpr Color Olive { 128, 128, 0 };
constexpr Color DarkOliveGreen { 85, 107, 47 };
constexpr Color MediumAquamarine { 102, 205, 170 };
constexpr Color DarkSeaGreen { 143, 188, 139 };
constexpr Color LightSeaGreen { 32, 178, 170 };
constexpr Color DarkCyan { 0, 139, 139 };
constexpr Color Teal { 0, 128, 128 };
constexpr Color Aqua { 0, 255, 255 };
constexpr Color Cyan { 0, 255, 255 };
constexpr Color LightCyan { 224, 255, 255 };
constexpr Color PaleTurquoise { 175, 238, 238 };
constexpr Color Aquamarine { 127, 255, 212 };
constexpr Color Turquoise { 64, 224, 208 };
constexpr Color MediumTurquoise { 72, 209, 204 };
constexpr Color DarkTurquoise { 0, 206, 209 };
constexpr Color CadetBlue { 95, 158, 160 };
constexpr Color SteelBlue { 70, 130, 180 };
constexpr Color LightSteelBlue { 176, 196, 222 };
constexpr Color PowderBlue { 176, 224, 230 };
constexpr Color LightBlue { 173, 216, 230 };
constexpr Color SkyBlue { 135, 206, 235 };
constexpr Color LightSkyBlue { 135, 206, 250 };
constexpr Color DeepSkyBlue { 0, 191, 255 };
constexpr Color DodgerBlue { 30, 144, 255 };
constexpr Color CornflowerBlue { 100, 149, 237 };
constexpr Color RoyalBlue { 65, 105, 225 };
constexpr Color Blue { 0, 0, 255 };
constexpr Color MediumBlue { 0, 0, 205 };
constexpr Color DarkBlue { 0, 0, 139 };
constexpr Color Navy { 0, 0, 128 };
constexpr Color MidnightBlue { 25, 25, 112 };
constexpr Color Cornsilk { 255, 248, 220 };
constexpr Color BlanchedAlmond { 255, 235, 205 };
constexpr Color Bisque { 255, 228, 196 };
constexpr Color NavajoWhite { 255, 222, 173 };
constexpr Color Wheat { 245, 222, 179 };
constexpr Color BurlyWood { 222, 184, 135 };
constexpr Color Tan { 210, 180, 140 };
constexpr Color RosyBrown { 188, 143, 143 };
constexpr Color SandyBrown { 244, 164, 96 };
constexpr Color Goldenrod { 218, 165, 32 };
constexpr Color DarkGoldenrod { 184, 134, 11 };
constexpr Color Peru { 205, 133, 63 };
constexpr Color Chocolate { 210, 105, 30 };
constexpr Color SaddleBrown { 139, 69, 19 };
constexpr Color Sienna { 160, 82, 45 };
constexpr Color Brown { 165, 42, 42 };
constexpr Color Maroon { 128, 0, 0 };
constexpr Color White { 255, 255, 255 };
constexpr Color Snow { 255, 250, 250 };
constexpr Color HoneyDew { 240, 255, 240 };
constexpr Color MintCream { 245, 255, 250 };
constexpr Color Azure { 240, 255, 255 };
constexpr Color AliceBlue { 240, 248, 255 };
constexpr Color GhostWhite { 248, 248, 255 };
constexpr Color WhiteSmoke { 245, 245, 245 };
constexpr Color SeaShell { 255, 245, 238 };
constexpr Color Beige { 245, 245, 220 };
constexpr Color OldLace { 253, 245, 230 };
constexpr Color FloralWhite { 255, 250, 240 };
constexpr Color Ivory { 255, 255, 240 };
constexpr Color AntiqueWhite { 250, 235, 215 };
constexpr Color Linen { 250, 240, 230 };
constexpr Color LavenderBlush { 255, 240, 245 };
constexpr Color MistyRose { 255, 228, 225 };
constexpr Color Gainsboro { 220, 220, 220 };
constexpr Color LightGray { 211, 211, 211 };
constexpr Color Silver { 192, 192, 192 };
constexpr Color DarkGray { 169, 169, 169 };
constexpr Color Gray { 128, 128, 128 };
constexpr Color DimGray { 105, 105, 105 };
constexpr Color LightSlateGray { 119, 136, 153 };
constexpr Color SlateGray { 112, 128, 144 };
constexpr Color DarkSlateGray { 47, 79, 79 };
constexpr Color Black { 0, 0, 0 };
} // namespace Colors
Sketch.ino
#include "Color.hpp"
void setup() {
Serial.begin(115200);
while (!Serial);
Serial.print("SteelBlue: #");
Serial.print(uint32_t(Colors::SteelBlue), HEX);
Serial.print(" rgb(");
Serial.print(Colors::SteelBlue.r);
Serial.print(", ");
Serial.print(Colors::SteelBlue.g);
Serial.print(", ");
Serial.print(Colors::SteelBlue.b);
Serial.println(")");
}
void loop() {}
Output
SteelBlue: #4682B4 rgb(70, 130, 180)
I get an error when trying to compile this within the IDE but it doesn't seem like the include is required
//#include <cstdint> // uint8_t, uint32_t
...
Ah yes, <cstdint> is unavailable on AVR, you can include <stdint.h> instead, but if you only use it in your main sketch, you don't really need it (the sketch automatically includes <Arduino.h> which includes <stdint.h>).
I'll fix it in my previous post.
Do you mean Color.cpp? Sorry, but i am new to Arduino. Thanks.
No, Color.hpp is correct, it's a file you have to create yourself, either as part of your library, or as a tab in the Arduino IDE.
.hpp is the extension used for C++ header files.