Usage of IC 7458¶
from __future__ import print_function
from BinPy import *
# Usage of IC 7458:
ic = IC_7458()
print(ic.__doc__)
This is a 2-input and 3-input AND-OR gate
# The Pin configuration is:
inp = {
1: 1,
2: 0,
3: 0,
4: 0,
5: 0,
7: 0,
9: 0,
10: 0,
11: 0,
12: 1,
13: 1,
14: 1}
# Pin initinalization
# Powering up the IC - using -- ic.setIC({14: 1, 7: 0})
ic.setIC({14: 1, 7: 0})
# Setting the inputs of the ic
ic.setIC(inp)
# Draw the IC with the current configuration\n
ic.drawIC()
┌─────────◡─────────┐
│ │
[1] ──┤ 1 14 ├── [1]
│ │
│ │
[0] ──┤ 2 7 13 ├── [1]
│ │
│ │
[0] ──┤ 3 4 12 ├── [1]
│ │
│ │
[0] ──┤ 4 5 11 ├── [0]
│ │
│ │
[0] ──┤ 5 8 10 ├── [0]
│ │
│ │
[0] ──┤ 6 9 ├── [0]
│ │
│ │
[0] ──┤ 7 8 ├── [0]
│ │
└───────────────────┘
# Run the IC with the current configuration using -- print ic.run() --
# Note that the ic.run() returns a dict of pin configuration similar to
print (ic.run())
{8: 1, 6: 0}
# Seting the outputs to the current IC configuration using -- ic.setIC(ic.run()) --\n
ic.setIC(ic.run())
# Draw the final configuration
ic.drawIC()
┌─────────◡─────────┐
│ │
[1] ──┤ 1 14 ├── [1]
│ │
│ │
[0] ──┤ 2 7 13 ├── [1]
│ │
│ │
[0] ──┤ 3 4 12 ├── [1]
│ │
│ │
[0] ──┤ 4 5 11 ├── [0]
│ │
│ │
[0] ──┤ 5 8 10 ├── [0]
│ │
│ │
[0] ──┤ 6 9 ├── [0]
│ │
│ │
[0] ──┤ 7 8 ├── [1]
│ │
└───────────────────┘
# Seting the outputs to the current IC configuration using -- ic.setIC(ic.run()) --
ic.setIC(ic.run())
# Draw the final configuration
ic.drawIC()
# Run the IC
print (ic.run())
┌─────────◡─────────┐
│ │
[1] ──┤ 1 14 ├── [1]
│ │
│ │
[0] ──┤ 2 7 13 ├── [1]
│ │
│ │
[0] ──┤ 3 4 12 ├── [1]
│ │
│ │
[0] ──┤ 4 5 11 ├── [0]
│ │
│ │
[0] ──┤ 5 8 10 ├── [0]
│ │
│ │
[0] ──┤ 6 9 ├── [0]
│ │
│ │
[0] ──┤ 7 8 ├── [1]
│ │
└───────────────────┘
{8: 1, 6: 0}
# Connector Outputs
c = Connector()
# Set the output connector to a particular pin of the ic
ic.setOutput(8, c)
print(c)
Connector; State: 1