[SOLVED] "Processor Architecture not supported" when trying to use SPI with NRF5340-Dk

This site uses cookies. By continuing to browse this site, you are agreeing to our Cookie Policy.

  • [SOLVED] "Processor Architecture not supported" when trying to use SPI with NRF5340-Dk

    I'm trying to do some test with SPI with the nRF5340-DK, so I made a new project, and I can build that just fine, but if I add the line to include the header file for the SPI (drivers/SPI.h) then I get an error: "processor architecture not supported"

    I'm using gcc as a compiler, if that makes a difference.

    In the project options menu, the ARM Architecture is listed as "v8M", and the ARM Core Type is "Cortex-M33"

    An image of the build report is attached.

    I'm not all that experienced with this program of forum posting, so if I have omitted necessary information please let me know.
    Images
    • BuildReport.PNG

      25.79 kB, 651×529, viewed 323 times
  • Hello,

    Thank you for your inquiry.
    The error message comes from the llvm.h file.
    It does not seem to be written to support Cortex-M33 targets.
    So you have to make sure that the files you add to your project actually work and compile for Cortex-M33 architecture.
    Somewhere in that file you will find an #ifdef construct where actions/macros for the different architectures and for Arch v8M there probably wont be one but instead this error message.
    So either implement that same action for v8M or use another file that already supports that architecture.

    If you are looking for a quick and easy entry in the nRF world, we recommend to use Nordics SDKs, as they come with many example projects that work out of the box with Embedded Studio as we have partnered up with Nordic for this.
    For the nRF53 series the correct SDK would be:
    infocenter.nordicsemi.com/inde…s%2FUG%2Fgsg%2Fintro.html

    Support for the SDK is provided via the Nordic forum.

    Best regards,
    Nino
    Please read the forum rules before posting.

    Keep in mind, this is *not* a support forum.
    Our engineers will try to answer your questions between their projects if possible but this can be delayed by longer periods of time.
    Should you be entitled to support you can contact us via our support system: segger.com/ticket/

    Or you can contact us via e-mail.
  • Thanks for the response,

    The problem appears below llvm.h in the error report, but if it is clicked then gcc.h is brought up and it says that the parameter CONFIG_ARM isn't defined, and the cortex-M33 is an ARM board, so it should be(?).

    We don't really even know where it should be defined.
  • Hello,

    BoldlyVenturing wrote:

    The problem appears below llvm.h in the error report, but if it is clicked then gcc.h is brought up and it says that the parameter CONFIG_ARM isn't defined, and the cortex-M33 is an ARM board, so it should be(?).
    Don't know. They are your sources or not? You should know how it works and what needs to be defined for it to work.
    The error messages from the compiler should provide you all needed information to make the program compile.
    You can set defines either in your source directly or in project options in Preprocessor Defines.

    Best regards,
    Nino
    Please read the forum rules before posting.

    Keep in mind, this is *not* a support forum.
    Our engineers will try to answer your questions between their projects if possible but this can be delayed by longer periods of time.
    Should you be entitled to support you can contact us via our support system: segger.com/ticket/

    Or you can contact us via e-mail.