|
1 | 1 |
|
2 | | -#include <M5StickCPlus.h> |
3 | | -#include "Unit_MiniEncoderC.h" |
| 2 | +#include "M5Unified.h" |
| 3 | +#include "M5HatMiniEncoderC.h" |
4 | 4 |
|
5 | | -TFT_eSprite tftSprite = TFT_eSprite(&M5.Lcd); |
6 | | -UNIT_MINIENCODERC sensor; |
| 5 | +M5Canvas canvas(&M5.Lcd); |
| 6 | +M5HatMiniEncoderC encoder; |
7 | 7 |
|
8 | | -uint16_t delay_time = 0; |
9 | | -int32_t last_value = 0; |
| 8 | +int32_t last_value = 0; |
10 | 9 |
|
11 | 10 | uint8_t i2c_address = 0; |
12 | 11 |
|
13 | 12 | void page_get_encoder(void) { |
14 | | - int32_t encoder_value = sensor.getEncoderValue(); |
15 | | - bool btn_status = sensor.getButtonStatus(); |
| 13 | + int32_t encoder_value = encoder.getEncoderValue(); |
| 14 | + bool btn_status = encoder.getButtonStatus(); |
16 | 15 | Serial.println(encoder_value); |
17 | 16 | if (last_value != encoder_value) { |
18 | 17 | if (last_value > encoder_value) { |
19 | | - sensor.setLEDColor(1, 0x000011); |
| 18 | + encoder.setLEDColor(0x000011); // Blue |
20 | 19 | } else { |
21 | | - sensor.setLEDColor(2, 0x110000); |
| 20 | + encoder.setLEDColor(0x110000); // Red |
22 | 21 | } |
23 | 22 | last_value = encoder_value; |
24 | 23 | } else { |
25 | | - // sensor.setLEDColor(0, 0x001100); |
| 24 | + // encoder.setLEDColor(0x001100); |
26 | 25 | } |
27 | 26 | if (!btn_status) { |
28 | | - sensor.setLEDColor(0, 0x001100); |
| 27 | + encoder.setLEDColor(0x001100); |
29 | 28 | } |
30 | | - tftSprite.fillRect(0, 0, 135, 90, BLACK); |
31 | | - tftSprite.setTextColor(WHITE); |
32 | | - tftSprite.drawString("BTN:" + String(btn_status), 10, 10); |
33 | | - tftSprite.drawString("ENCODER:", 10, 40); |
34 | | - tftSprite.setCursor(10, 65); |
35 | | - tftSprite.setTextColor(GREEN); |
36 | | - tftSprite.printf("%d", encoder_value); |
37 | | - tftSprite.setTextColor(WHITE); |
38 | | - tftSprite.drawString("btnA:", 10, 120); |
39 | | - tftSprite.setTextColor(ORANGE); |
40 | | - tftSprite.drawString("get inc", 10, 150); |
41 | | - tftSprite.setTextColor(WHITE); |
42 | | - tftSprite.drawString("btnB:", 10, 180); |
43 | | - tftSprite.setTextColor(ORANGE); |
44 | | - tftSprite.drawString("reset", 10, 210); |
45 | | - tftSprite.pushSprite(0, 0); |
| 29 | + canvas.fillRect(0, 0, 135, 90, BLACK); |
| 30 | + canvas.setTextColor(WHITE); |
| 31 | + canvas.drawString("BTN:" + String(btn_status), 10, 10); |
| 32 | + canvas.drawString("ENCODER:", 10, 40); |
| 33 | + canvas.setCursor(10, 65); |
| 34 | + canvas.setTextColor(GREEN); |
| 35 | + canvas.printf("%d", encoder_value); |
| 36 | + canvas.setTextColor(WHITE); |
| 37 | + canvas.drawString("btnA:", 10, 120); |
| 38 | + canvas.setTextColor(ORANGE); |
| 39 | + canvas.drawString("get inc", 10, 150); |
| 40 | + canvas.setTextColor(WHITE); |
| 41 | + canvas.drawString("btnB:", 10, 180); |
| 42 | + canvas.setTextColor(ORANGE); |
| 43 | + canvas.drawString("reset", 10, 210); |
| 44 | + canvas.pushSprite(0, 0); |
46 | 45 | } |
47 | 46 |
|
48 | 47 | void get_inc_value(void) { |
49 | | - int32_t inc_value = sensor.getIncrementValue(); |
| 48 | + int32_t inc_value = encoder.getIncrementValue(); |
50 | 49 | Serial.printf("Inc:%d", inc_value); |
51 | 50 | } |
52 | 51 |
|
53 | 52 | void setup() { |
54 | 53 | M5.begin(); // Init M5Stack. 初始化M5Stack |
55 | | - sensor.begin(&Wire, MINIENCODERC_ADDR, 0, 26, 100000UL); |
56 | | - tftSprite.setRotation(1); |
57 | | - tftSprite.createSprite(135, 240); |
58 | | - tftSprite.setTextSize(2); |
59 | | - delay_time = 20; |
60 | | - i2c_address = sensor.getI2CAddress(); |
61 | | - // sensor.setEncoderValue(97900); |
| 54 | + encoder.begin(&Wire, MiniEncoderC_ADDR, 0, 26, 100000UL); |
| 55 | + canvas.setRotation(0); |
| 56 | + canvas.createSprite(135, 240); |
| 57 | + canvas.setTextSize(2); |
| 58 | + i2c_address = encoder.getI2CAddress(); |
| 59 | + // encoder.setEncoderValue(0); |
62 | 60 | } |
63 | 61 |
|
64 | 62 | void loop() { |
65 | 63 | M5.update(); |
66 | 64 | if (M5.BtnA.wasPressed()) { |
67 | 65 | get_inc_value(); |
68 | 66 | } else if (M5.BtnB.wasPressed()) { |
69 | | - sensor.resetCounter(); |
| 67 | + encoder.resetCounter(); |
70 | 68 | } |
71 | 69 | page_get_encoder(); |
72 | 70 | } |
0 commit comments