Usage of IC 74151A¶
from __future__ import print_function
from BinPy import *
# Usage of IC 74151A:
ic = IC_74151A()
print(ic.__doc__)
This is 16-pin 8:1 multiplexer featuring complementary W and Y outputs
# The Pin configuration is:
inp = {
1: 1,
2: 0,
4: 1,
3: 1,
7: 0,
9: 0,
10: 0,
11: 0,
12: 0,
13: 0,
14: 1,
15: 1}
# Pin initinalization
# Powering up the IC - using -- ic.setIC({14: 1, 7: 0})
ic.setIC({16: 1, 8: 0})
# Setting the inputs of the ic
ic.setIC(inp)
# Draw the IC with the current configuration\n
ic.drawIC()
┌─────────◡─────────┐
│ │
[1] ──┤ 1 16 ├── [1]
│ │
│ │
[0] ──┤ 2 7 15 ├── [1]
│ │
│ │
[1] ──┤ 3 4 14 ├── [1]
│ │
│ │
[1] ──┤ 4 1 13 ├── [0]
│ │
│ │
[Z] ──┤ 5 5 12 ├── [0]
│ │
│ │
[Z] ──┤ 6 1 11 ├── [0]
│ │
│ │
[0] ──┤ 7 A 10 ├── [0]
│ │
│ │
[0] ──┤ 8 9 ├── [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())
{5: 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 16 ├── [1]
│ │
│ │
[0] ──┤ 2 7 15 ├── [1]
│ │
│ │
[1] ──┤ 3 4 14 ├── [1]
│ │
│ │
[1] ──┤ 4 1 13 ├── [0]
│ │
│ │
[1] ──┤ 5 5 12 ├── [0]
│ │
│ │
[0] ──┤ 6 1 11 ├── [0]
│ │
│ │
[0] ──┤ 7 A 10 ├── [0]
│ │
│ │
[0] ──┤ 8 9 ├── [0]
│ │
└───────────────────┘
# 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 16 ├── [1]
│ │
│ │
[0] ──┤ 2 7 15 ├── [1]
│ │
│ │
[1] ──┤ 3 4 14 ├── [1]
│ │
│ │
[1] ──┤ 4 1 13 ├── [0]
│ │
│ │
[1] ──┤ 5 5 12 ├── [0]
│ │
│ │
[0] ──┤ 6 1 11 ├── [0]
│ │
│ │
[0] ──┤ 7 A 10 ├── [0]
│ │
│ │
[0] ──┤ 8 9 ├── [0]
│ │
└───────────────────┘
{5: 1, 6: 0}
# Connector Outputs
c = Connector()
# Set the output connector to a particular pin of the ic
ic.setOutput(5, c)
print(c)
Connector; State: 1