quasar_def.h

This file defines MCU pinout and other control definitions.

Copyright

Copyright (C) 2023 SPARK Microsystems International Inc. All rights reserved.

License

This source code is proprietary and subject to the SPARK Microsystems Software EULA found in this package in file EULA.txt.

Author

SPARK FW Team.

Defines

QUASAR_DEF_RADIO_1_SCK_PORT QUASAR_GPIO_PORT_E
QUASAR_DEF_RADIO_1_SCK_PIN QUASAR_GPIO_PIN_13
QUASAR_DEF_RADIO_1_MOSI_PORT QUASAR_GPIO_PORT_E
QUASAR_DEF_RADIO_1_MOSI_PIN QUASAR_GPIO_PIN_15
QUASAR_DEF_RADIO_1_MISO_PORT QUASAR_GPIO_PORT_E
QUASAR_DEF_RADIO_1_MISO_PIN QUASAR_GPIO_PIN_14
QUASAR_DEF_RADIO_1_CS_PORT QUASAR_GPIO_PORT_E
QUASAR_DEF_RADIO_1_CS_PIN QUASAR_GPIO_PIN_11
QUASAR_DEF_RADIO_1_RESET_PORT QUASAR_GPIO_PORT_G
QUASAR_DEF_RADIO_1_RESET_PIN QUASAR_GPIO_PIN_2
QUASAR_DEF_RADIO_1_SHUTDOWN_PORT QUASAR_GPIO_PORT_D
QUASAR_DEF_RADIO_1_SHUTDOWN_PIN QUASAR_GPIO_PIN_9
QUASAR_DEF_RADIO_1_IRQ_PORT QUASAR_GPIO_PORT_E
QUASAR_DEF_RADIO_1_IRQ_PIN QUASAR_GPIO_PIN_8
QUASAR_DEF_RADIO_1_DBG_EN_PORT QUASAR_GPIO_PORT_D
QUASAR_DEF_RADIO_1_DBG_EN_PIN QUASAR_GPIO_PIN_13
QUASAR_DEF_RADIO_1_SCN_EN_PORT QUASAR_GPIO_PORT_D
QUASAR_DEF_RADIO_1_SCN_EN_PIN QUASAR_GPIO_PIN_10
QUASAR_DEF_RADIO_1_PLL_SEL_PORT QUASAR_GPIO_PORT_C
QUASAR_DEF_RADIO_1_PLL_SEL_PIN QUASAR_GPIO_PIN_6
QUASAR_DEF_RADIO_1_CLK_XTAL_SEL_PORT QUASAR_GPIO_PORT_C
QUASAR_DEF_RADIO_1_CLK_XTAL_SEL_PIN QUASAR_GPIO_PIN_7
QUASAR_DEF_RADIO_2_SCK_PORT QUASAR_GPIO_PORT_B
QUASAR_DEF_RADIO_2_SCK_PIN QUASAR_GPIO_PIN_10
QUASAR_DEF_RADIO_2_MOSI_PORT_REVA QUASAR_GPIO_PORT_B
QUASAR_DEF_RADIO_2_MOSI_PIN_REVA QUASAR_GPIO_PIN_15
QUASAR_DEF_RADIO_2_MOSI_PORT_REVB QUASAR_GPIO_PORT_D
QUASAR_DEF_RADIO_2_MOSI_PIN_REVB QUASAR_GPIO_PIN_4
QUASAR_DEF_RADIO_2_MISO_PORT QUASAR_GPIO_PORT_B
QUASAR_DEF_RADIO_2_MISO_PIN QUASAR_GPIO_PIN_14
QUASAR_DEF_RADIO_2_CS_PORT QUASAR_GPIO_PORT_I
QUASAR_DEF_RADIO_2_CS_PIN QUASAR_GPIO_PIN_5
QUASAR_DEF_RADIO_2_RESET_PORT QUASAR_GPIO_PORT_D
QUASAR_DEF_RADIO_2_RESET_PIN QUASAR_GPIO_PIN_8
QUASAR_DEF_RADIO_2_SHUTDOWN_PORT QUASAR_GPIO_PORT_D
QUASAR_DEF_RADIO_2_SHUTDOWN_PIN QUASAR_GPIO_PIN_11
QUASAR_DEF_RADIO_2_IRQ_PORT QUASAR_GPIO_PORT_E
QUASAR_DEF_RADIO_2_IRQ_PIN QUASAR_GPIO_PIN_7
QUASAR_DEF_RADIO_2_IO_4_PORT QUASAR_GPIO_PORT_B
QUASAR_DEF_RADIO_2_IO_4_PIN QUASAR_GPIO_PIN_13
QUASAR_DEF_RADIO_1_QSPI_SCK_PORT QUASAR_GPIO_PORT_F
QUASAR_DEF_RADIO_1_QSPI_SCK_PIN QUASAR_GPIO_PIN_10
QUASAR_DEF_RADIO_1_QSPI_IO_0_PORT QUASAR_GPIO_PORT_F
QUASAR_DEF_RADIO_1_QSPI_IO_0_PIN QUASAR_GPIO_PIN_8
QUASAR_DEF_RADIO_1_QSPI_IO_1_PORT QUASAR_GPIO_PORT_F
QUASAR_DEF_RADIO_1_QSPI_IO_1_PIN QUASAR_GPIO_PIN_9
QUASAR_DEF_RADIO_1_QSPI_IO_2_PORT QUASAR_GPIO_PORT_F
QUASAR_DEF_RADIO_1_QSPI_IO_2_PIN QUASAR_GPIO_PIN_7
QUASAR_DEF_RADIO_1_QSPI_IO_3_PORT QUASAR_GPIO_PORT_F
QUASAR_DEF_RADIO_1_QSPI_IO_3_PIN QUASAR_GPIO_PIN_6
QUASAR_DEF_RADIO_2_QSPI_SCK_PORT QUASAR_GPIO_PORT_H
QUASAR_DEF_RADIO_2_QSPI_SCK_PIN QUASAR_GPIO_PIN_6
QUASAR_DEF_RADIO_2_QSPI_IO_0_PORT QUASAR_GPIO_PORT_I
QUASAR_DEF_RADIO_2_QSPI_IO_0_PIN QUASAR_GPIO_PIN_3
QUASAR_DEF_RADIO_2_QSPI_IO_1_PORT QUASAR_GPIO_PORT_I
QUASAR_DEF_RADIO_2_QSPI_IO_1_PIN QUASAR_GPIO_PIN_2
QUASAR_DEF_RADIO_2_QSPI_IO_2_PORT QUASAR_GPIO_PORT_I
QUASAR_DEF_RADIO_2_QSPI_IO_2_PIN QUASAR_GPIO_PIN_1
QUASAR_DEF_RADIO_2_QSPI_IO_3_PORT QUASAR_GPIO_PORT_H
QUASAR_DEF_RADIO_2_QSPI_IO_3_PIN QUASAR_GPIO_PIN_8
QUASAR_DEF_AUDIO_I2C_SDA_PORT QUASAR_GPIO_PORT_F
QUASAR_DEF_AUDIO_I2C_SDA_PIN QUASAR_GPIO_PIN_0
QUASAR_DEF_AUDIO_I2C_SCL_PORT QUASAR_GPIO_PORT_F
QUASAR_DEF_AUDIO_I2C_SCL_PIN QUASAR_GPIO_PIN_1
QUASAR_DEF_AUDIO_SAI_SD_A_PORT QUASAR_GPIO_PORT_C
QUASAR_DEF_AUDIO_SAI_SD_A_PIN QUASAR_GPIO_PIN_1
QUASAR_DEF_AUDIO_SAI_SCK_PORT QUASAR_GPIO_PORT_E
QUASAR_DEF_AUDIO_SAI_SCK_PIN QUASAR_GPIO_PIN_5
QUASAR_DEF_AUDIO_SAI_MCLK_PORT QUASAR_GPIO_PORT_B
QUASAR_DEF_AUDIO_SAI_MCLK_PIN QUASAR_GPIO_PIN_8
QUASAR_DEF_AUDIO_SAI_SD_B_PORT QUASAR_GPIO_PORT_B
QUASAR_DEF_AUDIO_SAI_SD_B_PIN QUASAR_GPIO_PIN_5
QUASAR_DEF_AUDIO_SAI_FS_PORT QUASAR_GPIO_PORT_B
QUASAR_DEF_AUDIO_SAI_FS_PIN QUASAR_GPIO_PIN_9
QUASAR_DEF_AUDIO_IRQ_PORT QUASAR_GPIO_PORT_E
QUASAR_DEF_AUDIO_IRQ_PIN QUASAR_GPIO_PIN_1
QUASAR_DEF_I2S_MUX_SEL_PORT QUASAR_GPIO_PORT_C

