I am reading the datasheet of an ARM Cortex chip, specifically the GPIO chapter. Ultimately, I want to configure various GPIO pins to use them in "Alternate Function" mode for read/write access to SRAM.
Of all the GPIO registers available, I do not understand two:
GPIO_OTYPE which are respectively the "pull-up/pull-down register" and the "output type register".
GPIO_PUPDR I have three choices:
- No pull-up or pull-down
- Pull down
GPIO_0TYPE I have two choices:
- Output push-pull
- Output open-drain
What is the difference between all the different configurations, and which would be the most appropriate for SRAM communication?
The documentation for the board I am working on is available here (see page 24 for the SRAM schematics). The reference manual for the ARM Chip is available here (see pages 145 and 146 for the GPIO registers).