资源简介
一款游戏手柄的原理图+软件源码。包括主板的原理图、蓝牙模块的原理图、软件源码。使用的IC为BK2423、M0516。仓底货,轻易不拿出来。
代码片段和文件信息
#include “Config.h“
Adclayer Adc;
void ADC_GetDa(void)
{
ADC_SetChannelMask(0x6f);
ADC_POWER_ON;
ADC_START_CONV;
while((ADC->SR&1)==0);
Adc.adcval[0] = (ADC_GetConversionData(0)>>4);
Adc.adcval[1] = (ADC_GetConversionData(1)>>4);
Adc.adcval[2] = (ADC_GetConversionData(2)>>4);
Adc.adcval[3] = (ADC_GetConversionData(3)>>4);
Adc.adcval[4] = (ADC_GetConversionData(5)>>4);
Adc.adcval[5] = (ADC_GetConversionData(6)>>4);
}
void Init_ADC(void)
{
/* Select ADC Clock Source From 12Mhz*/
SYS_SelectIPClockSource_1(CLK_CLKSEL1_ADC_MASK CLK_CLKSEL1_ADC_HIRC);
GCR->PA_L_MFP = PA0_MFP_ADC_CH0|PA1_MFP_ADC_CH1|PA2_MFP_ADC_CH2|PA3_MFP_ADC_CH3|PA5_MFP_ADC_CH5|PA6_MFP_ADC_CH6;
GPIOA->OFFD |= 0x006F0000;
ADC_Init(ADC_CR_SINGLE_END ADC_CR_ADMD_S_CYCLE 0 ADC_CR_REFSEL_AVDD);
}
static void VOLVK_Func_XY_L(void)
{
unsigned char xy;
x = Adc.adcval[0];
y = Adc.adcval[1];
if((x>=0x60) && (x<=0x9f)) x=0x7f;
if((y>=0x60) && (y<=0x9f)) y=0x7f;
Hid.game_x=x;
Hid.game_y=y;
}
static void VOLVK_Func_zRz_r(void)
{
unsigned char xy;
x = Adc.adcval[2];
y = Adc.adcval[3];
if((x>=0x60) && (x<=0x9f)) x=0x7f;
if((y>=0x60) && (y<=0x9f)) y=0x7f;
Hid.game_z=x;
Hid.game_rz=y;
}
static void Quene(unsigned char valunsigned char *bufunsigned char *lenunsigned char *pos)
{
unsigned char ij;
if(*len==50) {
for(i=0;i<50;i++){
if(val>=buf[i]) break;
}
*pos=i;
return;
}
if(val==0){
if(*len>1) *pos=*len-1;
else *pos=0;
return;
}
for(i=0;i<50;i++){
if(val>buf[i]) break;
else if(val==buf[i]){
*pos=i;
return;
}
}
*pos=i;
*len=*len+1;
//printf(“i=%d%d%x%x%x%x“i*lenbuf[0]buf[1]buf[2]buf[3]);
for(j=48;j>i;j--){
buf[j+1]=buf[j];
}
buf[i+1]=buf[i];
buf[i]=val;
//printf(“i=%d%d%x%x%x%x“i*lenbuf[0]buf[1]buf[2]buf[3]);
}
static void R2L2_Deal(void)
{
unsigned char xypos;
y = Adc.adcval[4];
x = Adc.adcval[5];
if(Hid.gcnt<30){
Hid.gcnt++;
return;
}
Quene(xHid.adc_l2&Hid.adc_l2cnt&pos);
if(Hid.adc_l2cnt>6){
if(pos>Hid.adc_l2cnt/2) Hid.game_key|=GAME_L2_KEY;
else Hid.game_key&=(~GAME_L2_KEY);
if(pos>Hid.adc_l2cnt*2/3) Hid.game_l2=0xff;
else if(pos else Hid.game_l2=pos*(255/Hid.adc_l2cnt);
}
Quene(yHid.adc_r2&Hid.adc_r2cnt&pos);
if(Hid.adc_r2cnt>6){
if(pos>Hid.adc_r2cnt/2) Hid.game_key|=GAME_R2_KEY;
else Hid.game_key&=(~GAME_R2_KEY);
if(pos>Hid.adc_r2cnt*2/3) Hid.game_r2=0xff;
else if(pos else Hid.game_r2=pos*(255/Hid.adc_r2cnt);
}
//printf(“xy:%x%x%x%x\n“xyHid.adc_l2cntHid.adc_r2cnt);
}
void Joystick_run(void)
{
VOLVK_Func_XY_L();
VOLVK_Func_zRz_r();
R2L2_Deal();
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 2786 2014-08-07 14:23 一款游戏手柄的原理图+软件源码\bk2423+M0516软件包\app\Adc.c
文件 140 2014-03-26 17:02 一款游戏手柄的原理图+软件源码\bk2423+M0516软件包\app\Adc.h
文件 10724 2014-07-14 17:47 一款游戏手柄的原理图+软件源码\bk2423+M0516软件包\app\bma250.c
文件 171 2014-04-30 17:41 一款游戏手柄的原理图+软件源码\bk2423+M0516软件包\app\bma250.h
文件 52632 2014-08-26 14:18 一款游戏手柄的原理图+软件源码\bk2423+M0516软件包\app\config.h
文件 1339 2014-08-26 14:12 一款游戏手柄的原理图+软件源码\bk2423+M0516软件包\app\fmc.c
文件 110 2014-05-28 11:28 一款游戏手柄的原理图+软件源码\bk2423+M0516软件包\app\fmc.h
文件 4760 2014-08-07 14:50 一款游戏手柄的原理图+软件源码\bk2423+M0516软件包\app\main.c
文件 180540 2014-05-23 15:21 一款游戏手柄的原理图+软件源码\bk2423+M0516软件包\app\MotionGesture.c
文件 917 2014-05-08 14:16 一款游戏手柄的原理图+软件源码\bk2423+M0516软件包\app\MotionGesture.h
文件 7375 2014-05-13 09:24 一款游戏手柄的原理图+软件源码\bk2423+M0516软件包\app\mpu6050.c
文件 7373 2014-05-13 09:18 一款游戏手柄的原理图+软件源码\bk2423+M0516软件包\app\mpu6050.c.bak
文件 179 2014-05-03 17:08 一款游戏手柄的原理图+软件源码\bk2423+M0516软件包\app\mpu6050.h
文件 18624 2014-08-14 14:19 一款游戏手柄的原理图+软件源码\bk2423+M0516软件包\app\rf.c
文件 437 2014-04-21 16:57 一款游戏手柄的原理图+软件源码\bk2423+M0516软件包\app\rf.h
文件 5810 2014-08-26 14:20 一款游戏手柄的原理图+软件源码\bk2423+M0516软件包\app\self.c
文件 39481 2014-08-22 17:25 一款游戏手柄的原理图+软件源码\bk2423+M0516软件包\app\sys_app.c
文件 611 2014-05-19 10:11 一款游戏手柄的原理图+软件源码\bk2423+M0516软件包\app\sys_app.h
文件 32361 2014-07-30 14:30 一款游戏手柄的原理图+软件源码\bk2423+M0516软件包\app\Touch.c
文件 898 2014-06-24 10:11 一款游戏手柄的原理图+软件源码\bk2423+M0516软件包\app\Touch.h
文件 1239 2013-10-01 16:24 一款游戏手柄的原理图+软件源码\bk2423+M0516软件包\CMSIS\Include\arm_common_tables.h
文件 255755 2013-10-01 16:24 一款游戏手柄的原理图+软件源码\bk2423+M0516软件包\CMSIS\Include\arm_math.h
文件 32139 2013-10-01 16:24 一款游戏手柄的原理图+软件源码\bk2423+M0516软件包\CMSIS\Include\core_cm0.h
文件 39428 2013-10-01 16:24 一款游戏手柄的原理图+软件源码\bk2423+M0516软件包\CMSIS\Include\core_cm0plus.h
文件 98950 2013-10-01 16:24 一款游戏手柄的原理图+软件源码\bk2423+M0516软件包\CMSIS\Include\core_cm3.h
文件 108260 2013-10-01 16:24 一款游戏手柄的原理图+软件源码\bk2423+M0516软件包\CMSIS\Include\core_cm4.h
文件 21323 2013-10-01 16:24 一款游戏手柄的原理图+软件源码\bk2423+M0516软件包\CMSIS\Include\core_cm4_simd.h
文件 15924 2013-10-01 16:24 一款游戏手柄的原理图+软件源码\bk2423+M0516软件包\CMSIS\Include\core_cmFunc.h
文件 17305 2013-10-01 16:24 一款游戏手柄的原理图+软件源码\bk2423+M0516软件包\CMSIS\Include\core_cmInstr.h
文件 40737 2013-10-01 16:24 一款游戏手柄的原理图+软件源码\bk2423+M0516软件包\CMSIS\Include\core_sc000.h
............此处省略140个文件信息
相关资源
- PX4源码解读
- AM3358核心开发板原理图和PCB
- RTL8211 网卡接口板原理图加PCB文件
- VECTOR的CCP源码(CAN标定协议代码)
- Unity 切水果工程源码 含UI资源
- unity双人乒乓球PONG工程源码
- 机锋市场(应用商店)完整客户端项
- ASN1编码文档及ASN1C源码例程
- 51黑论坛_基于单片机设计的数字电子
- spartan-3e xc3s1600e 开发板原理图
- 叮咚门店会员卡小程序源码4.9.7开源
- 萤火微信小程序商城源码 前后端.zi
- 智能控制-刘金琨编著-程序源码以及
- Struts in Action
- 传世传家宝启动源码程序
- Arduino Uno R3开发板 原理图 PCB
- STM32通过串口HC05蓝牙控制LED的源码
- Qt远程控制软件源码
- MPU6050姿态解算STM32源码卡尔曼滤波
- 2011最新Bao宝龙盗2代源码.zip
- GDAL源码剖析(李民录).pdf
- HEVC参考模型源码HM16.6版本
- SocketCoder语音/视频会议模块源码2013
- 教学管理系统源码.net
- Mail Web开源版(邮件系统客户端)
- pos收银系统Delphi源码
- RT5350wifi方案PCB及原理图
- stm32麦轮小车源码
- 基于单片机的红外遥控发射接收解码
- 仿qq音乐播放器源码完整版
评论
共有 条评论