迪文科技论坛

 找回密码
 立即注册
搜索
楼主: Fred521

【提问】按压状态同步数据返回,怎么获取到按下和抬起的

[复制链接]

15

主题

29

回帖

212

积分

中级会员

Rank: 3Rank: 3

积分
212
 楼主| 发表于 2021-5-27 20:01:38 | 显示全部楼层
其他按键和图标都可以读到,就这个不行
回复

使用道具 举报

1

主题

149

回帖

2365

积分

金牌会员

Rank: 6Rank: 6

积分
2365
发表于 2021-5-27 20:20:56 | 显示全部楼层
Fred521 发表于 2021-5-27 20:01
我是单独改完再下载的

用83指令读取一下地址VP1S地址的数据,看看是不是写进去了
回复

使用道具 举报

3

主题

111

回帖

1920

积分

金牌会员

Rank: 6Rank: 6

积分
1920
发表于 2021-5-27 20:25:03 | 显示全部楼层
Fred521 发表于 2021-5-27 20:01
我是单独改完再下载的

可以考虑放三个数据变量显示控件,查看一下触控执行前和执行后 1115 5111 5112三个地址里面数据的变化。您程序中是否有清零的操作。
回复

使用道具 举报

15

主题

29

回帖

212

积分

中级会员

Rank: 3Rank: 3

积分
212
 楼主| 发表于 2021-5-27 20:36:27 | 显示全部楼层
我打印了一下数据,按下值为396,抬起为136,和22文件里写入的数据不一样
回复

使用道具 举报

3

主题

111

回帖

1920

积分

金牌会员

Rank: 6Rank: 6

积分
1920
发表于 2021-5-27 20:47:42 | 显示全部楼层
本帖最后由 dwin123456 于 2021-5-27 21:12 编辑
Fred521 发表于 2021-5-27 20:01
我是单独改完再下载的

变量地址是不是有冲突或是重叠使用。
回复

使用道具 举报

15

主题

29

回帖

212

积分

中级会员

Rank: 3Rank: 3

积分
212
 楼主| 发表于 2021-5-27 21:00:29 | 显示全部楼层
我看了,清零做了,现在22文件内的数据有问题,写入的和读取的不一致
回复

使用道具 举报

1

主题

149

回帖

2365

积分

金牌会员

Rank: 6Rank: 6

积分
2365
发表于 2021-5-27 21:51:45 | 显示全部楼层
本帖最后由 我想换个ID 于 2021-5-27 21:56 编辑
Fred521 发表于 2021-5-27 20:01
我是单独改完再下载的

感觉是程序的问题,要不连接上电脑串口,用串口助手试一下。首先要恢复到迪文原来的串口2   OS底层程序,两个BIN文件根据自己屏是否带RTC,选其一放到DWIN_SET文件夹用SD卡烧录http://inforum.dwin.com.cn:20080/forum.p ... =142&extra=page%3D1

T5L_OS_V12_DGUS2_RTC_SD2058_20210427.BIN     带RTC硬件
T5L_OS_DGUS2_V10(没有RX8130的使用).BIN            不带RTC硬件

回复

使用道具 举报

15

主题

29

回帖

212

积分

中级会员

Rank: 3Rank: 3

积分
212
 楼主| 发表于 2021-5-28 10:04:59 | 显示全部楼层
void sys_read_vp(u16 addr,u8* buf,u16 len)
{   
u8 i;
i = (u8)(addr&0x01);
addr >>= 1;
ADR_H = 0x00;
ADR_M = (u8)(addr>>8);
ADR_L = (u8)addr;
ADR_INC = 0x01;
RAMMODE = 0xAF;
while(APP_ACK==0);
while(len>0)
{   
  APP_EN=1;
  while(APP_EN==1);
  if((i==0)&&(len>0))   
  {   
   *buf++ = DATA3;
   *buf++ = DATA2;                     
   i = 1;
   len--;
  }
  if((i==1)&&(len>0))   
  {   
   *buf++ = DATA1;
   *buf++ = DATA0;                     
   i = 0;
   len--;
  }
}
RAMMODE = 0x00;
}
#define LKEY_BIT_VAL_ADDR    0xE111

sys_read_vp(LKEY_BIT_VAL_ADDR,(u8*)&btn_val,1);
if((btn_val!=0))  
{
    Light_Send_Data(btn_val);
}
btn_val = 0;
sys_write_vp(LKEY_BIT_VAL_ADDR,(u8*)&btn_val,1);
就这样的程序,很简单了,就是读取VPXS地址的数据,通过串口发送出来,和22号文件内的数据对不上。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

15

主题

29

回帖

212

积分

中级会员

Rank: 3Rank: 3

积分
212
 楼主| 发表于 2021-5-28 10:05:47 | 显示全部楼层
是VPXT的数据,写错了
回复

使用道具 举报

11

主题

79

回帖

636

积分

高级会员

Rank: 4

积分
636
发表于 2021-5-28 10:14:49 | 显示全部楼层
Fred521 发表于 2021-5-28 10:05
是VPXT的数据,写错了

地址搞错了。
湖南迪弘科技有限公司
联系人:文彧15576128088
地址:迪文湖南科技园 5栋7楼
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|迪文科技论坛 ( 京ICP备05033781号-1 )

GMT+8, 2024-10-19 00:20 , Processed in 1.943177 second(s), 17 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表