If I2S is needed on the expansion port, the MUX_SEL pin should be set to HIGH. By default, the I2S signals are only connected to the onboard codec and the GPIO MUX_SEL is pulled down with a resistor.

QUASAR_DEF_I2S_MUX_SEL_PIN QUASAR_GPIO_PIN_2
QUASAR_DEF_EEPROM_SCL_PORT QUASAR_GPIO_PORT_B
QUASAR_DEF_EEPROM_SCL_PIN QUASAR_GPIO_PIN_6
QUASAR_DEF_EEPROM_SDA_PORT QUASAR_GPIO_PORT_B
QUASAR_DEF_EEPROM_SDA_PIN QUASAR_GPIO_PIN_3
QUASAR_DEF_EEPROM_RADIO_1_ADDR 0xA2
QUASAR_DEF_EEPROM_RADIO_2_ADDR 0xA0
QUASAR_DEF_BUTTON_USER_1_PORT QUASAR_GPIO_PORT_H
QUASAR_DEF_BUTTON_USER_1_PIN QUASAR_GPIO_PIN_10
QUASAR_DEF_BUTTON_USER_2_PORT QUASAR_GPIO_PORT_H
QUASAR_DEF_BUTTON_USER_2_PIN QUASAR_GPIO_PIN_12
QUASAR_DEF_BUTTON_USER_3_PORT QUASAR_GPIO_PORT_H
QUASAR_DEF_BUTTON_USER_3_PIN QUASAR_GPIO_PIN_15
QUASAR_DEF_BUTTON_USER_4_PORT QUASAR_GPIO_PORT_I
QUASAR_DEF_BUTTON_USER_4_PIN QUASAR_GPIO_PIN_0
QUASAR_DEF_LED_USER_1_PORT QUASAR_GPIO_PORT_A
QUASAR_DEF_LED_USER_1_PIN QUASAR_GPIO_PIN_1
QUASAR_DEF_LED_USER_2_PORT QUASAR_GPIO_PORT_D
QUASAR_DEF_LED_USER_2_PIN QUASAR_GPIO_PIN_0
QUASAR_DEF_LED_USER_3_PORT QUASAR_GPIO_PORT_G
QUASAR_DEF_LED_USER_3_PIN QUASAR_GPIO_PIN_15
QUASAR_DEF_LED_USER_4_PORT QUASAR_GPIO_PORT_I
QUASAR_DEF_LED_USER_4_PIN QUASAR_GPIO_PIN_6
QUASAR_DEF_LED_USB_PORT QUASAR_GPIO_PORT_B
QUASAR_DEF_LED_USB_PIN QUASAR_GPIO_PIN_2
QUASAR_DEF_LED_LINEIN_PORT QUASAR_GPIO_PORT_I
QUASAR_DEF_LED_LINEIN_PIN QUASAR_GPIO_PIN_7
QUASAR_DEF_LED_HP_JACK_PORT QUASAR_GPIO_PORT_H
QUASAR_DEF_LED_HP_JACK_PIN QUASAR_GPIO_PIN_14
QUASAR_DEF_LED_RGB_GREEN_PORT QUASAR_GPIO_PORT_B
QUASAR_DEF_LED_RGB_GREEN_PIN QUASAR_GPIO_PIN_4
QUASAR_DEF_LED_RGB_BLUE_PORT QUASAR_GPIO_PORT_D
QUASAR_DEF_LED_RGB_BLUE_PIN QUASAR_GPIO_PIN_7
QUASAR_DEF_LED_RGB_RED_PORT QUASAR_GPIO_PORT_H
QUASAR_DEF_LED_RGB_RED_PIN QUASAR_GPIO_PIN_11
QUASAR_DEF_BAT_CHRG_PORT QUASAR_GPIO_PORT_C
QUASAR_DEF_BAT_CHRG_PIN QUASAR_GPIO_PIN_13
QUASAR_DEF_BAT_CHRG_TS_PORT QUASAR_GPIO_PORT_F
QUASAR_DEF_BAT_CHRG_TS_PIN QUASAR_GPIO_PIN_14
QUASAR_DEF_BOOT_INDICATOR_PORT QUASAR_GPIO_PORT_B
QUASAR_DEF_BOOT_INDICATOR_PIN QUASAR_GPIO_PIN_11
QUASAR_DEF_LINEIN_DETECT_PORT QUASAR_GPIO_PORT_C
QUASAR_DEF_LINEIN_DETECT_PIN QUASAR_GPIO_PIN_4
QUASAR_DEF_USB_5V_IN_DETECT_PORT QUASAR_GPIO_PORT_F
QUASAR_DEF_USB_5V_IN_DETECT_PIN QUASAR_GPIO_PIN_15
QUASAR_DEF_LDO_MCU_EN_PORT_REVA QUASAR_GPIO_PORT_D
QUASAR_DEF_LDO_MCU_EN_PIN_REVA QUASAR_GPIO_PIN_4
QUASAR_DEF_LDO_MCU_EN_PORT_REVB QUASAR_GPIO_PORT_B
QUASAR_DEF_LDO_MCU_EN_PIN_REVB QUASAR_GPIO_PIN_15
QUASAR_DEF_LDO_LED_EN_PORT QUASAR_GPIO_PORT_I
QUASAR_DEF_LDO_LED_EN_PIN QUASAR_GPIO_PIN_4
QUASAR_DEF_VDD_SEL_PORT QUASAR_GPIO_PORT_F
QUASAR_DEF_VDD_SEL_PIN QUASAR_GPIO_PIN_11
QUASAR_DEF_NVM_EN_PORT QUASAR_GPIO_PORT_B
QUASAR_DEF_NVM_EN_PIN QUASAR_GPIO_PIN_12
QUASAR_DEF_ADC_BAT_PORT QUASAR_GPIO_PORT_A
QUASAR_DEF_ADC_BAT_PIN QUASAR_GPIO_PIN_6
QUASAR_DEF_ADC_BOARD_REV_PORT QUASAR_GPIO_PORT_C
QUASAR_DEF_ADC_BOARD_REV_PIN QUASAR_GPIO_PIN_0
QUASAR_DEF_ADC_SELECTION_BATTERY_VOLTAGE QUASAR_ADC_PERIPHERAL_1

