Oracle® Java ME Embedded Getting Started Guide for the Reference Platform (STM32429I-EVAL) Release 8.1 Developer Preview E61129-01 |
|
Previous |
Next |
Beta Draft: 2015-04-29
This appendix describes the proper ID and names for the various peripheral ports and buses for the ST Micro STM32429I-EVAL embedded board, which are accessible using the Device Access APIs. Note that any IMlet that accesses the Device Access APIs must be digitally signed using a trusted certificate authority. An IMlet that is not signed will encounter an authentication error when attempting to access the Device Access APIs.
The following ADC channels are pre-configured.
DAAPI Peripheral ID | DAAPI Peripheral Name | Mapped To | Configuration |
---|---|---|---|
3000 | Potentiometer | PF10 | controllerNumber = 2
channelNumber = 8 resolution = 12 samplingInterval = 46857 samplingTime = 46857 |
Additional notes:
Potentiometer (RV1) is connected to ADC3 channel 8 via GPIO PF10
For the sampling interval, only a limited set of values are supported: 11810, 14857, or 46857 usec. Setting the sampling interval to any other value will force it to be reset to the closest legal value.
After a call to ADCChannel.startMonitoring()
, a MonitoringListener
cannot be called more than one time around the boundary because of jitter.
Note the following conditions on ADCChannelConfig
parameters: the resolution is a 12-bit fixed value regardless of the input parameter, and the sampling interval and the sampling time are the same internally. PERIPHERAL_CONFIG_DEFAULT
is supported, and the default value is 46857 usec.
The following GPIO pins are pre-configured:
DAAPI Peripheral ID | DAAPI Peripheral Name | Mapped To | Configuration |
---|---|---|---|
1 | LED_1 | Green LED (R192) | controllerNumber = 6
pinNumber = 6 direction = GPIOPinConfig.DIR_OUTPUT_ONLY mode = GPIOPinConfig.MODE_OUTPUT_PUSH_PULL trigger = GPIOPinConfig.TRIGGER_NONE initValue = false |
2 | LED_2 | Orange LED (R191) | controllerNumber = 6
pinNumber = 7 direction = GPIOPinConfig.DIR_OUTPUT_ONLY mode = GPIOPinConfig.MODE_OUTPUT_PUSH_PULL trigger = GPIOPinConfig.TRIGGER_NONE initValue = false |
3 | LED_3 | Red LED (R190) | controllerNumber = 6
pinNumber = 10 direction = GPIOPinConfig.DIR_OUTPUT_ONLY mode = GPIOPinConfig.MODE_OUTPUT_PUSH_PULL trigger = GPIOPinConfig.TRIGGER_NONE initValue = false |
4 | LED 4 | Blue LED (R189) | controllerNumber = 6
pinNumber = 12 direction = GPIOPinConfig.DIR_OUTPUT_ONLY mode = GPIOPinConfig.MODE_OUTPUT_PUSH_PULL trigger = GPIOPinConfig.TRIGGER_NONE initValue = false |
5 | BUTTON 1 | Wake up Button (B2) | controllerNumber = 0
pinNumber = 0 direction = GPIOPinConfig.DIR_INPUT_ONLY mode = GPIOPinConfig.MODE_INPUT_PULL_DOWN trigger = GPIOPinConfig.TRIGGER_RISING_EDGE initValue = ignored |
6 | BUTTON 2 | Tamper/Key (B3) | controllerNumber = 2
pinNumber = 13 direction = GPIOPinConfig.DIR_INPUT_ONLY mode = GPIOPinConfig.MODE_INPUT_PULL_UP trigger = GPIOPinConfig.TRIGGER_FALLING_EDGE initValue = ignored |
50 | IO_EXPANDER_INT | Interrupt pin for on-board STMPE1600 | controllerNumber = 8
pinNumber = 8 direction = GPIOPinConfig.DIR_INPUT_ONLY mode = GPIOPinConfig.MODE_INPUT_PULL_UP trigger = GPIOPinConfig.TRIGGER_FALLING_EDGE |
WARNING: The information in this appendix is presented in addition to the board schematics provided by the manufacturer. Be sure to familiarize yourself with the manufacturer's documentation for all of the GPIO pins. Failure to do so can result in damaged peripherals or even a damaged embedded board. |
Additional notes:
If the controllerNumber
is set as GPIOPinConfig.DEFAULT
, it is interpreted as 6. The pinNumber
in this case is 6 as well, this a GPIOPin
connected to the Green LED will be opened by default.
If the mode
is set as GPIOPinConfig.DEFAULT
and direction
is set as INPUT
then the default mode
is interpreted as MODE_INPUT_PULL_DOWN
. If the direction
is set as OUTPUT
, then the default mode is interpreted as MODE_OUTPUT_OPEN_DRAIN
.
The following GPIO pins cannot be opened because they are mapped to other resources. For more information, refer to evaluation board schematics from ST Micro.
SPI bus: PF9, PF8, PF7, PF6
ADC: PF10
UART: PA9, PA10
SDHC: PC8, PC9, PC10, PC11, PD2
I2C: PB6, PB9
Ethenet: PC3, PG13, PG14, PC2, PB8, PG11, PA1, PC4, PC5, PH6, PH7, PA7, PB10, PA3
JTAG/SWO: PA13, PA14
USB (OTG-HS): PB0, PB1, PB5, PB10 ~ PB13, PA3, PI11
LCD: PJ0 ~ PJ15, PK0~PK15, PI12~PI15
FMC: PF0 ~ PF5, PF11 ~ PF15, PG0 ~PG5, PH8~PH15, PI0~PI3, PI9, PE0, PE1
SDRAM: PH5, PG15, PF11, PH3, PH2, PG8
Onboard LEDs are connected with their anodes to 3v3. To turn them on, set the pin to false.
The following GPIO ports are pre-configured:
DAAPI Peripheral ID | DAAPI Peripheral Name | Mapped To | Configuration |
---|---|---|---|
8 | LEDS | Green LED, Orange LED, Red LED, Blue RED | direction = GPIOPinConfig.DIR_OUTPUT_ONLY
initValue = 0 For each pin information are same as the GPIO Pins section above. |
Additional notes:
The following GPIO ports are supported: PA, PB, PC, PD, PE, PF, PG, PH, PI, PK
The following I2C devices are pre-configured:
DAAPI Peripheral ID | DAAPI Peripheral Name | Mapped To | Configuration |
---|---|---|---|
500 | IO_EXPANDER | On-board IO Expander, STMPE1600QTR. (Using this IO Expander, the on-board Joystick can be accessed indirectly) | controllerNumber = 1
address = 66 addressSize = 7 clockFrequency = 100000 |
The following additional hardware information is applicable for I2C devices:
The CMSIS I2C driver on this board only supports the following two types of clock frequencies: 100kHz (ARM_I2C_BUS_SPEED_STANDARD
), and 400kHz (ARM_I2C_BUS_SPEED_FAST
).
I2C1
controller information: I2C1_SCL
maps to PB6, and I2C1_SDA
maps to PB9. The address capability is 7-bit only, the addresses used are 0x32 (on-board Audio) and 0x42 (on-board IO Expander), and the clock frequency is either 100 KHz (standard speed) or 400 KHz (fast speed).
The following additional information is applicable for I2C devices on the board itself:
For the IO Expander: the device is STMPE1600
, which is a GPIO port expander that is able to interface a main digital ASIC(MCU) via the two-line bidirectional bus (I2C). The connected MCU's I2C Controller is: I2C1; applicable pins are I2C1_SCL
: PB6, I2C1_SDA
: PB9, and IO_EXPANDER_INT
: PI8 (the IO Expander interrupt pin is connected to the MCU). The clock frequency may be between: 0 and 400 kHz.
Joystick: Remember that the pins are not connected to MCU, but are instead connected to the IO Expander. By reading and writing the registers of the IO Expander, the joystick status can be monitored. Out of 16 pins of IO Expander, the following 5 pins are connected to the joystick: EXP_IO14
: SELECT; EXP_IO13
: DOWN; EXP_IO12
: LEFT; EXP_IO11
: RIGHT; EXP_IO10
: UP.
SPI is currently supported, however there are no pre-configured SPI devices on the board. However, the board is able to connect an external module to the pinout on the board as a ad-hoc device, as follows.
SPI5 is the only connection supported, so the controllerNumber
should be 5. This is default value. Use the following SPI pins: MOSI: PF9; MOSI: PF8; CLK: PF7; CS: PF6.
CS is available only as 'active low'
According to the ST Micro documentation, SPI5 can communicate at up to 45 Mbits/s.
The following are default parameters:
controllerNumber
: 5
address
: 0
clockFrequency
: 10000000 (10 MHz)
wordLength
: 8 bits
bitOrdering
: Big Endian
csActive
: ACTIVE_LOW
clockMode
: CPOL-High , CPHA-Even
The following UART devices are pre-configured:
DAAPI Peripheral ID | DAAPI Peripheral Name | Mapped To | Configuration |
---|---|---|---|
5000 | USART1 | Onboard USART1 connector (CN8) | controllerName = USART1
baudRate = 115200 parity = 0 dataBits = 8 stopBits = 1 flowControl = 0 |
Note the following.
Supported UART: USART1
at onboard hardware connector CN8.
Hardware setting: jumper JP7 should be set to 1-2 (default setting)
Supported parity
: none
, even
and odd
. mark
and space
are not supported
Supported databit
: 5, 6, 7, 8 and 9
Supported stopbit
: 1, 1_5 and 2
Hardware flow control is not supported
Log channel note: UART logging is disabled by default. If the internal property log.method
is set to UART
, then USART1 is dedicated to logging and you cannot use USART1 as the Device I/O UART
The following are default parameters:
baudrate
: 115200
parity
: none
databit
: 8
stopbit
: 1
flow control: none
The following watchdog devices are pre-configured:
DAAPI Peripheral ID | DAAPI Peripheral Name | Mapped To | Configuration |
---|---|---|---|
60 | WDG | Platform Watchdog |
Note that the platform watchdog is not a DIO watchdog for Java application. Instead, it's the platform's general watchdog.
The system.watchdog
property must be enabled. This is an internal property for platform watchdog in the jwc_prop.ini
file. Note that the default value is false
.
The timeout value is 4 seconds, which means the device will reboot if it is frozen for more than 4 seconds.