屏幕是 DMG12800K080_03WTC
如图,需要设置增加按钮的上限,实现不同的档位和步长调节,两个增量调节地址都是0x1120,初始step=5, 中间拖动调节也是0x1120, DGUS_ID是 +:0, -:2 拖动条:1
代码如下: 把step设置为1, max设置为10(初始为100):
uint8_t add0[] = {
0x5A, 0xA5,
0x2C, 0x82,
0x00, 0xB0,
0x5A, 0xA5,
0x00, 0x0D, // page_id
0x00, 0x02, // dgus_id con_id
0x00, 0x03,
0x00, 0x0D, // page_id
0x03, 0xE8, // Xs
0x00, 0xFA, // Ys
0x04, 0x4C, // Xe
0x01, 0x5E, // Ye
0xFF, 0x00,
0xFF, 0x00,
0xFE, 0x02,
0xFE,
0x11, 0x20, // addr
0x00,
0xFF, // ++
0x00, // stop
0x00, 0x01, // step
0x00, 0x00, // min
0x00, 0x0a, // max
0x01,
0x00, 0x00,
0x00};
uint8_t minus0[] = {
0x5A, 0xA5,
0x2C, 0x82,
0x00, 0xB0,
0x5A, 0xA5,
0x00, 0x0D,
0x02, 0x02,
0x00, 0x03,
0x00, 0x0D,
0x01, 0x18,
0x00, 0xFA,
0x01, 0x7C,
0x01, 0x5E, // Ye
0xFF, 0x00,
0xFF, 0x00,
0xFE, 0x02,
0xFE,
0x11, 0x20,
0x00,
0x00, // --
0x00,
0x00, 0x01, // step
0x00, 0x00,
0x00, 0x64, // max
0x01,
0x00, 0x00,
0x00};
uint8_t buf2[] = {
0x5A, 0xA5,
0x2B, 0x82,
0x00, 0xB0,
0x5A, 0xA5,
0x00, 0x05,
0x02, 0x02,
0x00, 0x01}; // 开启本条触控指令
UART2_SendData(minus0, sizeof(minus0));
osDelay(50);
UART2_SendData(buf2, sizeof(buf2));
osDelay(20);
UART2_SendData(add0, sizeof(add0));
osDelay(50);
出现这样的情况:
不发送buf2间隔一下的话, add0就不生效, 中间延时时间加长也没用。
然后发送buf2的话, 指令是开启触控,但是实际还是没开启。
另外单独发就没问题, 因为我程序开始的时候就把这几个触控指令关了,可以正常关; 再单独开的话也可以正常开,只是加在这个中间就不行, 但不加的话add又不生效
这里有什么需要注意的事项吗,为什么连续发就不生效了,
|