魔方吧·中文魔方俱乐部

标题: Stackmat Pro 输出信号分析 [打印本页]

作者: 铯_猪哥恐鸣    时间: 2012-7-1 13:46:03     标题: Stackmat Pro 输出信号分析

Stackmat Pro也就是我们一般说的stackmat三代计时器(虽然经鉴定依然属于二代),其亮点也是众所周知的:计时精度精确到小数点后面第三位。

相信之前有一些魔友已经试着将Stackmat Pro与电脑上的一些软件连接了,有的能连上,有的连不上。归根结底还是输出信号结构的问题。分析Stackmat Pro信号的想法我很早就有了,可惜既没有时间,又没有设备。不过这两天我刚好有空,并且上周问小圆借来了一枚pro,昨晚+今早基本把pro的信号解出来了。

pro一共有两种信号产生模式,一种是输出它自己的信号(即有三位精度的),一种是为了兼容stackmat二代大显所产生的二代的信号(没有了第三位)。经过我的检测,这两种信号非常类似,甚至可以认为是同一种数据格式。

二代工作模式

当pro工作于二代兼容模式时,它输出的信号和二代输出的信号完全一致
回顾:stackmat二代信号分析:http://bbs.mf8-china.com/forum.php?mod=viewthread&tid=75894

pro工作模式

当pro工作于它自身的模式时,其输出信号与二代模式几乎一样,仅多了一个byte用于显示小数点后的第三位。
具体参数为:
1200波特率串口通信信号。每一帧传输8bit,低位在先,没有校验位,有起始位和结束位
整个传输过程总共传输10帧,总数据量10字节,不妨记为A0~A9。具体内容为:

A0:计时器状态,同二代信号
A1~A6:时间信息,传输的时间为:A1:A2A3.A4A5A6
A7:求和校验码。A7-64即为A1+A2+...+A6。由于pro位数更多,A7会从大写字母区(65为A开始)跨过一些符号区,一直到达小写字母区,其最大值推测为64+(9+5+9+9+9+9)=114='r'
A8A9:windows换行符<LF><CR>

相比二代,这一信号的区别在于增加了A6位来传输千分位,其它诸如A0,A8A9,校验方式均与二代完全一样。

工作模式自动切换

根据和jeremy的邮件及实际测试结果,pro会自动检测端口状态(jeremy说pro只在启动时检测,经过我的测试,pro的检测是实时的,只要端口状态改变,输出信号立刻发生变化)
When it turns on, the stackmat pro checks to see if the TRRS connector plugged into it has shorted the RS (to make it a TRS connector). If RS is shorted, then it outputs a gen2 signal. If RS are not shorted, then it will output milliseconds.

计时器兼容性
现有的几款常用的计时器,如CCT,PPT尽管很容易让它兼容pro,但这些计时器的作者似乎最近比较忙,还没有更新的意愿。所以现有的方法只是让pro在二代模式下工作,但由于pro工作模式自动切换的特点,这一条并不那么容易实现,据我所知还没有一个完美的实现方案。

附:典型信号采样
  1. 空闲状态:
  2. 010010010  1000001100  1000001100  1000001100  1000001100  1000001100  1000001100  1000000010  1001010000  10101100001
  3. I000000@
  4. 计时中:
  5. 000000100  1000101100  1000001100  1011101100  1000011100  1010101100  1010101100  1010111010  1001010000  10101100001
  6. 407855]
复制代码

作者: 肥嘟嘟左卫门    时间: 2012-7-1 14:02:14

其实我完全看不懂。
但是给顶了
作者: 任逸    时间: 2012-7-1 14:04:44

CSTimer什么时候弄个连stackmat呗...
作者: 铯_猪哥恐鸣    时间: 2012-7-1 14:05:29

任逸 发表于 2012-7-1 14:04
CSTimer什么时候弄个连stackmat呗...

我正在做这件事情。。。
作者: 深蓝Dam    时间: 2012-7-1 14:07:39

搞 程序的就是牛   啥子信号都能分析出来   我先膜拜一下  虽然我看不懂   加精了   技术帖呀
作者: 洛阳狼王    时间: 2012-7-1 14:26:14

为什么我都看不懂。                                                      
作者: meigen    时间: 2012-7-1 15:10:45

正好暑假大把时间应用在安卓计时器上…
作者: yeees    时间: 2012-7-1 15:19:09

看来我有必要用89S52单片机,再DIY一个能显示小数点后三位的大显了。。。。
作者: 通海吴    时间: 2012-7-1 15:23:00

PRO的信号也开始分析了,给赞个
作者: LAMBO    时间: 2012-7-1 16:42:44

话说cstimer出现了点BUG`````
作者: 任逸    时间: 2012-7-1 17:22:32

铯_猪哥恐鸣 发表于 2012-7-1 14:05
我正在做这件事情。。。

其实我觉得应该直接把stackmat当传感器,可以记10分+的时间...
作者: 焚寂    时间: 2012-7-1 17:27:15

太技术了吧,顶一个。。。。
作者: 无忧草    时间: 2012-7-1 17:27:54

膜拜技术宅~~~
作者: 谢老师    时间: 2012-7-1 19:03:00

随时自动检测端口状态这么牛,就为了二代兼容模式?  
作者: 深蓝Dam    时间: 2012-7-1 19:29:00

铯_猪哥恐鸣 发表于 2012-7-1 14:05
我正在做这件事情。。。

这个要是做出来  那就太好了   苦了我安个WIN 7 连接不了计时器   先支持一下
作者: ZZY7417    时间: 2012-7-3 13:42:32

什么时候计时器能连手机玩就真的爽了。。。。




欢迎光临 魔方吧·中文魔方俱乐部 (http://bbs.mf8-china.com/) Powered by Discuz! X2