?? traffic1.abl
字號:
module TRAFFIC1
title 'Traffic Signal Controller
Mike McClure Data I/O Corp 9 Aug 1990'
traffic1 device 'F167';
Clk,SenA,SenB pin 1, 8, 7;
PR pin 16; "Preset control
GA,YA,RA pin 15,14,13;
GB,YB,RB pin 11,10,9;
S3,S2,S1,S0 node 31,32,33,34;
S3,S2,S1,S0 istype 'buffer,reg_rs';
H,L,Ck,X = 1, 0, .C., .X.;
Count = [S3,S2,S1,S0];
"Define Set and Reset inputs to traffic light flip flops
GreenA = [GA.S,GA.R];
YellowA = [YA.S,YA.R];
RedA = [RA.S,RA.R];
GreenB = [GB.S,GB.R];
YellowB = [YB.S,YB.R];
RedB = [RB.S,RB.R];
On = [ 1 , 0 ];
Off = [ 0 , 1 ];
test_vectors
([Clk,PR,SenA,SenB] -> [Count,GA,YA,RA,GB,YB,RB])
[ 0 , 0, 0 , 0 ] -> [ X , X, X, X, X, X, X];
[ 1 , 1, 1 , 1 ] -> [ 15 , X, X, X, X, X, X];
[ 1 , 0, 1 , 1 ] -> [ 15 , X, X, X, X, X, X];
[ Ck, 0, 1 , 0 ] -> [ 0 , H, L, L, L, L, H];
test_vectors
([Clk,PR,SenA,SenB] -> [Count,GA,YA,RA,GB,YB,RB])
[ Ck, 0, 1 , 0 ] -> [ 0 , H, L, L, L, L, H];
[ Ck, 0, 1 , 0 ] -> [ 0 , H, L, L, L, L, H];
[ Ck, 0, 1 , 1 ] -> [ 1 , H, L, L, L, L, H];
[ Ck, 0, 1 , 1 ] -> [ 2 , H, L, L, L, L, H];
[ Ck, 0, 1 , 1 ] -> [ 3 , H, L, L, L, L, H];
[ Ck, 0, 1 , 1 ] -> [ 4 , H, L, L, L, L, H];
[ Ck, 0, 1 , 1 ] -> [ 5 , L, H, L, L, L, H];
[ Ck, 0, 1 , 0 ] -> [ 8 , L, L, H, H, L, L];
[ Ck, 0, 1 , 0 ] -> [ 12 , L, L, H, H, L, L];
[ Ck, 0, 1 , 0 ] -> [ 13 , L, L, H, L, H, L];
[ Ck, 0, 1 , 0 ] -> [ 0 , H, L, L, L, L, H];
[ Ck, 0, 1 , 0 ] -> [ 0 , H, L, L, L, L, H];
[ Ck, 0, 1 , 1 ] -> [ 1 , H, L, L, L, L, H];
[ Ck, 0, 1 , 1 ] -> [ 2 , H, L, L, L, L, H];
[ Ck, 0, 1 , 1 ] -> [ 3 , H, L, L, L, L, H];
[ 1 , 1, 1 , 1 ] -> [ 15 , X, X, X, X, X, X];
[ 1 , 0, 1 , 1 ] -> [ 15 , X, X, X, X, X, X];
[ Ck, 0, 1 , 0 ] -> [ 0 , H, L, L, L, L, H];
@page
equations
[GB,YB,RB].AP = PR;
[GA,YA,RA].AP = PR;
[GB,YB,RB].CLK = Clk;
[GA,YA,RA].CLK = Clk;
[S3,S2,S1,S0].AP = PR;
[S3,S2,S1,S0].CLK = Clk;
@dcset
state_diagram Count
State 0: if ( SenA & !SenB ) then 0;
if (!SenA & SenB ) then 4;
if ( SenA == SenB ) then 1;
State 1: goto 2;
State 2: goto 3;
State 3: goto 4;
State 4: GreenA = Off;
YellowA = On ;
goto 5;
State 5: YellowA = Off;
RedA = On ;
RedB = Off;
GreenB = On ;
goto 8;
State 8: if (!SenA & SenB ) then 8;
if ( SenA & !SenB ) then 12;
if ( SenA == SenB ) then 9;
State 9: goto 10;
State 10: goto 11;
State 11: goto 12;
State 12: GreenB = Off;
YellowB = On ;
goto 13;
State 13: YellowB = Off;
RedB = On ;
RedA = Off;
GreenA = On ;
goto 0;
State 15: "Power up and preset state
RedA = Off;
YellowA = Off;
GreenA = On ;
RedB = On ;
YellowB = Off;
GreenB = Off;
goto 0;
"Unused states
State 6: goto 0;
State 7: goto 0;
State 14: goto 0;
end
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -