diff --git a/src/LCDDisplay.cpp b/src/LCDDisplay.cpp index 78bed28..46fcf94 100644 --- a/src/LCDDisplay.cpp +++ b/src/LCDDisplay.cpp @@ -85,9 +85,8 @@ void LCDDisplay::setCursor(uint8_t row, uint8_t col) { } void LCDDisplay::setCustomChar(uint8_t index, std::array cchar) { - uint8_t cmdbuf[11] = {254, 78, index, 0, 0, 0, 0, 0, 0, 0, 0}; - for (uint8_t i = 0; i < 8; i++) - cmdbuf[i + 3] = cchar[i]; + uint8_t cmdbuf[] = {254, 78, index, 0, 0, 0, 0, 0, 0, 0, 0}; + std::memcpy(&cmdbuf[3], &cchar, cchar.size()); ::write(_lcd, &cmdbuf, 11); }