This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Can I use 3xSPIM, 1x UARTE and 1x TWIM simutaneously on NRF5340?

Hi all,

In my project, I make 2 SPIM and 1 UARTE works well. 

Currently I want to use 1 TWIM, so I add lines below in proj.conf

CONFIG_I2C=y
CONFIG_I2C_NRFX=y
CONFIG_I2C_0=y
CONFIG_NRFX_TWIM0=y

However,  I get errors: gen_isr_tables.py: error: multiple registrations at table_index 9 for irq 9 (0x9)

I wonder whether can I use 3xSPIM, 1x UARTE and 1x TWIM simutaneously on NRF5340?

Please help me and thanks a lot!

Parents
  • Hi,

    The serial peripherals (UARTE/SPIM/SPIS/TWIM/TWIS) in nRF5340 shares resources and base addresses, which means that you can only enable one type of peripheral for each slot.

    From Peripheral instantiation, you can see which peripherals share base address. Make sure you only enable one peripheral for each. For instance:

    • UARTE0
    • TWIM1
    • SPIM2
    • SPIM3
    • SPIM4

    SPIM4 (32 MHz high-speed instance) does not share base address with other serial peripherals, and can only be used for SPIM.

    As you can see, the combination you request should fit exactly into the supported instances in nRF5340 if you configure it correctly.

    Best regards,
    Jørgen

Reply
  • Hi,

    The serial peripherals (UARTE/SPIM/SPIS/TWIM/TWIS) in nRF5340 shares resources and base addresses, which means that you can only enable one type of peripheral for each slot.

    From Peripheral instantiation, you can see which peripherals share base address. Make sure you only enable one peripheral for each. For instance:

    • UARTE0
    • TWIM1
    • SPIM2
    • SPIM3
    • SPIM4

    SPIM4 (32 MHz high-speed instance) does not share base address with other serial peripherals, and can only be used for SPIM.

    As you can see, the combination you request should fit exactly into the supported instances in nRF5340 if you configure it correctly.

    Best regards,
    Jørgen

Children
No Data
Related