ADC peripheral and channel selection PC0 (Board revision) -> ADC1_IN1 PA6 (Battery level) -> ADC1_IN11

QUASAR_DEF_ADC_SELECTION_BOARD_REVISION QUASAR_ADC_PERIPHERAL_1
QUASAR_DEF_ADC_CHANNEL_BATTERY_VOLTAGE QUASAR_ADC_CHANNEL_11
QUASAR_DEF_ADC_CHANNEL_BOARD_REVISION QUASAR_ADC_CHANNEL_1
QUASAR_DEF_DEBUG_IO_0_PORT QUASAR_GPIO_PORT_A
QUASAR_DEF_DEBUG_IO_0_PIN QUASAR_GPIO_PIN_4
QUASAR_DEF_DEBUG_IO_1_PORT QUASAR_GPIO_PORT_A
QUASAR_DEF_DEBUG_IO_1_PIN QUASAR_GPIO_PIN_5
QUASAR_DEF_DEBUG_IO_2_PORT QUASAR_GPIO_PORT_C
QUASAR_DEF_DEBUG_IO_2_PIN QUASAR_GPIO_PIN_3
QUASAR_DEF_DEBUG_IO_3_PORT QUASAR_GPIO_PORT_C
QUASAR_DEF_DEBUG_IO_3_PIN QUASAR_GPIO_PIN_5
QUASAR_DEF_DEBUG_IO_4_PORT QUASAR_GPIO_PORT_B
QUASAR_DEF_DEBUG_IO_4_PIN QUASAR_GPIO_PIN_1
QUASAR_DEF_EXPANSION_UART_TX_PORT QUASAR_GPIO_PORT_A
QUASAR_DEF_EXPANSION_UART_TX_PIN QUASAR_GPIO_PIN_2
QUASAR_DEF_EXPANSION_UART_RX_PORT QUASAR_GPIO_PORT_A
QUASAR_DEF_EXPANSION_UART_RX_PIN QUASAR_GPIO_PIN_3
QUASAR_DEF_EXPANSION_SPI_CS_PORT QUASAR_GPIO_PORT_A
QUASAR_DEF_EXPANSION_SPI_CS_PIN QUASAR_GPIO_PIN_15
QUASAR_DEF_EXPANSION_SPI_MOSI_PORT QUASAR_GPIO_PORT_D
QUASAR_DEF_EXPANSION_SPI_MOSI_PIN QUASAR_GPIO_PIN_6
QUASAR_DEF_EXPANSION_SPI_SCK_PORT QUASAR_GPIO_PORT_G
QUASAR_DEF_EXPANSION_SPI_SCK_PIN QUASAR_GPIO_PIN_9
QUASAR_DEF_EXPANSION_SPI_MISO_PORT QUASAR_GPIO_PORT_G
QUASAR_DEF_EXPANSION_SPI_MISO_PIN QUASAR_GPIO_PIN_10
QUASAR_DEF_PRIO_MULTI_RADIO_TIMER_IRQ QUASAR_IRQ_PRIORITY_0
QUASAR_DEF_PRIO_AUDIO_SAI_DMA_TX_IRQ QUASAR_IRQ_PRIORITY_1
QUASAR_DEF_PRIO_AUDIO_SAI_DMA_RX_IRQ QUASAR_IRQ_PRIORITY_1
QUASAR_DEF_PRIO_RADIO_1_IRQ QUASAR_IRQ_PRIORITY_2
QUASAR_DEF_PRIO_RADIO_2_IRQ QUASAR_IRQ_PRIORITY_2
QUASAR_DEF_PRIO_RADIO_1_DMA_IRQ QUASAR_IRQ_PRIORITY_2
QUASAR_DEF_PRIO_RADIO_2_DMA_IRQ QUASAR_IRQ_PRIORITY_2
FREE_RUNNING_TIMER_PRIORITY QUASAR_IRQ_PRIORITY_3
QUASAR_DEF_PRIO_OTG_HS_IRQ QUASAR_IRQ_PRIORITY_8
QUASAR_DEF_PRIO_USB_DETECT_IRQ QUASAR_IRQ_PRIORITY_11
QUASAR_DEF_PRIO_PENDSV_IRQ QUASAR_IRQ_PRIORITY_12
QUASAR_DEF_PRIO_TIMER_NO_IRQ QUASAR_IRQ_PRIORITY_NONE
QUASAR_DEF_DMA_SELECTION_RADIO_1_TX QUASAR_DMA_SELECTION_GPDMA1_CHANNEL1
QUASAR_DEF_DMA_SELECTION_RADIO_1_RX QUASAR_DMA_SELECTION_GPDMA1_CHANNEL2
QUASAR_DEF_DMA_SELECTION_RADIO_2_TX QUASAR_DMA_SELECTION_GPDMA1_CHANNEL5
QUASAR_DEF_DMA_SELECTION_RADIO_2_RX QUASAR_DMA_SELECTION_GPDMA1_CHANNEL6
QUASAR_DEF_GPDMA1_CHANNEL_SAI_TX GPDMA1_Channel7
QUASAR_DEF_GPDMA1_CHANNEL_SAI_RX GPDMA1_Channel8
QUASAR_NVIC_SAI_DMA_TX_CPLT GPDMA1_Channel7_IRQn
QUASAR_NVIC_SAI_DMA_RX_CPLT GPDMA1_Channel8_IRQn
QUASAR_DEF_SPI_SELECTION_RADIO_1 QUASAR_SPI_SELECTION_SPI1
QUASAR_DEF_SPI_SELECTION_RADIO_2 QUASAR_SPI_SELECTION_SPI2
QUASAR_DEF_I2C_SELECTON_EEROM_RADIO_1 QUASAR_I2C_SELECTION_I2C1
QUASAR_DEF_I2C_SELECTION_CODEC QUASAR_I2C_SELECTION_I2C2
QUASAR_DEF_UART_SELECTION_EXPANSION QUASAR_UART_SELECTION_USART2
QUASAR_DEF_SPI_SELECTION_EXPANSION QUASAR_SPI_SELECTION_SPI3
QUASAR_DEF_UART_SELECTION_DEBUG QUASAR_UART_SELECTION_UART4
QUASAR_DEF_TIMER_SELECTION_FREE_RUNNING_MS QUASAR_TIMER_SELECTION_TIMER8
QUASAR_DEF_TIMER_SELECTION_MULTI_RADIO QUASAR_TIMER_SELECTION_TIMER4
QUASAR_DEF_TIMER_SELECTION_BLOCKING_DELAY QUASAR_TIMER_SELECTION_TIMER2
QUASAR_SET_BIT(REG, BIT_MASK) (REG |= (BIT_MASK))

Set a specific bit in a register

QUASAR_CLEAR_BIT(REG, BIT_MASK) (REG &= ~(BIT_MASK))

Clear a specific bit in a register

QUASAR_READ_BIT(REG, BIT_POS) ((REG >> BIT_POS) & 1)

Read a specific bit in a register at a given position

QUASAR_WRITE_BITS(BYTES, BITS_MASK, BITS_POS, VALUE) (BYTES |= (BITS_MASK & (VALUE << BITS_POS)))

Write a specific value in specific bytes at a specific position