📄 bcd7.abl
字号:
module BCD7
title 'seven segment display decoder 1 Aug 1990
Walter Bright Data I/O Corp Redmond WA'
" a
" --- BCD-to-seven-segment decoder similar to the 7449
" f| g |b
" --- segment identification
" e| d |c
" ---
bcd7 device 'P16V8R';
D3,D2,D1,D0 pin 5,4,3,2;
a,b,c,d,e,f,g pin 19,18,17,16,15,14,13 istype 'com';
bcd = [D3,D2,D1,D0];
led = [a,b,c,d,e,f,g];
ON,OFF = 0,1; " for common anode LEDs
L,H,X,Z = 0,1,.X.,.Z.;
@dcset
truth_table (bcd -> [ a , b , c , d , e , f , g ])
^b0000 -> [ ON, ON, ON, ON, ON, ON, OFF];
^b0001 -> [OFF, ON, ON, OFF, OFF, OFF, OFF];
^b0010 -> [ ON, ON, OFF, ON, ON, OFF, ON];
^b0011 -> [ ON, ON, ON, ON, OFF, OFF, ON];
^b0100 -> [OFF, ON, ON, OFF, OFF, ON, ON];
^b0101 -> [ ON, OFF, ON, ON, OFF, ON, ON];
^b0110 -> [ ON, OFF, ON, ON, ON, ON, ON];
^b0111 -> [ ON, ON, ON, OFF, OFF, OFF, OFF];
^b1000 -> [ ON, ON, ON, ON, ON, ON, ON];
^b1001 -> [ ON, ON, ON, ON, OFF, ON, ON];
^b1010 -> [ ON, ON, ON, OFF, ON, ON, ON];
^b1011 -> [ OFF, OFF, ON, ON, ON, ON, ON];
^b1100 -> [ ON, OFF, OFF, ON, ON, ON, OFF];
^b1101 -> [ OFF, ON, ON, ON, ON, OFF, ON];
^b1110 -> [ ON, OFF, OFF, ON, ON, ON, ON];
^b1111 -> [ ON, OFF, OFF, OFF, ON, ON, ON];
test_vectors (bcd -> [ a , b , c , d , e , f , g ])
^b0000 -> [ ON, ON, ON, ON, ON, ON, OFF];
^b0001 -> [OFF, ON, ON, OFF, OFF, OFF, OFF];
^b0010 -> [ ON, ON, OFF, ON, ON, OFF, ON];
^b0011 -> [ ON, ON, ON, ON, OFF, OFF, ON];
^b0100 -> [OFF, ON, ON, OFF, OFF, ON, ON];
^b0101 -> [ ON, OFF, ON, ON, OFF, ON, ON];
^b0110 -> [ ON, OFF, ON, ON, ON, ON, ON];
^b0111 -> [ ON, ON, ON, OFF, OFF, OFF, OFF];
^b1000 -> [ ON, ON, ON, ON, ON, ON, ON];
^b1001 -> [ ON, ON, ON, ON, OFF, ON, ON];
^b1010 -> [ ON, ON, ON, OFF, ON, ON, ON];
^b1011 -> [ OFF, OFF, ON, ON, ON, ON, ON];
^b1100 -> [ ON, OFF, OFF, ON, ON, ON, OFF];
^b1101 -> [ OFF, ON, ON, ON, ON, OFF, ON];
^b1110 -> [ ON, OFF, OFF, ON, ON, ON, ON];
^b1111 -> [ ON, OFF, OFF, OFF, ON, ON, ON];
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -