資源簡(jiǎn)介
一款游戲手柄的原理圖+軟件源碼。包括主板的原理圖、藍(lán)牙模塊的原理圖、軟件源碼。使用的IC為BK2423、M0516。倉(cāng)底貨,輕易不拿出來(lái)。

代碼片段和文件信息
#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();
}
?屬性????????????大小?????日期????時(shí)間???名稱(chēng)
-----------?---------??----------?-----??----
?????文件???????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個(gè)文件信息
評(píng)論
共有 條評(píng)論