Skip to content

Commit ac95106

Browse files
committed
Fix some bugs and add new sensors
1 parent 5e320b6 commit ac95106

28 files changed

+3553
-232
lines changed

examples/DMIC/DMIC_ReadData/DMIC_ReadData.cpp

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,11 +9,10 @@
99
* @Author: Xk_w
1010
* @Date: 2023-12-20 16:24:06
1111
* @LastEditors: Xk_w
12-
* @LastEditTime: 2023-12-22 14:22:25
12+
* @LastEditTime: 2024-02-28 14:19:22
1313
* @License: GPL 3.0
1414
*/
1515
#include "Arduino_DriveBus_Library.h"
16-
#include "pin_config.h"
1716

1817
#define IIS_SAMPLE_RATE 44100 // 采样速率
1918
#define IIS_DATA_BIT 16 // 数据位数

examples/IMU/LSM6DSL/LSM6DSL.cpp

Lines changed: 202 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,202 @@
1+
/*
2+
* @Description(CN):
3+
* 基于Arduino_DriveBus库的LSM6DSL陀螺仪例程
4+
* 以下是使用该款芯片需要注意的几个点:
5+
* 1. LSM6DSL在过高的性能模式下采集数据时数据波动可能会较大
6+
* 2. LSM6DSL直接读取数据时,在过低性能模式下直接读取速率时候建议做个延时,否则读取数据将会失败
7+
* 3. LSM6DSL使用时候需要进行校正,校正时请将设备正放并静止,校正顺序从陀螺仪传感器到加速度传感器
8+
*
9+
* @Description(EN):
10+
* LSM6DSL chip routine based on Arduino_DriveBus library
11+
* Here are a few points to note when using this chip:
12+
* 1.When collecting data in high-performance mode, LSM6DSL may experience significant data fluctuations.
13+
* 2.When directly reading data from LSM6DSL, it is recommended to introduce a delay in the read rate in
14+
* low-performance mode to avoid data reading failures.
15+
* 3.Calibration is required when using LSM6DSL. During calibration, ensure the device is placed upright
16+
* and stationary. The calibration sequence should start from the gyroscope sensor to the accelerometer sensor.
17+
*
18+
* @version: V1.0.0
19+
* @Author: Xk_w
20+
* @Date: 2024-02-20 17:13:03
21+
* @LastEditors: Xk_w
22+
* @LastEditTime: 2024-02-24 17:52:16
23+
* @License: GPL 3.0
24+
*/
25+
#include "Arduino_DriveBus_Library.h"
26+
#include <math.h>
27+
28+
static size_t CycleTime1 = 0;
29+
static size_t CycleTime2 = 0;
30+
31+
std::shared_ptr<Arduino_IIC_DriveBus> IIC_Bus =
32+
std::make_shared<Arduino_HWIIC>(IIC_SDA, IIC_SCL, &Wire);
33+
34+
std::unique_ptr<Arduino_IIC> LSM6DSL(new Arduino_LSM6DSL(IIC_Bus, LSM6DSL_DEVICE_ADDRESS,
35+
DRIVEBUS_DEFAULT_VALUE, DRIVEBUS_DEFAULT_VALUE));
36+
37+
void setup()
38+
{
39+
Serial.begin(115200);
40+
Serial.println("Ciallo");
41+
42+
// pinMode(LSM6DSL_IIC_ADDRESS_MODE, OUTPUT);
43+
// digitalWrite(LSM6DSL_IIC_ADDRESS_MODE, LOW); // 设置LSM6DSL的IIC地址为0x6A
44+
45+
while (LSM6DSL->begin() == false)
46+
{
47+
Serial.println("LSM6DSL initialization fail");
48+
delay(2000);
49+
}
50+
Serial.println("LSM6DSL initialization successfully");
51+
52+
// 设置加速度传感器性能模式为高性能模式
53+
LSM6DSL->IIC_Write_Device_State(LSM6DSL->Arduino_IIC_IMU::Device::IMU_ACCELERATION_POWER_MODE,
54+
LSM6DSL->Arduino_IIC_IMU::Device_Mode::IMU_DEVICE_HIGH_POWER);
55+
// 设置加速度传感器灵敏度为 ±16g
56+
LSM6DSL->IIC_Write_Device_Value(LSM6DSL->Arduino_IIC_IMU::Device_Value::IMU_ACCELERATION_SENSITIVITY,
57+
16);
58+
59+
// 设置陀螺仪传感器性能模式为高性能模式
60+
LSM6DSL->IIC_Write_Device_State(LSM6DSL->Arduino_IIC_IMU::Device::IMU_GYROSCOPE_POWER_MODE,
61+
LSM6DSL->Arduino_IIC_IMU::Device_Mode::IMU_DEVICE_HIGH_POWER);
62+
// 设置陀螺仪传感器灵敏度为 ±2000dps
63+
LSM6DSL->IIC_Write_Device_Value(LSM6DSL->Arduino_IIC_IMU::Device_Value::IMU_GYROSCOPE_SENSITIVITY,
64+
2000);
65+
66+
Serial.printf("\nStart calibrating the gyroscope and accelerometer\n");
67+
delay(1000);
68+
// 将器件静止后再校正陀螺仪传感器
69+
while (LSM6DSL->IIC_Write_Device_Value(LSM6DSL->Arduino_IIC_IMU::Device_Value::IMU_GYROSCOPE_CORRECTION,
70+
100) == false)
71+
{
72+
Serial.printf("\nLSM6DSL gyroscope correction fail\n");
73+
Serial.printf("Please ensure that the device is in a stationary state!\n\n");
74+
delay(1000);
75+
}
76+
Serial.printf("LSM6DSL gyroscope correction successfully\n");
77+
// 将器件正放静止后再校正加速度传感器
78+
// 最好在陀螺仪校正后立即进行加速度校正
79+
while (LSM6DSL->IIC_Write_Device_Value(LSM6DSL->Arduino_IIC_IMU::Device_Value::IMU_ACCELERATION_CORRECTION,
80+
100) == false)
81+
{
82+
Serial.printf("\nLSM6DSL acceleration correction fail\n");
83+
Serial.printf("Please ensure that the device is in a stationary state!\n\n");
84+
delay(1000);
85+
}
86+
Serial.printf("LSM6DSL acceleration correction successfully\n\n");
87+
delay(1000);
88+
89+
// FIFO ON
90+
// // 设置设备FIFO性能模式为高性能模式
91+
// LSM6DSL->IIC_Write_Device_State(LSM6DSL->Arduino_IIC_IMU::Device::IMU_FIFO_POWER_MODE,
92+
// LSM6DSL->Arduino_IIC_IMU::Device_Mode::IMU_DEVICE_HIGH_POWER);
93+
// // 设置设备FIFO工作模式为Bypass模式
94+
// LSM6DSL->IIC_Write_Device_State(LSM6DSL->Arduino_IIC_IMU::Device::IMU_FIFO_WORK_MODE,
95+
// LSM6DSL->Arduino_IIC_IMU::Device_Mode::IMU_FIFO_BYPASS);
96+
// // 设置设备FIFO获取数据类型为加速度和陀螺仪传感器的数据
97+
// LSM6DSL->IIC_Write_Device_State(LSM6DSL->Arduino_IIC_IMU::Device::IMU_FIFO_DATA_TYPE,
98+
// LSM6DSL->Arduino_IIC_IMU::Device_Mode::IMU_FIFO_DATA_ACCELERATION_GYROSCOPE);
99+
// // 设置加速度传感器的FIFO的抽取因子为1
100+
// LSM6DSL->IIC_Write_Device_Value(LSM6DSL->Arduino_IIC_IMU::Device_Value::IMU_FIFO_ACCELERATION_FACTOR,
101+
// 1);
102+
// // 设置陀螺仪传感器的FIFO的抽取因子为1
103+
// LSM6DSL->IIC_Write_Device_Value(LSM6DSL->Arduino_IIC_IMU::Device_Value::IMU_FIFO_GYROSCOPE_FACTOR,
104+
// 1);
105+
}
106+
void loop()
107+
{
108+
// if (millis() > CycleTime1)
109+
// {
110+
// Serial.printf("--------------------LSM6DSL--------------------\n");
111+
// Serial.printf("System running time: %d\n\n", (uint32_t)millis() / 1000);
112+
// Serial.printf("IIC_Bus.use_count(): %d\n\n", (int32_t)IIC_Bus.use_count());
113+
114+
// Serial.printf("ID: %#X \n", (int32_t)LSM6DSL->IIC_Read_Device_ID());
115+
116+
// // 只有在启动加速度或陀螺仪的时候才能查看设备温度
117+
// Serial.printf("IMU Device Temperature: %.3f ^C \n",
118+
// LSM6DSL->IIC_Read_Device_Value(LSM6DSL->Arduino_IIC_IMU::Value_Information::IMU_TEMPERATURE_VALUE));
119+
120+
// Serial.printf("--------------------LSM6DSL--------------------\n");
121+
// CycleTime1 = millis() + 5000;
122+
// }
123+
124+
if (millis() > CycleTime2)
125+
{
126+
// FIFO OFF
127+
// Arduino-IDE Serial Plotter
128+
// IMU Acceleration
129+
// 单位mg
130+
// Serial.printf("%.6f,%.6f", (float)-1200, (float)1200);
131+
// Serial.printf(",%.6f",
132+
// LSM6DSL->IIC_Read_Device_Value(LSM6DSL->Arduino_IIC_IMU::Value_Information::IMU_ACCELERATION_X_SIGNED));
133+
// delay(5);
134+
// Serial.printf(",%.6f",
135+
// LSM6DSL->IIC_Read_Device_Value(LSM6DSL->Arduino_IIC_IMU::Value_Information::IMU_ACCELERATION_Y_SIGNED));
136+
// delay(5);
137+
// Serial.printf(",%.6f",
138+
// LSM6DSL->IIC_Read_Device_Value(LSM6DSL->Arduino_IIC_IMU::Value_Information::IMU_ACCELERATION_Z_SIGNED));
139+
// delay(5);
140+
// Serial.printf("\n");
141+
142+
// g单位转化为m/s²单位
143+
// 将加速度计(g)的值乘以9.81即可将其转换为米每秒的平方
144+
// Serial.printf("%.6f,%.6f", (float)-12, (float)12);
145+
// Serial.printf(",%.6f",
146+
// LSM6DSL->IIC_Read_Device_Value(LSM6DSL->Arduino_IIC_IMU::Value_Information::IMU_ACCELERATION_X_SIGNED) / 1000 * 9.81);
147+
// delay(5);
148+
// Serial.printf(",%.6f",
149+
// LSM6DSL->IIC_Read_Device_Value(LSM6DSL->Arduino_IIC_IMU::Value_Information::IMU_ACCELERATION_Y_SIGNED) / 1000 * 9.81);
150+
// delay(5);
151+
// Serial.printf(",%.6f",
152+
// LSM6DSL->IIC_Read_Device_Value(LSM6DSL->Arduino_IIC_IMU::Value_Information::IMU_ACCELERATION_Z_SIGNED) / 1000 * 9.81);
153+
// delay(5);
154+
// Serial.printf("\n");
155+
156+
// IMU Gyroscope
157+
// 单位dps/s
158+
// Serial.printf("%.6f,%.6f", (float)-2000, (float)2000);
159+
// Serial.printf(",%.6f",
160+
// LSM6DSL->IIC_Read_Device_Value(LSM6DSL->Arduino_IIC_IMU::Value_Information::IMU_GYROSCOPE_X_SIGNED) / 1000);
161+
// delay(5);
162+
// Serial.printf(",%.6f",
163+
// LSM6DSL->IIC_Read_Device_Value(LSM6DSL->Arduino_IIC_IMU::Value_Information::IMU_GYROSCOPE_Y_SIGNED) / 1000);
164+
// delay(5);
165+
// Serial.printf(",%.6f",
166+
// LSM6DSL->IIC_Read_Device_Value(LSM6DSL->Arduino_IIC_IMU::Value_Information::IMU_GYROSCOPE_Z_SIGNED) / 1000);
167+
// delay(5);
168+
// Serial.printf("\n");
169+
170+
// dps/s单位转化为rad/s单位
171+
// 一圈等于360度或2π弧度 每秒转的度数需要乘以 π/180 来转换为弧度每秒
172+
Serial.printf("%.6f,%.6f", (float)-10, (float)10);
173+
Serial.printf(",%.6f",
174+
(acos(-1) / 180) * LSM6DSL->IIC_Read_Device_Value(LSM6DSL->Arduino_IIC_IMU::Value_Information::IMU_GYROSCOPE_X_SIGNED) / 1000);
175+
delay(10);
176+
Serial.printf(",%.6f",
177+
(acos(-1) / 180) * LSM6DSL->IIC_Read_Device_Value(LSM6DSL->Arduino_IIC_IMU::Value_Information::IMU_GYROSCOPE_Y_SIGNED) / 1000);
178+
delay(10);
179+
Serial.printf(",%.6f\n",
180+
(acos(-1) / 180) * LSM6DSL->IIC_Read_Device_Value(LSM6DSL->Arduino_IIC_IMU::Value_Information::IMU_GYROSCOPE_Z_SIGNED) / 1000);
181+
delay(10);
182+
183+
// FIFO ON
184+
// // 重启FIFO清除FIFO缓存中的数据
185+
// LSM6DSL->IIC_Write_Device_State(LSM6DSL->Arduino_IIC_IMU::Device::IMU_FIFO_WORK_MODE,
186+
// LSM6DSL->Arduino_IIC_IMU::Device_Mode::IMU_FIFO_BYPASS);
187+
// LSM6DSL->IIC_Write_Device_State(LSM6DSL->Arduino_IIC_IMU::Device::IMU_FIFO_WORK_MODE,
188+
// LSM6DSL->Arduino_IIC_IMU::Device_Mode::IMU_FIFO_NORMAL);
189+
190+
// // DATA_PATTERN 范围为0-1023
191+
// Serial.printf("%d ",
192+
// (int16_t)LSM6DSL->IIC_Read_Device_Value(LSM6DSL->Arduino_IIC_IMU::Value_Information::IMU_FIFO_DATA_PATTERN));
193+
// for (int i = 0; i < 1024; i++)
194+
// {
195+
// Serial.printf("%d ",
196+
// (int16_t)LSM6DSL->IIC_Read_Device_Value(LSM6DSL->Arduino_IIC_IMU::Value_Information::IMU_FIFO_DATA));
197+
// }
198+
// Serial.printf("\n");
199+
200+
CycleTime2 = millis() + 50;
201+
}
202+
}

examples/Power/ETA4662/ETA4662.cpp

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,11 +22,10 @@
2222
* @Author: Xk_w
2323
* @Date: 2023-11-27 10:08:51
2424
* @LastEditors: Xk_w
25-
* @LastEditTime: 2023-11-27 17:54:02
25+
* @LastEditTime: 2024-02-28 14:19:22
2626
* @License: GPL 3.0
2727
*/
2828
#include "Arduino_DriveBus_Library.h"
29-
#include "pin_config.h"
3029

3130
std::shared_ptr<Arduino_IIC_DriveBus> IIC_Bus =
3231
std::make_shared<Arduino_HWIIC>(IIC_SDA, IIC_SCL, &Wire);
@@ -68,7 +67,6 @@ void setup()
6867
ETA4662->IIC_Write_Device_Value(ETA4662->Arduino_IIC_Power::Device_Value::POWER_DEVICE_TERMINATION_PRECHARGE_CHARGING_CURRENT_LIMIT, 5);
6968
// BAT到SYS的放电电流限制设置为2200mA
7069
ETA4662->IIC_Write_Device_Value(ETA4662->Arduino_IIC_Power::Device_Value::POWER_DEVICE_BAT_TO_SYS_DISCHARGE_CURRENT_LIMIT, 2200);
71-
7270
}
7371
void loop()
7472
{

examples/Power/SY6970/SY6970.cpp

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -25,20 +25,19 @@
2525
* @Author: Xk_w
2626
* @Date: 2023-11-17 13:34:38
2727
* @LastEditors: Xk_w
28-
* @LastEditTime: 2023-11-27 17:33:55
28+
* @LastEditTime: 2024-02-28 14:19:22
2929
* @License: GPL 3.0
3030
*/
3131
#include "Arduino_DriveBus_Library.h"
32-
#include "pin_config.h"
32+
33+
static bool Temp1 = 0;
3334

3435
std::shared_ptr<Arduino_IIC_DriveBus> IIC_Bus =
3536
std::make_shared<Arduino_HWIIC>(IIC_SDA, IIC_SCL, &Wire);
3637

3738
std::unique_ptr<Arduino_IIC> SY6970(new Arduino_SY6970(IIC_Bus, SY6970_DEVICE_ADDRESS,
3839
DRIVEBUS_DEFAULT_VALUE, DRIVEBUS_DEFAULT_VALUE));
3940

40-
static bool Temp1 = 0;
41-
4241
void setup()
4342
{
4443
Serial.begin(115200);
@@ -157,4 +156,4 @@ void loop()
157156
else
158157
{
159158
}
160-
}
159+
}

