头文件找不到
软件为keil5,头文件未找到
通过FATFS文件系统读写SD卡创建文件可以了,但加入MSC,一直显示一个没有格式化的U盘盘符,也不能格式化,这是什么问题导致的
stm32f103汇编求助
cubemx 生成的freertos代码 在keil ac6下不能编译,有什么解决的方法吗
报错Could not determine GDB version using command: arm-none-eabi-gdb --version
stm32f107vct6配RTL8201例程
STM32F103VGT6 能代替 STM32F103VFT6 吗?
STM32 读取DHT20,跑的官方的例程一直读取失败,初学者,各位大佬能指点一下不
向各位大佬请教一个问题
触控IC并没有对双键按下的协议有过描述,但是触控端有一个宏定义是对多键是否可以同时按下的一个宏,这个宏用来判断触控端是否支持多个按键同时。只是说触控端长按只要对应都能发出持续的电平就认为时可以的,我用示波器测过两个按键按下不松开,每一路脉冲都有协议的起始脉冲和结束脉冲,如果长按按键不松开,一直不会触发1ms的结束脉冲,只有当松开按键的时候,才会出现结束脉冲.双键与单键长按的区别并不在触控,而在STM32F103主控端的标志位,如果一个标志位表示热水键,那么按下后延时10s热水长按标志位置1,冷水按键长按10s,冷水按键的长按标志位置1.双键长按,热水按键+冷水按键同时长按就触发了双键长按的标志位。触控端只需要判断按键按下,结束的1ms脉冲始终都不执行,只有当松开按键,结束的1ms脉冲才执行就可以了,就把这个1ms脉冲看成是触控端的结束标志位。所以问题觉得不在触控
比如1个按键发出这个协议的长度是28ms,那么做法不应该是当有2个按键按下了,会有两路脉冲输出,持续10s,10s后认为是双键长按。协议发过来,就和上面的图一样,但是会有一个结束的脉冲,比如说这个结束的脉冲是1个ms,如果我一直按下这个按键,那么这个1ms的结束脉冲在示波器上始终不会出现,只有当我松开按键的时候,这个结束脉冲出现了,那么这是单个按键长按的触发。那么双键长按我也是用两个长按的标志位,然后分别计时10s,当这两个标志位同时为1时才进入,但是这两个双键的10s定时器一直没计时。合泰触控BS83B08C支持双键长按
我已经用示波器配合代码把自定义的协议对比,协议的解码现在都已经解到了,但是两个按键的长按还是不行,执行的却是其中的一个按键长按的效果。3个按键:COLD_LEY:0XAA HOT_KEY:0XBB CHILD_KEY:0XCC 现在我要同时长按COLD_KEY和HOT_KEY,同时长按10s,执行到的效果却是HOT_KEY或者是COLD_KEY长按10s的效果
评分
查看全部评分
评分
查看全部评分
这种组合按键首先要确定触控单片机是否支持 如果只支持单个按键触发的话 再怎么修改也做不了组合按键 只有自己做了
单个按键和组合按键的处理方式不一样的 单个按键只要判断边沿或者电平就可以 组合按键的需要同时判断这两个按键的状态
首先已经确定触控的单片机可以支持多建同时按,而且用示波器看波形确实可以同时两路脉冲按下不松开一直有效,直到松开按键电平才结束。然后STM32主控端我也是用当两个按键都有效时,用另一个标志位计时10s然后置1,却始终达不到效果
触控单片机返回的信号是脉冲信号 还是协议数据
是协议数据,我已经分析过这个协议,有3个按键COLD_KEY:0XCC(25ms),HOT_KEY:0xBB(27ms),CHILD_KEY:0XAA(25ms)
波形类似于这种,我已经把这种波形进行分析,看下面的波形,一个尖波表示0,一个横平表示1.就得出主控端的码值是1010 1010(0XCC) => COLD_KEY
CHILD_KEY 解ç èå²
确定是支持同时按键的吗 如果支持的话 组合键按下会传过来另一个协议 比如0xdd这样的 那处理方式和单个按键一样的处理方式
如果不支持同时按键的话 好像无解的
要不从协议判断 50ms以内收到两种协议 可以判断是组合按键 仅供参考
版主,现在触控这边的问题解决了,现在在STM32F103主控端有这么一个问题,就是单个按键有长按和短按的功能,长按和短按的功能各不相同,短按的时间不会超过3s,长按的时间需要10s,那么我现在是长按的时候会打开短按的功能,现在不想这样做,也就是说长按的时候不会触发短按,求版主能给一个方法指导吗?
这个应该是在中断程序里加上对时间的检测,就可以区分短按或者长按。