Arduino入門
#include <M5Unified.h>#include "M5_ANGLE8.h" M5_ANGLE8 dev;uint32_t color_list[] = {0xff0000, 0x00ff00, 0x0000ff};uint8_t color_index = 0;time_t last_update_time = 0; void setup(){ M5.begin(); Serial.begin(115200); M5.Display.setFont(&fonts::lgfxJapanMinchoP_20); Wire.begin(2, 1, 100000L); while (!dev.begin(ANGLE8_I2C_ADDR)) { M5.Display.drawString("Unit 8Angle init Fail!", M5.Display.width() / 2, M5.Display.height() / 2); delay(1000); }} void loop(){ bool switch_status = dev.getDigitalInput(); M5.Display.clear(); M5.Display.setCursor(0, 0); M5.Display.printf("Switch: %s\r\n", switch_status ? "ON" : "OFF"); for (uint8_t i = 0; i < ANGLE8_TOTAL_ADC; i++) { uint16_t adc_v = dev.getAnalogInput(i, _12bit); M5.Display.printf("CH[%d]: %d\r\n", i, adc_v); } if (millis() - last_update_time > 1000) { color_index = (color_index + 1) % 3; for (uint8_t i = 0; i < ANGLE8_TOTAL_LED; i++) { dev.setLEDColor(i, color_list[color_index], 80); } last_update_time = millis(); } delay(100);}
CoreS3 の場合、リセットボタンを約 2 秒間長押しして、内部の緑色 LED が点灯するまで押し続けた後、ボタンを離すと、デバイスはダウンロードモードに入り、書き込み待機状態となります。
ポテンショメータとスイッチの状態を読み取り表示すると同時に、RGB LED の色を 1 秒ごとに切り替えます.