TGC是一个后台应用程序,它负责和脑波设备建立连接,并获取数据,另一方面,它打开了一个端口在监听,让二次开发的应用程序,可以通过socket连接到这个TGC后台程序,获取脑波数据并展示,这种接口适合非常高级的语言开发的游戏或者是其他应用,比如用flash来开发的游戏。这里演示还是用c语言,演示连接端口以及获取数据的方法。

演示代码如下:

/******************************************************************* *  Copyright(c) 2014-2015 传智播客 *  All rights reserved. *   *  文件名称: main.cpp*  简要描述: 该文件演示了脑波程序通过TGC与设备通信*   *  创建日期: 2014-02-03*  作者: *  说明: 1.0*   *  修改日期: *  作者: *  说明: ******************************************************************/
#include <WinSock2.h>
#include <stdio.h>
#include <json.h>extern char* SHA1(const unsigned char *pIn, char *pOut, int nOutLen);int main()
{// 初始化socket环境WORD wVersionRequested;WSADATA wsaData;int err;wVersionRequested = MAKEWORD(2, 2);err = WSAStartup(wVersionRequested, &wsaData);if (err != 0) {printf("WSAStartup failed with error: %d\n", err);return 1;}if (LOBYTE(wsaData.wVersion) != 2 || HIBYTE(wsaData.wVersion) != 2) {/* Tell the user that we could not find a usable *//* WinSock DLL.                                  */printf("Could not find a usable version of Winsock.dll\n");WSACleanup();return 1;}elseprintf("The Winsock 2.2 dll was found okay\n");// 连接thinkgear,端口是13854SOCKET sock = socket(AF_INET, SOCK_STREAM, 0);sockaddr_in addr;addr.sin_family = AF_INET;addr.sin_addr.S_un.S_addr = inet_addr("127.0.0.1");addr.sin_port = htons(13854);int ret = connect(sock, (const sockaddr*)&addr, sizeof(addr));if(ret < 0){printf("connect error\n");return 0;}// 与TGC通信的数据格式是json包,具体的json包格式可以参考开发文档Json::FastWriter writer;Json::Reader reader;Json::Value packet;std::string str;// 设置TGC 服务packet.clear();packet["enableRawOutput"] = false; // 不要原始数据packet["format"] = "Json";          // 数据格式为json
//  root.append(packet);str = writer.write(packet);printf("json=%s\n", str.c_str());ret = send(sock, str.c_str(), str.length(), 0);  // 发送数据给TGCprintf("ret=%d\n", ret);char buf[2048]={0};while(1){int index = 0;memset(buf, 0, sizeof(buf));//Sleep(1000);while(1){ret  = recv(sock, &buf[index], 1, 0);  // 收报文,\r为报文结束标记if(ret > 0){if(buf[index] == '\r'){buf[index] = 0;break;}index++;}}// 分析json数据包reader.parse(buf, packet);// 输出json报文printf("%s\n", writer.write(packet).c_str());// 输出脑波数据str = writer.write(packet);if(strstr(str.c_str(), "eSense")){printf("%s\n", str.c_str());  // system("pause");}// 输出眨眼数据,用TGC接口可以获取用户是否眨眼if(strstr(str.c_str(), "blink")){printf("%s\n", str.c_str());    system("pause");}}system("pause");return 0;
}

