📄 fct.c
字号:
SetGpio_1(SBA6);
SetGpio_1(SBD0);
SetGpio_1(SBD1);
SetGpio_1(SBD2);
SetGpio_1(SBD3);
SetGpio_1(SBD4);
SetGpio_1(SBD5);
SetGpio_1(SBD6);
SetGpio_1(SBD7);
SetGpio_1(SBCS03);
SetGpio_1(SBRD);
SetGpio_1(SBWR);
}break;
case 0x23:
{
SetGpio_0(SBA0);
SetGpio_1(SBA1);
SetGpio_1(SBA2);
SetGpio_1(SBA3);
SetGpio_1(SBA4);
SetGpio_1(SBA5);
SetGpio_1(SBA6);
SetGpio_1(SBD0);
SetGpio_1(SBD1);
SetGpio_1(SBD2);
SetGpio_1(SBD3);
SetGpio_1(SBD4);
SetGpio_1(SBD5);
SetGpio_1(SBD6);
SetGpio_1(SBD7);
SetGpio_1(SBCS03);
SetGpio_1(SBRD);
SetGpio_1(SBWR);
}break;
case 0x25:
{
ChangePinOveylay(IRQN);
ChangeDir_Mask(IRQN,PinDirInput);
}break;
case 0x27:
{
ChangePinOveylay(SEL_CIS);
ChangeDir_Mask(SEL_CIS,PinDirOutput);
ChangePinOveylay(PH_CIS);
ChangeDir_Mask(PH_CIS,PinDirOutput);
ChangePinOveylay(CLK_CIS);
ChangeDir_Mask(CLK_CIS,PinDirOutput);
ChangePinOveylay(LEDB_CIS);
ChangeDir_Mask(LEDB_CIS,PinDirOutput);
ChangePinOveylay(LEDG_CIS);
ChangeDir_Mask(LEDG_CIS,PinDirOutput);
ChangePinOveylay(LEDR_CIS);
ChangeDir_Mask(LEDR_CIS,PinDirOutput);
SetGpio_0(SEL_CIS);
SetGpio_0(PH_CIS);
SetGpio_0(CLK_CIS);
SetGpio_0(LEDB_CIS);
SetGpio_0(LEDG_CIS);
SetGpio_1(LEDR_CIS);
}break;
case 0x28:
{
ChangePinOveylay(SEL_CIS);
ChangeDir_Mask(SEL_CIS,PinDirOutput);
ChangePinOveylay(PH_CIS);
ChangeDir_Mask(PH_CIS,PinDirOutput);
ChangePinOveylay(CLK_CIS);
ChangeDir_Mask(CLK_CIS,PinDirOutput);
ChangePinOveylay(LEDB_CIS);
ChangeDir_Mask(LEDB_CIS,PinDirOutput);
ChangePinOveylay(LEDG_CIS);
ChangeDir_Mask(LEDG_CIS,PinDirOutput);
ChangePinOveylay(LEDR_CIS);
ChangeDir_Mask(LEDR_CIS,PinDirOutput);
SetGpio_0(SEL_CIS);
SetGpio_0(PH_CIS);
SetGpio_0(CLK_CIS);
SetGpio_0(LEDB_CIS);
SetGpio_1(LEDG_CIS);
SetGpio_0(LEDR_CIS);
}break;
case 0x29:
{
ChangePinOveylay(SEL_CIS);
ChangeDir_Mask(SEL_CIS,PinDirOutput);
ChangePinOveylay(PH_CIS);
ChangeDir_Mask(PH_CIS,PinDirOutput);
ChangePinOveylay(CLK_CIS);
ChangeDir_Mask(CLK_CIS,PinDirOutput);
ChangePinOveylay(LEDB_CIS);
ChangeDir_Mask(LEDB_CIS,PinDirOutput);
ChangePinOveylay(LEDG_CIS);
ChangeDir_Mask(LEDG_CIS,PinDirOutput);
ChangePinOveylay(LEDR_CIS);
ChangeDir_Mask(LEDR_CIS,PinDirOutput);
SetGpio_0(SEL_CIS);
SetGpio_0(PH_CIS);
SetGpio_0(CLK_CIS);
SetGpio_1(LEDB_CIS);
SetGpio_0(LEDG_CIS);
SetGpio_0(LEDR_CIS);
}break;
case 0x2a:
{
ChangePinOveylay(SEL_CIS);
ChangeDir_Mask(SEL_CIS,PinDirOutput);
ChangePinOveylay(PH_CIS);
ChangeDir_Mask(PH_CIS,PinDirOutput);
ChangePinOveylay(CLK_CIS);
ChangeDir_Mask(CLK_CIS,PinDirOutput);
ChangePinOveylay(LEDB_CIS);
ChangeDir_Mask(LEDB_CIS,PinDirOutput);
ChangePinOveylay(LEDG_CIS);
ChangeDir_Mask(LEDG_CIS,PinDirOutput);
ChangePinOveylay(LEDR_CIS);
ChangeDir_Mask(LEDR_CIS,PinDirOutput);
SetGpio_0(SEL_CIS);
SetGpio_0(PH_CIS);
SetGpio_1(CLK_CIS);
SetGpio_0(LEDB_CIS);
SetGpio_0(LEDG_CIS);
SetGpio_0(LEDR_CIS);
}break;
case 0x2b:
{
ChangePinOveylay(SEL_CIS);
ChangeDir_Mask(SEL_CIS,PinDirOutput);
ChangePinOveylay(PH_CIS);
ChangeDir_Mask(PH_CIS,PinDirOutput);
ChangePinOveylay(CLK_CIS);
ChangeDir_Mask(CLK_CIS,PinDirOutput);
ChangePinOveylay(LEDB_CIS);
ChangeDir_Mask(LEDB_CIS,PinDirOutput);
ChangePinOveylay(LEDG_CIS);
ChangeDir_Mask(LEDG_CIS,PinDirOutput);
ChangePinOveylay(LEDR_CIS);
ChangeDir_Mask(LEDR_CIS,PinDirOutput);
SetGpio_0(SEL_CIS);
SetGpio_1(PH_CIS);
SetGpio_0(CLK_CIS);
SetGpio_0(LEDB_CIS);
SetGpio_0(LEDG_CIS);
SetGpio_0(LEDR_CIS);
}break;
case 0x2c:
{
ChangePinOveylay(SEL_CIS);
ChangeDir_Mask(SEL_CIS,PinDirOutput);
ChangePinOveylay(PH_CIS);
ChangeDir_Mask(PH_CIS,PinDirOutput);
ChangePinOveylay(CLK_CIS);
ChangeDir_Mask(CLK_CIS,PinDirOutput);
ChangePinOveylay(LEDB_CIS);
ChangeDir_Mask(LEDB_CIS,PinDirOutput);
ChangePinOveylay(LEDG_CIS);
ChangeDir_Mask(LEDG_CIS,PinDirOutput);
ChangePinOveylay(LEDR_CIS);
ChangeDir_Mask(LEDR_CIS,PinDirOutput);
SetGpio_1(SEL_CIS);
SetGpio_0(PH_CIS);
SetGpio_0(CLK_CIS);
SetGpio_0(LEDB_CIS);
SetGpio_0(LEDG_CIS);
SetGpio_0(LEDR_CIS);
}break;
case 0x2e:
{
ChangePinOveylay(SPEAKER_TURNOFF);
ChangeDir_Mask(SPEAKER_TURNOFF,PinDirOutput);
SetGpio_0(SPEAKER_TURNOFF);
}break;
case 0x2f:
{
ChangePinOveylay(SPEAKER_TURNOFF);
ChangeDir_Mask(SPEAKER_TURNOFF,PinDirOutput);
SetGpio_1(SPEAKER_TURNOFF);
}break;
case 0x30:
{
PanleState=0X00;
}break;
default: ;
}
}
}
Uint8 FCTQuery(Uint8 QueryID)
{
Uint8 RespondDataLength;
RespondDataLength=1; //default length
switch(QueryID)
{
case 0x08:
{
RespondData[0]=0x00;
if (Value_1==ReadPinValue(TONER))
{
RespondData[0]=0x01;
}
if (Value_1==ReadPinValue(HOME_SENSOR))
{
RespondData[0]=RespondData[0] |0X02;
}
if (Value_1==ReadPinValue(ADF_DS))
{
RespondData[0]=RespondData[0] | 0X04;
}
if (Value_1==ReadPinValue(ADF_DES))
{
RespondData[0]=RespondData[0] | 0X08;
}
}break;
case 0x0a:
{
RespondData[0]=0x00;
if (Value_1==ReadPinValue(COVEROPEN_ENG))
{
RespondData[0]=0x01;
}
if (Value_1==ReadPinValue(WR_ENG))
{
RespondData[0]=RespondData[0] |0X02;
}
if (Value_1==ReadPinValue(STS_ENG))
{
RespondData[0]=RespondData[0] | 0X04;
}
if (Value_1==ReadPinValue(ETBSY_ENG))
{
RespondData[0]=RespondData[0] | 0X08;
}
if (Value_1==ReadPinValue(TOD_ENG))
{
RespondData[0]=RespondData[0] | 0X10;
}
if (Value_1==ReadPinValue(PRRDY_ENG))
{
RespondData[0]=RespondData[0] |0X20;
}
if (Value_1==ReadPinValue(EPRDY_ENG))
{
RespondData[0]=RespondData[0] | 0X40;
}
if (Value_1==ReadPinValue(HSYNC_ENG))
{
RespondData[0]=RespondData[0] | 0X80;
}
}break;
case 0x26:
{
RespondData[0]=0x00;
if (Value_1==ReadPinValue(IRQN))
{
RespondData[0]=0x01;
}
}break;
case 0x31:
{
RespondData[0] = 0x00;
if (PanleState==0x1f)
{
RespondData[0] = 0xff;
}
}break;
default: ;
}
return RespondDataLength;
}
void FCTInit(void)
{
FCT_TASK_ID=TaskCreateDebug((Sint32 (*)(void *))FCTAction,
FCT_TASK_STACK_SIZE, FCT_TASK_STACK,NULL,
PRIORITY_FCTAction,"FCT_TASK", "FCT_TASK");
VendorRequestQueue_id=TASKMSGCREATE();
Timer4InitAlready=Value_0;
FCTMode=0x00;
//read T1 and T2
ChangePinOveylay(T1);
ChangeDir_Mask(T1,PinDirInput);
ChangePinOveylay(T2);
ChangeDir_Mask(T2,PinDirInput);
if (!(ReadPinValue(T1) |ReadPinValue(T2)))
{
FCTMode=0x01;
}
}
void OS_Timer4LISR(void)
{
ICU_InterruptClear(IRQ_TIM4);
switch (PinGroupForTimer4)
{
case 0x01:
{
switch (phase)
{
case 0x00:
{
SetGpio_1(FB_PH1);
SetGpio_1(FB_PH2);
SetGpio_1(FB_I01);
SetGpio_1(FB_I11);
SetGpio_0(FB_I02);
SetGpio_0(FB_I12);
phase=1;
}break;
case 0x01:
{
SetGpio_1(FB_PH1);
SetGpio_1(FB_PH2);
SetGpio_0(FB_I01);
SetGpio_1(FB_I11);
SetGpio_0(FB_I02);
SetGpio_0(FB_I12);
phase=2;
}break;
case 0x02:
{
SetGpio_1(FB_PH1);
SetGpio_1(FB_PH2);
SetGpio_1(FB_I01);
SetGpio_0(FB_I11);
SetGpio_1(FB_I02);
SetGpio_0(FB_I12);
phase=3;
}break;
case 0x03:
{
SetGpio_1(FB_PH1);
SetGpio_1(FB_PH2);
SetGpio_0(FB_I01);
SetGpio_0(FB_I11);
SetGpio_0(FB_I02);
SetGpio_1(FB_I12);
phase=4;
}break;
case 0x04:
{
SetGpio_1(FB_PH1);
SetGpio_1(FB_PH2);
SetGpio_0(FB_I01);
SetGpio_0(FB_I11);
SetGpio_1(FB_I02);
SetGpio_1(FB_I12);
phase=5;
}break;
case 0x05:
{
SetGpio_1(FB_PH1);
SetGpio_0(FB_PH2);
SetGpio_0(FB_I01);
SetGpio_0(FB_I11);
SetGpio_0(FB_I02);
SetGpio_1(FB_I12);
phase=6;
}break;
case 0x06:
{
SetGpio_1(FB_PH1);
SetGpio_0(FB_PH2);
SetGpio_1(FB_I01);
SetGpio_0(FB_I11);
SetGpio_1(FB_I02);
SetGpio_0(FB_I12);
phase=7;
}break;
case 0x07:
{
SetGpio_1(FB_PH1);
SetGpio_0(FB_PH2);
SetGpio_0(FB_I01);
SetGpio_1(FB_I11);
SetGpio_0(FB_I02);
SetGpio_0(FB_I12);
phase=8;
}break;
case 0x08:
{
SetGpio_1(FB_PH1);
SetGpio_0(FB_PH2);
SetGpio_1(FB_I01);
SetGpio_1(FB_I11);
SetGpio_0(FB_I02);
SetGpio_0(FB_I12);
phase=9;
}break;
case 0x09:
{
SetGpio_0(FB_PH1);
SetGpio_0(FB_PH2);
SetGpio_0(FB_I01);
SetGpio_1(FB_I11);
SetGpio_0(FB_I02);
SetGpio_0(FB_I12);
phase=0x0a;
}break;
case 0x0a:
{
SetGpio_0(FB_PH1);
SetGpio_0(FB_PH2);
SetGpio_1(FB_I01);
SetGpio_0(FB_I11);
SetGpio_1(FB_I02);
SetGpio_0(FB_I12);
phase=0x0b;
}break;
case 0x0b:
{
SetGpio_0(FB_PH1);
SetGpio_0(FB_PH2);
SetGpio_0(FB_I01);
SetGpio_0(FB_I11);
SetGpio_0(FB_I02);
SetGpio_1(FB_I12);
phase=0x0c;
}break;
case 0x0c:
{
SetGpio_0(FB_PH1);
SetGpio_0(FB_PH2);
SetGpio_0(FB_I01);
SetGpio_0(FB_I11);
SetGpio_1(FB_I02);
SetGpio_1(FB_I12);
phase=0x0d;
}break;
case 0x0d:
{
SetGpio_0(FB_PH1);
SetGpio_1(FB_PH2);
SetGpio_0(FB_I01);
SetGpio_0(FB_I11);
SetGpio_0(FB_I02);
SetGpio_1(FB_I12);
phase=0x0e;
}break;
case 0x0e:
{
SetGpio_0(FB_PH1);
SetGpio_1(FB_PH2);
SetGpio_1(FB_I01);
SetGpio_0(FB_I11);
SetGpio_1(FB_I02);
SetGpio_0(FB_I12);
phase=0x0f;
}break;
case 0x0f:
{
SetGpio_0(FB_PH1);
SetGpio_1(FB_PH2);
SetGpio_0(FB_I01);
SetGpio_1(FB_I11);
SetGpio_0(FB_I02);
SetGpio_0(FB_I12);
phase=0;
}break;
default:{phase=0;}
}
}break;
case 0x02:
{
switch (phase)
{
case 0x00:
{
PlusCounter=PlusCounter+16;
if (400==PlusCounter)
{
IO_WRITE32(SYTCTL4, 0x00000005);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -