pin.html 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125
  1. <html>
  2. <head>
  3. <title>Pin</title>
  4. </head>
  5. <body bgcolor="FFFFFF">
  6. <h1><img align="center" src="../../../../en/icons/pinInput.gif" width="32" height="32">
  7. <img align="center" src="../../../../en/icons/pinOutput.gif" width="32" height="32">
  8. <em>Pin</em></h1>
  9. <p><table>
  10. <tr><td><strong>Library:</strong></td>
  11. <td><a href="index.html">Wiring</a></td></tr>
  12. <tr><td><strong>Introduced:</strong></td>
  13. <td>2.0 Beta 1 (in Base library, moved to Wiring in 2.7.0)</td></tr>
  14. <tr><td valign="top"><strong>Appearance:</strong></td>
  15. <td valign="top"><img src="../../../../en/img-libs/pin.png" width="101" height="51"></td></tr>
  16. </table></p>
  17. <h2>Behavior</h2>
  18. <p>A pin is an output or an input to a circuit, depending on the value
  19. of its Output? attribute. In drawing a pin, Logisim represents output
  20. pins using a circle or rounded rectangle, and input pins are represented
  21. using squares or rectangles. In either case, the individual bits of the
  22. value being sent or received is displayed within the component (except
  23. within printer view, when the component only says how many bits wide the
  24. pin is).</p>
  25. <p>A pin is a convenient component for interacting with a circuit, and
  26. beginning Logisim users need not use them in any other way. But a
  27. user building a circuit using several subcircuits (as described in the
  28. `<a href="../../guide/subcirc/index.html">Subcircuits</a>' section of
  29. the <em>User's Guide</em>) will use pins also
  30. to specify the interface between a
  31. circuit and a subcircuit. In particular, a circuit layout's pin
  32. components define the pins that appear on the subcircuit component when
  33. the layout is used within another circuit. In such a circuit, the values
  34. sent and received to those locations on the subcircuit component are
  35. tied to the pins within the subcircuit layout.</p>
  36. <h2>Pins</h2>
  37. <p>A pin component has only one pin, which will be an input to the
  38. component if the pin is an output pin, and it will be an output to the
  39. component if the pin is an input pin. In either case, its bit width
  40. matches the Data Bits attribute, and its location is specified by the
  41. Facing attribute.</p>
  42. <h2>Attributes</h2>
  43. <p>When the component is selected or being added,
  44. Alt-0 through Alt-9 alter its <q>Data Bits</q> attribute,
  45. the arrow keys alter its <q>Facing</q> attribute,
  46. and Alt with an arrow key alters its <q>Label Location</q> attribute.</p>
  47. <dl>
  48. <dt>Facing</dt>
  49. <dd>The side of the component where its input/output pin should be.</dd>
  50. <dt>Output?</dt>
  51. <dd>Specifies whether the component is an output pin or an input pin.
  52. (Note that if the pin component is an input pin, then the pin that acts
  53. as its interface within the circuit will be an output, and vice versa.)</dd>
  54. <dt>Data Bits</dt>
  55. <dd>The number of bits for the value that the pin handles.</dd>
  56. <dt>Three-state?</dt>
  57. <dd>For an input pin, this configures whether the user can
  58. instruct the pin to emit unspecified (i.e., floating) values.
  59. The attribute deals with the user interface only; it does not have
  60. any effect on how the pin behaves when the circuit layout is used as a
  61. subcircuit.
  62. For an output pin, the attribute has no effect.</dd>
  63. <dt>Pull Behavior</dt>
  64. <dd>For an input pin, the attribute specifies how floating values should
  65. be treated when received as an input, perhaps from a circuit using the
  66. layout as a subcircuit. With "unchanged," the floating values are sent
  67. into the layout as floating values; with "pull up," they are converted
  68. into 1 values before being sent into the circuit layout; and with "pull
  69. down," they are converted into 0 values before being sent into the
  70. circuit layout.</dd>
  71. <dt>Label</dt>
  72. <dd>The text within the label associated with the component.</dd>
  73. <dt>Label Location</dt>
  74. <dd>The location of the label relative to the component.</dd>
  75. <dt>Label Font</dt>
  76. <dd>The font with which to render the label.</dd>
  77. </dl>
  78. <h2>Poke Tool Behavior</h2>
  79. <p>Clicking an output pin has no effect, although the pin's attributes
  80. will be displayed.</p>
  81. <p>Clicking an input pin will toggle the bit that is clicked. If it is a
  82. three-state pin, then the corresponding bit will rotate between the
  83. three states.</p>
  84. <p>If, however, the user is viewing the state of a subcircuit
  85. as described in the `<a href="../../guide/subcirc/debug.html">Debugging
  86. Subcircuits</a>' of the <em>User's Guide</em>,
  87. then the pin's value is pinned to whatever value the subcircuit is
  88. receiving from the containing circuit. The user cannot change the value
  89. without breaking this link between the subcircuit's state and the
  90. containing circuit's state, and Logisim will prompt the user to verify
  91. that breaking this link is actually desired.</p>
  92. <h2>Text Tool Behavior</h2>
  93. <p>Allows the label associated with the component to be edited.</p>
  94. <p><a href="../index.html">Back to <em>Library Reference</em></a></p>
  95. </body>
  96. </html>