资源简介
一款游戏手柄的原理图+软件源码。包括主板的原理图、蓝牙模块的原理图、软件源码。使用的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个文件信息
相关资源
- E4A无障碍跨程序操作类库(带源码、
- 设备管理系统源码
- 安卓wifi直连app源码
- 开源1A锂电池充电板TP4056原理图+PCB
- 我的世界源码(易语言版)
- labview编程软件滤波器以及编写程序设
- 我的界面(visual foxpro)源码
- 易语言:一键cf基址源码
- The Secret Path 3D 3D魔方迷宫[源码][scra
- scratch垃圾分类源码(最终版本).sb
- 联想W520/T520笔记本电脑电路原理图
- 三星DDR800内存条PCB文件和原理图
- 安卓QQ6.71协议源码易语言,qq协议源码
- 编译原理实验工具及参考源码(lex&
- E盾偷后台工具源码
- UNIX/LINUX编程实践教程的源码
- 八三编码器设计 VHDL代码 简单,包附
- 十以内加减法练习 powerbuilder源码
- NE555电路应用原理图及PCB
- 农场开发项目
- OCR源码
- PLC上位机编程软件
- 用foobar2000听google音乐[更新一下]
- 学生信息管理系统源码
- 用VC 编写的仿QQ聊天室程序源代码
- 毕业论文之温度传感器DS18B20(源码
- 可自定义导航网站源码
- 栅栏填充算法源码(VC)
- 光立方制作(原理图 源程序 LED搭接方
- msp430F149操作红外接收模块源码
评论
共有 条评论