Skip to content

STM32(F411CEU6) projetct to run as mai controller

Notifications You must be signed in to change notification settings

QHPaeek/Mai_stm32

Repository files navigation

基于stm32f411ceu6设计的mai控制器

本设计基于STM32cubeIDE与HAL库进行开发,采用FreeRTOS,旨在最大程度减少延迟,同时实现尽可能多的功能。

关于使用:

1.将`Release\Curva_F411_Mai.bin`使用STM32CubeProgrammer通过USB_DFU模式或者其他方式刷入设备中。

2.重新插拔设备,按说明分配COM口序号

4.直接启动游戏。ENJOY!

关于软件:

依赖AL94_USB_Composite库实现USB多设备复合工作。请在CUBEIDE中正确安装这个库。

关于IO:

触摸、灯光、按键各自占用一路串口,因此设备复合出了三路串口,需要分配到不同的串口号。

触摸:作为1P使用时,串口应分配于COM3,作为2P则分配到COM4。

灯光:作为1P使用时,串口应分配于COM21,作为2P则分配到COM23。

按键:作为1P使用时,串口应分配于COM11,作为2P则分配到COM12。

插上设备之后默认出现3路串口,在没有修改过串口序号的情况下,COM数字最小的那一个是触摸,居中的是灯光,最大的是按键IO。

串口按键IO请见[Affine_IO](GitHub - QHPaeek/Affine_IO: 一个串口直通io,并入了串口JVS操作)

关于硬件:

本设计的硬件尚未完善,目前只是能运行的DEMO版本。后续将持续不断更新

cy8cmbr3116_touch_module - 嘉立创EDA开源硬件平台

PB9:I2C1_SDA

PB8:I2C1_SCL

PB3:I2C2_SDA

PB10:I2C2_SCL

PB4:I2C3_SDA

PA8:I2C3_SDA

请在三路I2C上各接一个CY8CMBR3116模块。

按键灯光为16颗级联的ws2812,接口为PA0。

8只外键从0到7号分别是PA1~PA7,PB0

test、service、coin分别为PB1(BodyLed),PB2(ExtLed),PB12(SideLed)

框体灯光为白灯,控制输出的PWM分别位于PB7,PB6,PB5

主控为STM32F411CEU6开发板。如需自己画板,HSE使用25MHZ即可。

按键与灯光不接不会影响程序的正常运行,但触摸模块必须接好,否则将会无限等待触摸模块做出响应。

已知的BUG:

1.AL94_USB_Composite库在生成代码时并不会保护USER CODE区域中的用户代码,而本程序需要在USB接收回调函数中实现功能。因此请手动保护\F411_chunithm_15.6\Middlewares\Third_Party\AL94_USB_Composite\COMPOSITE\App目录下的usbd_cdc_acm_if.c以及usbd_cdc_acm_if.h两个文件。

About

STM32(F411CEU6) projetct to run as mai controller

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published