脑波设备mindwaveTGC接口示例相关推荐

  1. 脑波设备mindwave TGCD接口开发示例

    对于TGCD的开发,神念科技提供的文件包括,头文件thinkgear.h,thinkgear.lib,thinkgear.dll,有这三个文件,在win32下开发就不是什么难事了吧 如果是java语言 ...

  2. 脑波设备mindwave二次开发框架

    神念科技提供的mindwave提供了脑波耳机和相应的游戏,这些游戏你可以通过购买神念科技的mindwave耳机来获取,这里不多作介绍. 我们作为程序员,如果有了相应的创意,也可以通过他们提供的二次开发 ...

  3. 脑波设备mindwave介绍

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 脑波,又 ...

  4. 用意念就能控制的操作系统?这家华人团队做的脑机接口,3个电极实现脑波成像...

    萧箫 发自 凹非寺 量子位 报道 | 公众号 QbitAI 脑机接口,又有了新成果. 8月27日,华人脑机接口公司BrainCO,在哈佛大学展示了他们研发人类大脑智能操作系统BrainOS的初步成果. ...

  5. 脑波控制机械手,双手打字也无法自证清白| Science Robotics

    单线栗 发自 凹非寺  量子位 出品 | 公众号 QbitAI  人类总是希望,两只手都在忙的时候,还能多出一只手来 (做些什么) . 一水之隔的东瀛,对此事尤其喜好-- 来自ATR石黑浩特别研究 ...

  6. Dream-hacking 造梦工程与脑波艺术

    # 缘起一次群聊 ML1202 @shadow  脑波艺术,是指接上设备后通过收集到的数据创作吗? 这只是第一步吧:使用脑波创作.第二步,使用艺术影响脑波?和梦境控制有点像.还有,群体的脑波互动.共创 ...

  7. 脑波的振幅、位相、分类

    目录 脑电图 脑波的振幅 脑波的位相 脑波的分类 本教程为脑机学习者Rose发表于公众号:脑机接口社区 .QQ交流群:903290195 脑电图 脑电图是由电极记录下来的大脑细胞群的自发性生物电活动. ...

  8. 脑波技术来袭,人类hold住吗?

    用脑波控制物体,这是传说中的特异功能,心灵交流,这是人类梦想的沟通方式,现在,脑波技术正在将它们从梦想变为现实. 现在,我们一起感受一下神奇的脑波技术吧. 意识传输 上上周,国内网站cnBeta.CO ...

  9. 专利 | 基于微表情与脑波分析算法的心理健康状况分析算法

    Hello,大家好,这里是行上行下, 我是隔壁壹脑云的Ting Zhang~ 今天和大家一起学习的是"基于微表情与脑波分析算法的心理健康状况分析算法"这个专利.它是由上海对外经贸大 ...

最新文章

  1. 今日收到的智商税:远红外
  2. java map byte[],java中byte数组不能作为map的key使用
  3. ANDROID深度探索(卷1)HAL与驱动开发 第四章
  4. iOS 推送证书制作 (JAVA/PHP)
  5. 七日Python之路--第十一天
  6. [原创]linux简单之美(三)
  7. 20道经典Java面试基础题
  8. 在linux下如何修改DNS地址
  9. luogu P5560 [Celeste-B]Golden Feather
  10. Apache Atlas 数据血缘
  11. wordpress短代码转php,WordPress短代码实现京东推广自动转链
  12. cad墙线打断lisp_cad相切命令(cad相交线自动打断)
  13. EOS Error 3090003: provided keys, permissions, and delays do not satisfy declared authoriz
  14. PYTHON对接语音验证码接口案列
  15. 关于pd.read_csv() 读数据的注意事项
  16. 计算机视觉实战的深度学习实战二:图像预处理
  17. linux 查看网卡连接网线,查看网卡是否连接网线
  18. 从“魔兽世界”的服务器崩溃说开去......
  19. slc mlc tlc nand
  20. uniapp 输入法画面_表单输入绑定 · uni-app跨平台移动应用开发 · 看云

热门文章

  1. AutoSAR系列讲解(实践篇)8.5-C/S原理进阶
  2. 如何获取所有股票代码
  3. 第1章 数字图像处理绪论
  4. Win10 Linux子系统编译Android系统源码
  5. 王者荣耀皮肤壁纸爬取
  6. 解决移动硬盘不能弹出问题
  7. 建议阿里巴巴10亿回购股票救市
  8. 如何评估工时和开发计划
  9. 机器人技术(2)Ubuntu linux系统简介及安装
  10. 佳能mp288打印机连供系统使用