当前位置:首页 > 工业控制 > 电路设计项目集锦
[导读]它支持第三代或更高版本的Xbox控制器或英飞凌的XENSIV游戏控制器,通过带有CAN FD Shield TLE9371VSJ的CAN FD总线将数据传输到KIT_XMC71_EVK_LITE_V1板。后者处理数据并使用自定义图形适配器XMC71_EVK_DisplayAdapter_V11在屏幕上显示受Pong启发的演示游戏。

该项目涉及两块电路板:CYW920829M2EVK-02,它通过蓝牙低功耗(BLE)连接到游戏控制器,以及KIT_XMC71_EVK_LITE_V1。

它支持第三代或更高版本的Xbox控制器或英飞凌的XENSIV游戏控制器,通过带有CAN FD Shield TLE9371VSJ的CAN FD总线将数据传输到KIT_XMC71_EVK_LITE_V1板。后者处理数据并使用自定义图形适配器XMC71_EVK_DisplayAdapter_V11在屏幕上显示受Pong启发的演示游戏。

硬件

在运行代码之前,请确保所有硬件组件都已正确连接和配置。按照以下步骤设置硬件:

1. 通过将XMC71套件的J23头连接到显示适配器的J23头,将XMC71_EVK_DisplayAdapter_V11连接到KIT_XMC71_EVK_LITE_V1。

2. 连接CAN FD屏蔽TLE9371VSJ到CYW920829M2EVK-02:

•将5V和GND引脚分别连接到评估板上的电源引脚上

•RxD连接到P5.0, TxD连接到P5.1

3. 连接CAN FD屏蔽TLE9371VSJ到KIT_XMC71_EVK_LITE_V1:

通过跳线将屏蔽的CANL和CANH引脚连接到KIT_XMC71_EVK_LITE_V1的CAN FD头J14中的适当引脚(引脚名称在板的底部)

项目运作

要操作该项目,请遵循以下步骤:

1. 闪码

要使用ModusToolbox为任何一个项目闪烁代码(这里为XMC71_CAN_and_Display完成,但对两个项目都是一样的),请遵循以下步骤

•从本文开头处下载项目的.zip文件。

•将.zip文件的内容解压缩到计算机上的一个文件夹中。

•打开模块工具箱的Eclipse IDE。

•在开始下的快速面板中,单击“导入现有应用程序”。

•选择在步骤1中提取的文件夹。

•一旦项目被加载,点击项目名称下的“Build project”按钮。

•将适当的电路板连接到计算机上。

•点击“启动”下的“运行”按钮,这将使代码闪现到电路板上。

2. 配对设备

现在两个板都闪过了,是时候将控制器与它们配对了。遵循以下步骤:

•两个单板都上电。您应该看到等待屏幕,显示“waiting for controller to connect…”,并显示连接说明。

•如果您正在使用Xbox控制器,请按下Xbox按钮(Xbox控制器图上的数字5)来打开它,并按住配对按钮(控制器图上的数字6)几秒钟将其置于配对模式,直到Xbox按钮开始快速闪烁。

•对于XENSIV游戏控制器,你所要做的就是打开它,它就会自动开始广告。

•按CYW920829M2EVK-02板上的USER BTN1按钮

•等待几秒钟,等待配对过程完成。

•在Xbox控制器的情况下,CYW920829M2EVK-02上将亮起红色LED。要完成配对,请再次按住配对按钮,直到Xbox按钮停止闪烁并保持稳定。

•对于XENSIV控制器,当配对完成时,控制器显示“成功配对到…”,控制器上的绿色LED发光。

开始演示

连接建立成功后,CYW920829M2EVK-02开始发送报文。当KIT_XMC71_EVK_LITE_V1开始接收这些数据包时,显示将更改为显示标题屏幕。该屏幕将显示英飞凌徽标和参与创建XMC71_EVK_DisplayAdapter_V11自定义板的合作伙伴公司的徽标。几秒钟后,演示将开始。我们将首先描述控制器按钮的Xbox名称,并将XENSIV放在括号中。每个控制器中功能相同的按钮在上面的控制器图中编号相同。

使用演示

演示由两个模块组成:帮助屏幕模块显示项目名称和可用用户输入的详细信息;Pong模块是经典Pong游戏的简化版本,可以由一个或两个玩家使用一个控制器进行游戏。它由两个屏幕组成。游戏屏幕显示实际游戏,当其中一名玩家输了,游戏结束屏幕就会显示出来。

为了控制游戏,你可以使用:RB (R1)(控制器图中的2号)来启动/重新启动游戏。LB (L1)(控制器图中编号1)进入帮助界面。左右摇杆(控制器图中分别为4号和5号按钮)用于控制Pong模块中各自的摇杆。

软件

下图显示了这个项目中软件的一般流程。它显示了两个项目的一般简化操作及其相互作用。大写并带下划线的名称表示程序内部有限状态机中的状态。

缺省情况下,控制器数据每50毫秒发送一次。这可以在文件Bluetooth_LE_Game_Controller\source\app_communication\app_communication.h中的CONTROLLER_STATUS_PERIOD_MS中进行更改

《Pong》游戏逻辑包含两种状态:

1. PONG_PLAY:在此状态下,球拍位置根据用户输入更新,并管理碰撞。游戏也检查游戏结束条件,设置gameOver标志,当桨未能击中ba

2. PONG_OVER:在这种状态下,玩家会看到提示游戏结束以及如何重新开始的文本。

程序的无限循环包括一个名为runAndUpdateGameState()的函数,它使用开关/case结构来管理图1中所示的状态。这个函数处理状态之间的转换,并调用适当的函数在显示器上呈现每个屏幕。

此外,gameModuleHandler()函数负责管理模块之间的转换。它注册时,RB (R1)和LB (L1)按钮被按下,并触发演示时,他们被释放的变化。

总结

这个项目结合了几个嵌入式功能,可能会对你的下一个项目感兴趣:

•通过蓝牙LE (BLE)连接游戏控制器到您的系统

•桥接BLE到CAN网络

•驱动显示器

本文编译自hackster.io

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