Last updated at 12:20 am UTC on 1 November 2006
This project relies on Ned Konz's Connectors. I am at this point using Connectors 1.9-
link to The Interactive Design and Simulation System
The ECEToolkit simply allows you to connect some logic gates to inputs and outputs. When you have a fully connected circuit, a truth table will be generated and displayed.
How to get started:
The file is here, http://vanjulio.swiki.net/.uploads/ECE.cs.
When you file this into an image the postscript code will open up a Toolkit box. This is meant to be just like the Object Catalogue. -Just drag and drop pieces from the toolkit and then wire them together with the connection wire.
- Note that also you can branch wires off each other...
- Try starting a new connecting wire from an existing connection inside your circuit.
- This allows you to sample intermediate values within the diagram.
- The truth tables are triggered by the connecting wire: any time a wire is adjusted and the circuit diagram is complete, the truth tables values for the inputs and outputs will be generated.
There are a variety of limitations at this stage of development:
- The circuits cannot be built with cycles.
- Cycles of course are necessary in circuit design to make things like registers, latches, flip-flops, etc.
- The attachment points of the gates are arbitrary and need to be fixed to exact points on the morph's graphical form.
- 7/1/03: this has a fairly simple correction available within the connectors attachment point protocol. I just havent gone back to hook into that protocol yet.
- The gates only provide 2 input channels. The underlying code provides scalability to an arbitrary number of inputs, but I didn't want to deal with the complexity of variably sized logic gate widgets in the toolkit itself.
- Besides, the clever user can implement an arbitrary number of inputs to a single gate function by chaining 2:1's together.
- A future goal would be to combine boolean algebra symbolic expressions with the truth tables — but as of now the system has very little designed into it to allow such a mapping between concepts.
- Ideally, this would be easily implemented into a proper ECEToolkit. Would free all students from having to work with paper and pencil?