Tool/software:
Hello,
I am working on a project which interfaces with a few devices using GPIO, I2C and ADC (to name a few peripherals). It is also using freeRTOS for managing communicating with the external devices. I have been doing some pre-development work with the MSPM0G3507 launchpad and MSPM0 SDK version 2.5.1.0 where I'm exploring the capabilities of the chip.
To get more familiar with using freeRTOS with a TI micro, I began looking at the empty_freertos_LP_MSPM0G3507_freertos_ticlang example project. Right off the bat, the POSIX API calls used in this example project have been confusing to me and I have not been able to find any documentation explaining what this API is doing, so I by-passed this layer and went directly to using freeRTOs as I have done in previous projects. I was able to create some example tasks and got it running with queues and timers. It works as I intend it to.
So now I am investigating the individual peripherals and how to interface with them. I am still working on familiarizing myself with them, but one thing that stood out to me and sparked a question was this statement in the Introduction page of the TI-Driver Library, "TI-Drivers are designed to be thread safe and work seamlessly inside of a real time operating system (RTOS) application." This got me thinking. Do these drivers depend on the POSIX layer of the architecture or can they work without it? I want to use the TI-Drivers because of their simplicity and ease-of use.
When I create my actual project, I do not plan on integrating in the POSIX source code as I will be directly calling freeRTOS functions from my application. But now I am left wondering if I actually do need to include the source code because of the TI-Drivers.
So I had the following question(s):
- Do I need to compile in the POSIX source code with my project?
- Do TI-Drivers require using the POSIX API within my application or can I not use it and still have correct functionality with the drivers.
- I do not wish to use the POSIX API.
- Can I create my project directly calling freeRTOS and allow the TI-Drivers to use the POSIX layer as needed?
Thanks for your help and I hope I wasn't too confusing with my explanation. I am new to the SDK and am still trying to figure stuff out.