Use .begin() and .size() as per #213

Correct `I2C::write_bytes` to accept a `const uint8_t*` for the array of bytes.
pull/240/head
Phil Howard 2022-01-25 17:49:24 +00:00
rodzic 64dbdd56e7
commit 25bebd888f
3 zmienionych plików z 3 dodań i 10 usunięć

Wyświetl plik

@ -68,7 +68,7 @@ namespace pimoroni {
return value;
}
int I2C::write_bytes(uint8_t address, uint8_t reg, uint8_t *buf, int len) {
int I2C::write_bytes(uint8_t address, uint8_t reg, const uint8_t *buf, int len) {
uint8_t buffer[len + 1];
buffer[0] = reg;
for(int x = 0; x < len; x++) {

Wyświetl plik

@ -55,7 +55,7 @@ namespace pimoroni {
int16_t reg_read_int16(uint8_t address, uint8_t reg);
uint32_t reg_read_uint32(uint8_t address, uint8_t reg);
int write_bytes(uint8_t address, uint8_t reg, uint8_t *buf, int len);
int write_bytes(uint8_t address, uint8_t reg, const uint8_t *buf, int len);
int read_bytes(uint8_t address, uint8_t reg, uint8_t *buf, int len);
uint8_t get_bits(uint8_t address, uint8_t reg, uint8_t shift, uint8_t mask=0b1);
void set_bits(uint8_t address, uint8_t reg, uint8_t shift, uint8_t mask=0b1);

Wyświetl plik

@ -77,14 +77,7 @@ namespace pimoroni {
void IS31FL3731::enable(std::initializer_list<uint8_t> pattern, uint8_t frame) {
i2c->reg_write_uint8(address, reg::BANK, frame);
uint8_t enable_buf[19];
enable_buf[0] = ENABLE_OFFSET;
uint8_t offset = 1;
for(auto byte : pattern) {
enable_buf[offset] = byte;
offset++;
}
i2c->write_blocking(address, enable_buf, sizeof(enable_buf), false);
i2c->write_bytes(address, ENABLE_OFFSET, pattern.begin(), pattern.size());
}
void IS31FL3731::set(uint8_t index, uint8_t brightness) {