Login
Back to forumSee the full topicGo to last reply

Posted By

TLC
on 2022-12-07
04:46:21
 Re: External User Port for the C16: Let's make it!

@gerliczer the 6529B implements something that Intel 805x people generally refer to as a "quasi bidirectional" I/O port, see: IO Pins Ports and Circuits of 8051 Microcontroller, page 2, Port 1 (and 2,3). In short, data reads come directly from the I/O pins, data writes are stored in an internal latch, which (the latch, that is) feeds the I/O output drivers. Until this point this would just be an unidirectional (output) I/O port, whose output state can be read back. The trick is, that the I/O drivers are asymmetric, that is, they produce strong "low" but weak "high" levels. (In the case of the 8051, this "high" level is also produced by a static pullup resistor, not a controlled high-side driver mosfet). Now, if you set some output pin to "high" (1), and pull the resulting "weak" high level "low" by some external device, the "low" state will be reflected by the data read from the port (which, as said, reflects the I/O pins' states directly). This is how the 6529B can be a bidirectional port (where also every bits can be freely used as inputs or outputs individually), even with no data direction register used.



Back to top


Copyright © Plus/4 World Team, 2001-2024