[SOLVED] suggest a RTOS for PIC24F

Status
Not open for further replies.

Raady Here

Full Member level 5
Joined
Jun 8, 2013
Messages
242
Helped
26
Reputation
52
Reaction score
26
Trophy points
28
Location
India
Visit site
Activity points
1,571
hi,

Please suggest a RTOS best for PIC24F series while development is in windows.

MicroC or Posix or any other.

I had a project file at my lab which is developed on pic16F using MicroC some years ago , and the one which I downloaded from Microchip for PIC24f gave example built with POSIX.
I tried searching the advantages one over the other but couldnt find any relevant info.

Does RTOS vary based on the processor and the interface depending on it, as different processor have different clock speeds ?

Regards,
Raady.
 
Last edited:

The more resources available on a processor (RAM, registers, code space) the more 'heavy' an RTOS with the more 'features' it can support. Now, there are various levels of what can be done even within an RTOS selection, but one generally has to pick "lean and mean" on machines with small code space and RAM to avoid using most of the resources on the RTOS and not having enough to actually do the application. Micro/OS or MicroC can be pretty small foot-print wise, as can FreeRTOS, if one doesn't have to implement things like TCP/IP stack, etc. It also depends on what sort of system requirements are - some systems have lower interrupt latency or are better with handling many parallel pre-emptive tasks. Just like picking a tool / processor appropriate to the application, one should pick an RTOS with the application requirements in mind.
 

my peripherals are
1. SD card 1 gb
2. USB support,
3. GPRS/GSM module to connect to internet
4. GPS module to track the position
5. 3.3v LCD Display
6. 3x3 keypad
7. Remote control RC5.
 
Last edited:

So, do you need FAT16 file support for the SD card to share with a PC? That adds to the memory (some RAM but mostly code space)
USB.... What device/class are you going to be Mass Storage (MSC), OnTheGo, CDC (Communication Device?)? The USB stack implementation you need might add specific timers and RAM for endpoints, (buffers) and depending on what you are going to implement, might add several hundreds to a few KB of RAM.
GPRS/GSM - will you just communicated via serial port and stay in command mode (and run TCP/IP stack on the modem) or will you use the modem in binary/data mode (transparent) and thus have to run the TCP/IP stack on your microcontroller. TCP/IP stack, even LWIP, has significant footprint, plus the code to initialize and communicate with the modem.
LCD display (this will require some driver code, somewhat tailored to whichever controller IC you end up using in the display. If using a parallel (bus) interface to it, you'll probably need less code space. IF you are using I2C or SPI (clocked serial) you'll use alot fewer microcontroller lines, but probably have more code to write. Plus, If you have to do graphics animations (graphic or text based LCD) with the serial interface you'll need to reserve some RAM space to work as a local buffer (cannot read the bits from most LCD controllers when using serial interface).

It is good to start out with a block diagram of your idea, so taht you can count up how many I/O lines, serial ports, external bus, etc. you need to help you sort out what general class/size microcontroller you need. Then start to look at the amount of code space and RAM space you think you might need.... and then double it.
 

I will have some audio files in SD card and I must be able to read those files and send to an audio device whenever required, and right now working on that module. I will have a slave unit where displays are LCD17" displays connected through HDMI where it reads the images from SD card.

I have just connected GPRS/GSM via serial port and stay in command mode. I send the GPS information to server.
I display information of the Menu system on LCD alpha numeric 20x4 display which is accessible through keypad interface and check info stored in EEPROM.
while integrating I have to add RC5 as well, module developed by other.

I have already developed modules individually except USB, while integration I am getting errors and unexpected delays. so I thought of implementing RTOS.

However I have started working with uCOS-II as it suits my requirements !
 

which pic you ar going to use?
which type data your going to send over USB?
 

Status
Not open for further replies.
Cookies are required to use this site. You must accept them to continue using the site. Learn more…