examples/Touch/CST226SE/CST226SE.cpp

Lines changed: 118 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,118 @@
1+
/*
2+
* @Description(CN):
3+
* 基于Arduino_DriveBus库的CST226SE芯片例程
4+
* 以下是使用该款芯片需要注意的几个点:
5+
* 1. CST226SE暂时只能进入休眠模式而不能退出,如需退出需要重置
6+
* 2. 在使用Arduino_DriveBus库时,初始化阶段会对芯片进行一次初始化的写入数据,具体
7+
* 初始化内容可以前往芯片文件下的XXX_Initialization_Operations[]这个数组查看
8+
* 3. Arduino_DriveBus库使用枚举的方式寄存操作芯片的命令和值,具体的可执行命令已经在
9+
* 芯片文件的@Description有说明
10+
*
11+
* * @Description(EN):
12+
* CST226SE chip routine based on Arduino_DriveBus library
13+
* Here are a few points to note when using this chip:
14+
* 1. CST226SE can only enter sleep mode temporarily and cannot exit. If you need to exit, you need to reset it.
15+
* 2. When using the Arduino_DriveBus library, the chip is initialized with data during the initialization phase.
16+
* The specific initialization content can be viewed in the XXX_Initialization_Operations[] array under the chip file.
17+
* 3. The Arduino_DriveBus library uses enumerations to register commands and values for chip operations.
18+
* The specific executable commands are explained in the chip file under @Description.
19+
*
20+
* @version: V1.0.0
21+
* @Author: Xk_w
22+
* @Date: 2023-08-25 17:09:20
23+
* @LastEditors: Xk_w
24+
* @LastEditTime: 2024-02-28 14:19:22
25+
* @License: GPL 3.0
26+
*/
27+
#include "Arduino_DriveBus_Library.h"
28+
29+
static size_t CycleTime = 0;
30+
31+
std::shared_ptr<Arduino_IIC_DriveBus> IIC_Bus =
32+
std::make_shared<Arduino_HWIIC>(IIC_SDA, IIC_SCL, &Wire);
33+
34+
void Arduino_IIC_Touch_Interrupt(void);
35+
36+
std::unique_ptr<Arduino_IIC> CST226SE(new Arduino_CST2xxSE(IIC_Bus, CST226SE_DEVICE_ADDRESS,
37+
TP_RST, TP_INT, Arduino_IIC_Touch_Interrupt));
38+
39+
void Arduino_IIC_Touch_Interrupt(void)
40+
{
41+
CST226SE->IIC_Interrupt_Flag = true;
42+
}
43+
44+
void setup()
45+
{
46+
Serial.begin(115200);
47+
Serial.println("Ciallo");
48+
49+
while (CST226SE->begin() == false)
50+
{
51+
Serial.println("CST226SE initialization fail");
52+
delay(2000);
53+
}
54+
Serial.println("CST226SE initialization successfully");
55+
56+
// 中断模式为检测到手势时,发出低脉冲
57+
// CST226SE->IIC_Write_Device_State(CST226SE->Arduino_IIC_Touch::Device::TOUCH_DEVICE_INTERRUPT_MODE,
58+
// CST226SE->Arduino_IIC_Touch::Device_Mode::TOUCH_INTERRUPT_MOTION);
59+
60+
// 目前休眠功能只能进入不能退出 要退出只能系统重置
61+
// CST226SE->IIC_Write_Device_State(CST226SE->Arduino_IIC_Touch::Device::TOUCH_DEVICE_SLEEP_MODE,
62+
// CST226SE->Arduino_IIC_Touch::Device_State::TOUCH_DEVICE_ON);
63+
64+
Serial.printf("ID: %#X \n\n", (int32_t)CST226SE->IIC_Read_Device_ID());
65+
delay(1000);
66+
}
67+
68+
void loop()
69+
{
70+
Serial.printf("System running time: %d\n\n", (uint32_t)millis() / 1000);
71+
72+
if (CST226SE->IIC_Interrupt_Flag == true)
73+
{
74+
CST226SE->IIC_Interrupt_Flag = false;
75+
76+
Serial.printf("ID: %#X \n\n", (int32_t)CST226SE->IIC_Read_Device_ID());
77+
78+
Serial.printf("Fingers Number:%d\n",
79+
CST226SE->IIC_Read_Device_Value(CST226SE->Arduino_IIC_Touch::Value_Information::TOUCH_FINGER_NUMBER));
80+
Serial.printf("Touch X:%d Y:%d\n",
81+
CST226SE->IIC_Read_Device_Value(CST226SE->Arduino_IIC_Touch::Value_Information::TOUCH_COORDINATE_X),
82+
CST226SE->IIC_Read_Device_Value(CST226SE->Arduino_IIC_Touch::Value_Information::TOUCH_COORDINATE_Y));
83+
84+
Serial.printf("\nTouch X1:%d Y1:%d\n",
85+
CST226SE->IIC_Read_Device_Value(CST226SE->Arduino_IIC_Touch::Value_Information::TOUCH1_COORDINATE_X),
86+
CST226SE->IIC_Read_Device_Value(CST226SE->Arduino_IIC_Touch::Value_Information::TOUCH1_COORDINATE_Y));
87+
Serial.printf("Touch X2:%d Y2:%d\n",
88+
CST226SE->IIC_Read_Device_Value(CST226SE->Arduino_IIC_Touch::Value_Information::TOUCH2_COORDINATE_X),
89+
CST226SE->IIC_Read_Device_Value(CST226SE->Arduino_IIC_Touch::Value_Information::TOUCH2_COORDINATE_Y));
90+
Serial.printf("Touch X3:%d Y3:%d\n",
91+
CST226SE->IIC_Read_Device_Value(CST226SE->Arduino_IIC_Touch::Value_Information::TOUCH3_COORDINATE_X),
92+
CST226SE->IIC_Read_Device_Value(CST226SE->Arduino_IIC_Touch::Value_Information::TOUCH3_COORDINATE_Y));
93+
Serial.printf("Touch X4:%d Y4:%d\n",
94+
CST226SE->IIC_Read_Device_Value(CST226SE->Arduino_IIC_Touch::Value_Information::TOUCH4_COORDINATE_X),
95+
CST226SE->IIC_Read_Device_Value(CST226SE->Arduino_IIC_Touch::Value_Information::TOUCH4_COORDINATE_Y));
96+
Serial.printf("Touch X5:%d Y5:%d\n",
97+
CST226SE->IIC_Read_Device_Value(CST226SE->Arduino_IIC_Touch::Value_Information::TOUCH5_COORDINATE_X),
98+
CST226SE->IIC_Read_Device_Value(CST226SE->Arduino_IIC_Touch::Value_Information::TOUCH5_COORDINATE_Y));
99+
100+
Serial.printf("\nTouch1 Pressure Value:%d\n",
101+
CST226SE->IIC_Read_Device_Value(CST226SE->Arduino_IIC_Touch::Value_Information::TOUCH1_PRESSURE_VALUE));
102+
Serial.printf("Touch2 Pressure Value:%d\n",
103+
CST226SE->IIC_Read_Device_Value(CST226SE->Arduino_IIC_Touch::Value_Information::TOUCH2_PRESSURE_VALUE));
104+
Serial.printf("Touch3 Pressure Value:%d\n",
105+
CST226SE->IIC_Read_Device_Value(CST226SE->Arduino_IIC_Touch::Value_Information::TOUCH3_PRESSURE_VALUE));
106+
Serial.printf("Touch4 Pressure Value:%d\n",
107+
CST226SE->IIC_Read_Device_Value(CST226SE->Arduino_IIC_Touch::Value_Information::TOUCH4_PRESSURE_VALUE));
108+
Serial.printf("Touch5 Pressure Value:%d\n",
109+
CST226SE->IIC_Read_Device_Value(CST226SE->Arduino_IIC_Touch::Value_Information::TOUCH5_PRESSURE_VALUE));
110+
}
111+
112+
delay(500);
113+
114+
if (millis() > CycleTime)
115+
{
116+
CycleTime = millis() + 5000;
117+
}
118+
}

examples/Touch/CST816T/CST816T.cpp

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,11 +23,10 @@
2323
* @Author: Xk_w
2424
* @Date: 2023-08-25 17:09:20
2525
* @LastEditors: Xk_w
26-
* @LastEditTime: 2023-11-28 10:34:14
26+
* @LastEditTime: 2024-02-28 14:24:48
2727
* @License: GPL 3.0
2828
*/
2929
#include "Arduino_DriveBus_Library.h"
30-
#include "pin_config.h"
3130

3231
std::shared_ptr<Arduino_IIC_DriveBus> IIC_Bus =
3332
std::make_shared<Arduino_HWIIC>(IIC_SDA, IIC_SCL, &Wire);

0 commit comments

Comments
 (0)