PS2(PS2)

全局变量

全局变量类型注释
Handkeyu16按键值读取临时存储
Comdu8[2]开始命令数组
Datau8[9]数据存储数组
MASKu16[16]按键掩码数组

宏定义

宏定义注释
PS_RCC_DIRCC_APB2Periph_GPIOB数据输入DI引脚的时钟
PS_RCC_DORCC_APB2Periph_GPIOB数据输出DO引脚的时钟
PS_RCC_CSRCC_APB2Periph_GPIOB片选CS引脚的时钟
PS_RCC_CLKRCC_APB2Periph_GPIOB时钟CLK引脚的时钟
PS_PIN_DIGPIO_Pin_14数据输入DI引脚
PS_PIN_DOGPIO_Pin_15数据输出DO引脚
PS_PIN_CSGPIO_Pin_12片选CS引脚
PS_PIN_CLKGPIO_Pin_13时钟CLK引脚
PS_PORT_DIGPIOBDI引脚的GPIO端口
PS_PORT_DOGPIOBDO引脚的GPIO端口
PS_PORT_CSGPIOBCS引脚的GPIO端口
PS_PORT_CLKGPIOBCLK引脚的GPIO端口
DIPBin(14)数据输入
DO_HPBout(15)=1命令位高
DO_LPBout(15)=0命令位低
CS_HPBout(12)=1CS拉高
CS_LPBout(12)=0CS拉低
CLK_HPBout(13)=1时钟拉高
CLK_LPBout(13)=0时钟拉低
PSB_*对应的按键值各种按键的常量定义

方法

PS2_Init(void)

PS2接收器模块初始化

返回值类型
void

PS2_Cmd(u8 CMD)

向手柄发送命令

参数类型注释
CMDu8要发送的命令
返回值类型
void

PS2_RedLight(void)

判断是否为红灯模式

返回值类型
0u8红灯模式
1u8其他模式

PS2_ReadData(void)

读取手柄数据

返回值类型
void

PS2_DataKey(void)

读取按键值

返回值类型
按键值u8

PS2_AnologData(u8 button)

获取摇杆的模拟值

参数类型注释
buttonu8要读取的摇杆按钮
返回值类型
模拟值u8

PS2_ClearData(void)

清除数据缓冲区

返回值类型
void

PS2_Vibration(u8 motor1, u8 motor2)

设置手柄震动

参数类型注释
motor1u8右侧小震动电机(0x00关,其他开)
motor2u8左侧大震动电机(0x40~0xFF开,值越大震动越大)
返回值类型
void

PS2_ShortPoll(void)

短轮询

返回值类型
void

PS2_EnterConfing(void)

进入配置模式

返回值类型
void

PS2_TurnOnAnalogMode(void)

发送模拟量模式设置

返回值类型
void

PS2_VibrationMode(void)

设置振动模式

返回值类型
void

PS2_ExitConfing(void)

完成并保存配置

返回值类型
void

PS2_SetInit(void)

控制器配置初始化

返回值类型
void

PS2_Data_Show(void)

按键值测试及输出函数

返回值类型
void