1
0
mirror of https://bitbucket.org/librepilot/librepilot.git synced 2025-01-29 14:52:12 +01:00

Fixed logging queue.

Added to comments in openpilot.c

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@58 ebee16cc-31ac-478f-84a7-5cbb03baadba
This commit is contained in:
gussy 2009-12-05 23:53:41 +00:00 committed by gussy
parent 48867ae968
commit 21d62c0c36
2 changed files with 10 additions and 4 deletions

View File

@ -47,6 +47,9 @@ void OP_Logging_Init(void)
uint16_t FileCount;
FILINFO DummyFileInfo;
/* Create the logging queue */
xLoggingQueue = xQueueCreate(15, sizeof(LogTypeDef));
/* This is a crude way to file the next avaiable number avaiable */
/* The proper way would be to use folders with dates, we will get to that later */
for(FileCount = 0; FileCount < 65536; FileCount++) {

View File

@ -32,7 +32,6 @@
/* Local Functions */
static void ServosTask(void *pvParameters);
/**
@ -52,13 +51,17 @@ void OpenPilotInit(void)
-> GPS: Simply parses incomming GPS data and puts it into the GPS struct, also set states of FIX/NOFIX etc.
-> Gatekeepers: Tasks which use queue's to access shared resources
-> MicroSD: Simply logs data to the MicroSD card
-> Telemetry: Sends (and receives?) telemetry usig a que
-> Telemetry: Sends telemetry using a queue
- Supervisor should have highest possibly priority (Idle + 14?)
- Supervisor should also act as the warnings system, low batter etc)
- Supervisor should handle all telemetry inputs (not outputs), and act accordingly
- Sub tasks of the supervisor should have a priority just lower than the supervisor (Idle + 12?)
- Sub tasks of the supervisor shoud ONLY be pre-empted by interrupts such as the GPS tasks
- Sub tasks of the supervisor shoud ONLY be pre-empted by system interrupts such as UART, I2C etc
- Gatekeepers should sit in a blocked state while there is nothing on the que, with a low priority
- With the low priority of gatekeepers, the should only be running while the supervisor tasks are not working
- With the low priority of gatekeepers, they should only be running while the supervisor tasks are not working
- I2C module sending and receiving needs to be included in here somwhere. Inputs would be interrupt triggered.
*/
}