The available options for IO0 are:
However the datasheet does not document this restriction and mentions this is GPIO: so why is Digital input/output not an available option in GreenPAK designer V6.36?
Look at the "Function" column. It says "General Purpose I/O" for pin 2. In contrast, pins that can be used as input/output have "General Purpose I/O with OE (Note 1)" in that column.
However the table I reverenced (Table 1: Functional Pin Description) does not show Input and output combinations as mutually exclusive.
Additionally to make matters interesting the register map is what I was originally looking at and it shows the opposite of : IO0 has OE. See Table 59 below.
However both IO can be configured as Open-Drain (our usage) so I would suspect that the input could still be read in the matrix and give a valid result even for pins without OE, which seems to be implied by Table 1. The IO structure (Figure 5) also shows the input is always connected and my experiments with these devices show that the internals are quite accurately represented by these diagrams:
However both IO can be configured as Open-Drain (our usage) so I would suspect that the input could still be read in the matrix and give a valid result even for pins without OE
No, the issue is that if you use OE to set the pin as output, you also disable the input because of this:
This is a weird quirk of GreenPAKs, I don't get why you would want to block the input function if a pin is set as output, but it is the way they are. If a pin is set to output, its input returns a 0.
Thanks: that's an interesting design choice: it's correctly documented in the datasheet but I missed the subtle difference captured in "5.9.1 Register OE IO Structure (for IOs 0, 2, 3 with VDD)"
Hi,
First of all please update the designer software to latest version.
The PINs has OE terminal which indicates it can be set as Digital input/output.
Since the OE’s state decides the PIN will work as Input mode or Output mode.
Thanks
AB