{臨時}乙級數位電子術科程式碼2
乙級數位電子術科第一題(117002)程式碼
( GCK43,P10,P4,P2,P14,P13 : INPUT;
KEY[3..0],P15,P19,P16,P18,P6,P20,P1 : OUTPUT;
)
VARIABLE
DIVX[13..0],SP[2..0],4MOD[1..0],KEYCODE[3..0] : DFF;
BEGIN
DIVX[].CLK=GCK43;
IF DIVX[]==16000 THEN DIVX[]=0;
ELSE DIVX[]=DIVX[]+1;
END IF;
4MOD[].CLK=DIVX13 OR !(P10 AND P4 AND P2);
4MOD[]=4MOD[]+1;
SP[].CLK=DIVX13;
SP0=!(P10 AND P4 AND P2);
SP1=SP0;
SP2=P6;
P6=SP0 AND !SP1;
P20=SP2;
KEYCODE[].CLK=P6;
KEYCODE3=!P10;
KEYCODE2=!P4;
KEYCODE1=4MOD1;
KEYCODE0=4MOD0;
KEY[]=KEYCODE[];
TABLE
4MOD1,4MOD0 => P15,P19,P16,P18;
0, 0 => 1, 1, 1, 0;
0, 1 => 1, 1, 0, 1;
1, 0 => 1, 0, 1, 1;
1, 1 => 0, 1, 1, 1;
END TABLE;
P1=P14 NOR P13;
END;
留言
張貼留言