Technical Description
Application Programmers Interface (API)
Most modern operating systems do not allow direct hardware access. The SeaIO driver and API have been included to provide control over the hardware in Windows and Linux environments. The purpose of this section of the manual is to help the customer with the mapping of the API to the actual inputs for the 8005 specifically. Complete documentation of the API can be found in its accompanying help file.
Presetting an Output Port:
Each port has an output register associated with it. This register may be written and retains its value whether the port is configured as an input or an output. To preset the value of an output port the program should write to the port when it is configured as an input then configure it as an output. Inputs cannot be written to with relative addressing, absolute addressing must be used. See Relative Addressing vs. Absolute Addressing below.
Interrupts:
Interrupt sampling can be set up in the API. Port A1 bit zero is the interrupt source (pin 47). Refer to the API section in the SeaI/O help file for more detailed information.
Port C
Port C of each bank has the ability to be configured as two four bit ports. If both lower and upper nibbles are configured the same then no special considerations need to be made. But if they are configured differently, one nibble as input, and one as output then the user will have to keep this in mind.
Port C absolute addressing (when port C is split)
When reading, the input nibble will be returned on the corresponding upper or lower nibble while the outputs will be returned on their corresponding upper or lower nibble. When writing, the corresponding nibble will be written to the output nibble, while the input nibble will have its output register written to. The output register can be written to without affecting the inputs. These will be eight bit operations and it will up to the programmer to keep track of the two four bit nibbles.
Page 8 |