神念ThinkGear开发指南-20150610

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第一章开发工具指南..........................................................................21.Neurosky的ThinkGear介绍............................................22.接口介绍...................................................错误!未定义书签。i.ThinkGear连接程序(TGC)...............错误!未定义书签。ii.ThinkGear通信驱动(TDGC)...........错误!未定义书签。基于WindowsPC机平台的开发...........错误!未定义书签。基于WindowsMobile的开发...............错误!未定义书签。基于MACOSX平台的开发....................错误!未定义书签。基于J2ME(Symbian)手机平台的开发..错误!未定义书签。API简要说明..............................................错误!未定义书签。iii.ThinkGear流解析器.........................错误!未定义书签。附录:神念SDK简介-------------------------------------------------------------9第一章开发工具指南1.Neurosky的ThinkGear介绍关于Neurosky的ThinkGearThinkGear技术应用在了每个NeuroSky(神念科技)产品(包括MinSet)或我们的合作伙伴研发的产品中,它使得设备能与佩带者的脑电波连接起来。ThinkGear包括前额处的传感器,耳垂上的接触和参考电极及在主板上处理所有数据的芯片。原始脑电波和eSense数据(包括了集中度和放松度)都是在我们的ThinkGear芯片中计算出来的。开发指南中提供开发BCI(脑电接口)应用程序需要的文件和示例编码,这些应用程序都利用Neurosky的MinSet进行开发,适用于从PC机到微处理器的任何平台。MDT开发工具包提供了4个不同级别的接口完成MinSet耳机的通讯。他们从高级别到底级别分别为:1)ThinkGear连接程序(TGC)(Windows和MacOSX可执行文件)。2)ThinkGear通信驱动程序(TGCD)(包含了Windows,WindowsMobile,MacOSX,andJ2ME(Symbian)的库文件。)3)ThinkGear流解析器(C语言平台上的源代码)。两个更高级别的接口为Windows和MacOSX等最常见的平台提供可执行文件和二进制库文件;而最低级的流解析器接口提供了允许在任何能够收到蓝牙串行数据流的平台上开发的源代码和低级别通讯流规格。2.接口介绍i.ThinkGear连接程序(TGC)ThinkGear提供了一个连接软件,管理与连接到电脑上的耳机等ThinkGear设备之间的通讯,获取数据的话,只需要通过socket来获取就可以了。可以把连接和控制分离,但是要自己去获取socket数据并解析。支持神念传感器连接程序的平台有:WindowsMacOSXii.ThinkGear通信驱动(TDGC)ThinkGear通信驱动(TGCD)是带有一个简单API的设备驱动程序,连接计算机(或移动设备)上的应用程序和ThinkGear芯片模块/耳机之间的通讯。它可以是一个.dll文件(提供给x86和ARMV41平台),或一个.bundle文件(提供给MacOSX平台)或一个.java库(提供给J2ME/Symbian平台)。基于WindowsPC机平台的开发在WindowsPC机上开发的最简单的办法就是在Win32和WindowsMobile上使用提供的TinkGear通信驱动。文件以下开发文件需要你添加到自己的开发环境和项目里,你只需要加入你所需的语言的文件:语言项目文件(在ThinkGearCommunicationsDriver/win32/目录下)C/C++thinkgear.h和thinkgear.libC#ThinkGear.csJava(viaJNI)ThinkGear.javaAPI文档在下面的目录和文件中查找API文档:引用语言文件(在ThinkGearCommunicationsDriver/docs/目录下)TGCDAPI(doxygen)C/C++html/index.htmlTGCDAPI(javadoc)Java(viaJNI)java/index.html基于WindowsMobile的开发使用TGCD在设备运行的WindowsMobile(WinMo)上与耳机连接起来,这在本质上和WindowsPC开发是相同的,只是你需要使用不同的文件。文件以下开发文件需要你添加到自己的开发环境和项目里,你只需要加入你所需的语言的文件:语言文件(放在ThinkGearCommunicationsDriver/winmobile/目录下)C/C++thinkgear.h和thinkgear_ARMV4I.libC#ThinkGear_ARMV4I.csJava(viaJNI)NotsupportedAPI文档WinMo的API与WindowsPC上开发是相同的。基于MACOSX平台的开发文件以下开发文件需要你添加到自己的开发环境和项目里,你只需要加入你所需语言的文件:语言项目文件(在ThinkGearCommunicationsDriver/macosx/目录下)C/C++ThinkGear.bundleC#不支持Java(viaJNI)不支持API文档在OSX开发平台的API文档和在WindowsPC机上面的平台是一样的。另外,参考如何使用Xcode(MacOSX)语言下的ThinkGearAPI文件,来获得更多的关于如何使用MacOSX(在ThinkGearCommunicationsDriver/macosx/目录下)的信息。使用TGCDAPI的Cocoa/Carbon应用程序样例已经在ThinkGearAPIMacOSX样例文件(查看ThinkGearCommunicationsDriver/macosx/目录)列出。基于J2ME(Symbian)手机平台的开发Symbian设备支持的J2ME可以用MDT(ThinkGearCommunicationsDriver/j2me/目录)目录中的Java库来开发应用程序。可以到ThinkGearCommunicationsDriver/j2me/javadoc/index.html目录下查看文档API简要说明1.TG_Connect():连接2.TG_Disconnect():取消连接,调用后一些依赖函数就不可用3.TG_FreeConnection():把句柄释放掉4.TG_GetDriverVersion():获取dll版本5.TG_GetNewConnectionId():获取一个连接句柄,在后面都要用到6.TG_GetValue():读取数据,为主要功能该函数获取的数据类型包括:#defineTG_DATA_BATTERY0//应该是电量吧#defineTG_DATA_POOR_SIGNAL1//连接质量#defineTG_DATA_ATTENTION2//专注度#defineTG_DATA_MEDITATION3//冥想度#defineTG_DATA_RAW4//原始数据#defineTG_DATA_DELTA5//δ波段#defineTG_DATA_THETA6//θ脑波#defineTG_DATA_ALPHA17//α脑波#defineTG_DATA_ALPHA28//α脑波#defineTG_DATA_BETA19//β脑波#defineTG_DATA_BETA210//β脑波#defineTG_DATA_GAMMA111//γ脑波#defineTG_DATA_GAMMA212//γ脑波#defineTG_DATA_BLINK_STRENGTH37//眨眼强度7.TG_GetValueStatus():判断数据是否更新过8.TG_ReadPackets():读取若干个packet9.TG_SendByte():向耳机发送控制信息,一般不用10.TG_SetBaudrate():运行中改变波特率#defineTG_BAUD_12001200#defineTG_BAUD_24002400#defineTG_BAUD_48004800#defineTG_BAUD_96009600#defineTG_BAUD_5760057600#defineTG_BAUD_11520011520011.TG_SetDataFormat():运行中改变数据转化类型12.TG_SetDataLog():在把流转换为数据时,将自动记录这些字节数据到一个日志文件中13.TG_SetStreamLog():进行串行数据流字节的读取,将自动记录这些字节数据到一个日志文件中14.TG_WriteStreamLog()15.TG_WriteDataLog()16.TG_EnableAutoRead():开启1个后台线程,每隔1ms刷新一次17.TG_EnableBlinkDetection():控制是否开启眨眼功能18.TG_EnableLowPassFilter():对原始波形数据,驱动程序会自动应用30Hz的低通滤波器其他宏定义:#defineTG_DATA_POOR_SIGNAL1信号质量无符号的一个字节的整数值描述了神念科技NeuroSky的ThinkGear测量到的信号的强弱,它的范围值从0到200。零以外的值表示检测到了某种噪声信号。数值越高,表示测到的噪声越多。数值达到200说明神念科技NeuroSky的ThinkGear触点没有接触到用户的皮肤。#defineTG_DATA_ATTENTION2eSense“专注度Attention”指数无符号的一个字节值表明用户当前的“eSense专注度Attention指数”,即使用者精神“集中度”水平或“注意度”水平的强烈程度#defineTG_DATA_MEDITATION3eSense“冥想度Meditation“指数无符号的一个字节值表明用户当前的“eSense冥想度Meditation指数”,即使用者精神“平静度”水平或“冥想度Meditation”水平。该指数值的范围是0到100。#defineTG_DATA_RAW4原始波值raw(16位)此数值由两个字节组成,代表一个单一的原始波样品。它的值是一个从-32768到32767之间的十六位带符号整数。数值的第一个字节代表高位,第二个字节代表低位。要重建完整的原始波的值,只要简单地将第一个字节左移8个位,并且按位或第二个字节:RAWWaveValue(16-bit)shortraw=(Value[0]8)|Value[1];#defineTG_DATA_DELTA5#defineTG_DATA_THETA6#defineTG_DATA_ALPHA17#defineTG_DATA_ALPHA28#defineTG_DATA_BETA19#defineTG_DATA_BETA210#defineTG_DATA_GAMMA111#defineTG_DATA_GAMMA212以上是8种众所周知的脑电(脑波)电流强度。这个数值在小端格式中作为一系列八个3字节无符号整数输出。八种脑电功率是按如下顺序输出的:delta(0.5-2.75赫兹),theta(3.5-6.75赫兹),low-alpha(7.5-9.25赫兹),high-alpha(10-11.75赫兹),low-beta(13-16.75赫兹),high-beta(18-29.75赫兹),low-gamma(31-39

1 / 11
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功