I2C management using CSP

246 views
Skip to first unread message

farmm...@gmail.com

unread,
Jul 31, 2014, 11:30:35 AM7/31/14
to cubesat-spa...@googlegroups.com
Hello there

I am developing software for a main OBC using FreeRTOS and am investigating whether CSP is a worthwhile addition to the software. However, as I am only developing code for the main OBC, this is the only only subsystem that will be running FreeRTOS and CSP. I have a few questions which I'm hoping someone can answer.
1. Is it worth it to include CSP for only the purposes of keeping the I2C bus exclusive and intertask communication? Or is the main purpose of CSP to manage a multi-master system?
2. If two tasks on the OBC attempt to send messages over a bus that is currently busy, will the higher priority task's message be sent first when the bus becomes available?
3. Does an operating system have to be present to use CSP (sorry if this is a stupid question ;))

I look forward to hearing from you!
Regards

Johan Christiansen

unread,
Aug 1, 2014, 3:49:17 AM8/1/14
to cubesat-spa...@googlegroups.com
Hi. Please find answers below. 

Den 31/07/2014 kl. 17.30 skrev farmm...@gmail.com:

Hello there

I am developing software for a main OBC using FreeRTOS and am investigating whether CSP is a worthwhile addition to the software. However, as I am only developing code for the main OBC, this is the only only subsystem that will be running FreeRTOS and CSP. I have a few questions which I'm hoping someone can answer.

CSP is a protocol for a distributed system. If no other nodes are present with csp then there is no reason to use a network protocol. 

1. Is it worth it to include CSP for only the purposes of keeping the I2C bus exclusive and intertask communication? Or is the main purpose of CSP to manage a multi-master system?

I would use queues for inter task communication. 

2. If two tasks on the OBC attempt to send messages over a bus that is currently busy, will the higher priority task's message be sent first when the bus becomes available?

This depends on your i2c driver implementation. With csp the message with the highest priority is sent fist. 

3. Does an operating system have to be present to use CSP (sorry if this is a stupid question ;))

Yes. You need an operating system to provide tasks, queues and semaphores. 


I look forward to hearing from you!
Regards

--
You received this message because you are subscribed to the Google Groups "cubesat-space-protocol" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cubesat-space-pro...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Reply all
Reply to author
Forward
Message has been deleted
0 new messages