NOTICE: The Processors Wiki will End-of-Life on January 15, 2021. It is recommended to download any files or other content you may need that are hosted on processors.wiki.ti.com. The site is now set to read only.
CC3100 SimpleLink Studio
Contents
Introduction[edit]
The SimpleLink™ Studio is a Microsoft Windows-based software to aid in the development of applications designed to work with the SimpleLink WiFi CC31xx family of wireless chips.
Using SimpleLink™ Studio, application code can be written and executed in a desktop IDE, such as Visual Studio and Eclipse, and communicate directly with the CC31xx device through the USB cable without the need of a microcontroller (MCU). This allows the code to be easily tested while it is under development, and then later ported to a microcontroller without having to be modified. Generally, the only modifications required to port a SLS program to another platform are made to a special user.h file that is included in the project.
The SimpleLink™ Studio source files are part of the SDK. No additional downloads other than the IDE explained below is required.
Benefits of SimpleLink Studio for CC31xx[edit]
- Code can be written and run from a computer, making debugging significantly easier as the code does not need to be run from the MCU.
- Software development can begin before the hardware development has finished, due to the fact that the hardware isn't required to run the code.
- The code is MCU agnostic, so it can be ported to any MCU that has had the SimpleLink Driver ported to it.
- The SimpleLink Studio for CC3100 package contains multiple examples that help to understand its API and structure.
- Knowledge of complicate wireless networking needs is not required when using SimpleLink Studio for CC3100.
Prerequisites[edit]
Either (or both) of the following
- Visual Studio 2010 SP1 or above
- Eclipse IDE for C/C++ Developers and MinGW
Loading Application Using Visual Studio[edit]
Working with Visual Studio will require opening the provided project and compiling it.
- Open Visual Studio.
- From the menu: Open, then select File.
- Browse to the <Project_Folder_Name> Visual Studio folder. This will be under <Project_Directory> in the CC31xx release folder.
- Select the <Project_Name> Visual Studio project. Click on Open.
Note: If the project does not open, make sure that you did not accidentally select the Visual Studio Project Filter File.
- The project should be created automatically, along with the following folder:
- External Dependencies
- SimpleLink
- Source Files
- Build your project: Build the project by clicking on Debug at the top of the screen and then selecting Start Debugging, or by pressing F5.
Loading Application Using Eclipse[edit]
MinGW Installation[edit]
Working with Eclipse will require opening the provided project and compiling by using MinGW GCC.
MinGW Compiler Setup for Windows systems (if you are running linux, you may skip this section).
- Download and install MinGW.
- During installation, make sure you have the following configuration selected:
- After installation, make sure you have the Environment variable setup with the following:
- Click Start -> type sysdm.cpl -> select Advanced tab -> click Environment Variables... on the very bottom -> In the System variable section, scroll down to the Path variable -> click Edit...
Eclipse Setup[edit]
- Open Eclipse
- In the "Select a workspace", choose your desired workspace directory (For example: C:\Users\myself\Desktop\eclipse_workspace). The main Eclipse IDE window will show up after a few seconds.
- From the menu: Open, select File -> New -> Makefile Project with Existing Code
- In the New Project window, click the Browse button to browse to the <sdk installation location>\platform\simplelinkstudio\example_project_eclipse folder. Select a project from a list of existing project folders and then click OK.
- Under Toolchain for Indexer Settings section, select MinGW GCC, then click Finish. Project will be imported to your Eclipse environment.
- In project Project Explorer window, right click on <Project_Folder_Name>, then select property.
- Expand the C/C++ Build menu, select Tool Chain Editor. Select Gnu Make Builder for Current builder, then click Apply button.
- Select Environment in the C/C++ Build menu. Make sure the value of MSYS_HOME is empty, then click the Apply button.
- Click the C/C++ Build menu and do the following configurations, then click OK:
- IMPORTANT: This step is critical for Eclipse on Windows systems due to a known bug in Eclipse console output. Please add the following line of code to the beginning of the main function:<syntaxhighlight lang="c"> setvbuf(stdout, NULL, _IONBF, 0); </syntaxhighlight>
- You program is ready to run, press Ctrl+F11 to start running.
Porting SimpleLink Studio for CC3100 to a New MCU[edit]
Once your program is complete and ready to be ported to an MCU, a header file called user.h must be created with all of the porting info. This process involves the following steps. A detailed description of this process can be found in the CC31xx Porting Guide.
- Create a user.h file: A file called user.h must be created and included in the project. All modifications done in order to port the driver must be made to this file.
- Select a capability set: The API that the MCU will need must be specified, or a predefined capability set can be chosen. The smallest capability set that fits the needs of the application should be selected in order to conserve memory.
- Bind the enable/disable line: The chip enable line must be programmed in order to conserve power. Without programming this the driver will only be able to be started once.
- Write the interface communication driver: Write the driver for either SPI or UART communication. This driver must include the abilities to read/write and open/close.
- Choose your memory management model: Choose to use either static or dynamic memory. Static is the default.
- Choose your OS platform: Choose whether to use a single threaded or multi-threaded OS.
- Set event handlers: Set the asynchronous event handlers to be used.
- Run the diagnostic tools: Use the included diagnostic tools to verify that the port was successful.
Links[edit]
{{#invoke: Navbox | navbox }} {{#invoke: Navbox | navbox }}