I am currently using EFR32FG14 series transceiver for my application. How could we test the SPI communication of the transceiver with a master device ? Is there any supporting documents or application notes from SiLABs ?
Hi Harikrishnan R S,
EFR32FG14P233F256GM48 is not just a transceiver and it is really a 32-bit soc containing a cortex-M4 core. Your application software can run on the soc, so you can use the soc's SPI in your sw to transmit the data to your master. If there are other questions, please let me know.
Thank You Bo Yang,
Thanks for the reply.
Is there any example programs available for the same ?
If you only interested in the SPI example, you could take a look at these examples:
Hi, thanks for the example code. I tried gpio_prs_ldma_usart with EFM32FG14 starter kit (SLWSTK6062B), with flex gecko sdk 2.6.4. I notice there are no .isc or .hwconf files in the samples. I imported the slsproj as described in readme, changing the board type to match my own. Build did not work because all the include directories are missing from the project. As an experiment I copied an .isc file from one of the other sample projects (eg simple_trx) that was already imported and building for this board, and did "generate". The includes folder was populated with *most of* the missing stuff from the sdk except for bspconfig.h. So as a further kludge I copied the missing definitions from there into the example main file. After that the code compiled but the linker failed because now emdrv/dmadrv.c was linked, and it has a conflicting definition of LDMA_IRQHandler. So kludge no. 3, I manually removed dmadrv.c from my eclipse project. The build worked, and the uart worked.
But I think this is not the right approach EG if I redo the "generate" step the project is overwritten and the linker fails again. What is the correct way to import these examples (or any other code besides the examples that came with the sdk), with flex gecko sdk? Eg is there a way to get a new "default" .isc for my board that will let me do "generate" and create a valid project to which I can add source files?
Yes, the example in the gitHub was simple example that don't enable any stack.
to import and build the example in github you may read the readme first, IIRC you need to put the example in a specific folder.
Thank you for the answer. To clarify the question: I tried what you describe first. Copied to the sdk path and imported the .slslproj , exactly as described in the two readme files (top level and project level). It did not build.
Problem was that the project generated by the import not include the needed sdk directories, and so none of the em_*.h includes were found.
Then the adjustments ("kludges") described above were needed to make it work, but they shouldn't have been.
Just noticed - it seems like the missing paths are in an xml file that is not making it into my imported project directory. Specifically
Tried naively copying this into my Simplicity Studio project dir but no luck. Should simplicity studio be using the above xml file to create a project with the correct include paths - eg when the project is imported?
Could you read the markdown file and confirm where you have cloned the repo.
1. Desired Silicon Labs Starter Kit
2. Gecko SDK Suite, available via Simplicity Studio
3. This repo, cloned to to C:\SiliconLabs\SimplicityStudio\v4\developer\sdks\gecko_sdk_suite\v#.#\, where #.# is the Gecko SDK suite version number
4. Simplicity Studio IDE or IAR Embedded Workbench IDE
How to import to Simplicity Studio IDE
1. In Simplicity Studio:
File -> Import, or
Project -> Import -> MCU Project
2. Navigate to the desired .slsproj file
You could try to import the project without any change to see if it make any difference.