*阅读说明:以下仅做简要总结展示,排名不分先后。详细测评过程描述、源码、资料等请戳原链接查看。
基于CH585芯片实现Xbox 360for Windows手柄的Xinput功能,需要硬件和软件两方面的设计。硬件设计方面,可能包括设计一个基于CH585的评估板,该板应包含必要的摇杆和按键,以模拟Xbox 360手柄的功能。软件设计则主要涉及USB HID(Human Interface Device)相关的描述符修改,以及实现Xinput协议。
最近收到了沁恒的CH585M开发板,其实我对这个开发板是非常期待的,本身我就是做射频方面的应用。就来玩耍一下NFC吧,其实CH585M是支持NFC模拟卡和读卡器两种功能的,也就是说该芯片十分的强大,本次就来体验一下读卡器的功能吧,利用程序实现读卡功能,利用串口1实现数据的输出,并且添加了一点串口的交互,利用串口发送命令实现对卡的读取等。
本次带来的是基于CH585M芯片的蓝牙与USB数据交互,其实本来是想加入NFC,实现蓝牙与USB共存的阅读器,但是暂时没有将NFC功能加入其中,不过关于USB与蓝牙的交互是暂时可以实现的,后续将NFC添加进来就可以了。本次是采用官方提供的BLE_USB例程为模板来介绍的。
本次开发我们先选择了IIC例程,读取SHT20温湿度传感器,用了这么长时间的温湿度传感器也是想要仔细看下内部功能了,优化了我们原先只读取数据,也从头看了下手册,其功能也丰富了下,主要按照Arduino库进行改写的。
CH585M最大特点就是支持了NFC功能,可谓是一个芯片兼容了多个功能,其主要是支持ISO14443A的协议,也是传统的IC卡,频率在13.56MHz范围的卡。
因为CH585是青稞 32 位 RISC-V3C 内核,集成了BLE无线通讯的一颗RISC-V MCU微控制器。所以拿到板子之后首先想到的就是测试一下BEL无线通讯功能,顺便了解一下WCH蓝牙空中升级(BLE OTA)技术方案。
最近比较火的多模无线SOC CH585系列,实测SPI0已改良,PA14在输出一组DMA波形后,空闲电平始终为低电平,驱动不受PA15实时电平的影响,释放出PA15可以接其他外设。使能SPI后,PA14的GPIOset/reset接口失效,空闲电平固定为低电平;失能SPI后可以正常输出拉高/拉低PA14。
拿到板载后就迫不及待的想先上手。我将我的步骤一步一步的写出来供大家更为快速的上手。
可查看更多开源作品。
|