Estoy estudiando este RTOS y me he basando en los ejemplos de suky (
http://www.micros-designs.com.ar/freertos-en-c18-utilizacion-de-colas/) principalmente.
Aun tengo muchas dudas y un largo camino por recorrer. Pero, hasta el momento he logrado hacer uso de tareas y mensajes de este RTOS con interrupcion del usart por recepcion.
Pues, bien, dejo adjuntado todo lo que tengo tal cual, que funciona correctamente en un PIC18F4550 en la placa PICDEM FS USB de microchip (tambien hay una simulacion en proteus).
Lo que hace no es nada del otro mundo: Prmierp, creo una tarea principal que es como la configuracion de los perifericos y demas cosas que comunmente se haria al pincipio del main; aqui, configuro los TRISs, LATs, la interrupcion de la usart por rx, etc. Luego, de hacer hecho todo lo que tengo que hacer ahii por unica vez, elimino dicha tarea, pero antes, creo dos tareas mas. Una destinada a hacer oscilar un led por RD0 cada 200ms aprox. (no estoy seguro aun). Por otro lado, creo otra tarea que es la encargada de procesar el dato que se llega cuando ocurre la interrupcion por rx de la usart.
Entonces, cuando llega un byte por la usart al pin rx del pic, ocurre una interrupcion. Esta, guarda el dato y se la envia, atravez de un mensaje (queue) a la tarea encargada de analizar el dato y hacer lo que tenga que hacer, que en mi caso, solo lo vuelve a enviar al terminal por el tx, entre otras cosa mas.
Ahora, tengo unas cuantas dudas como habia dicho sobre este RTOS y ojala puedan contestarmelas.
1. El FreeRTOS usa algun timer como con en el CCS que tu le dices que timer usar?
2. Porque en port.c en esa parte de pvrLowInterrupt, solo atiende a la interrupcion del usart? Que pasa con las demas interrupciones?
3. Si quiero implementar por ejemplo algo con el timer0 (o algun otro) debo alterar algo el port.c como lo hice con el uart?
4. En mi programa, puse a la tarea2 (la que atiende a los mensajes del usart) una prioridad mayor. Lo hice porque es mas prioritario esto no? Porque suky no lo hiciste asi? No es el caso para hacer esto?
5.
Enserio ?
Bueno, gracias suky, reiniertl, Darukur, J1M y a todos los que han aportado mucho por la implementacion de esta RTOS.
Finalmente, dejo unos links que me han servido mucho:
plantilla c18 de suky:
http://www.micros-designs.com.ar/freertos-en-c18-plantilla/Darukur:
http://sistemasembebidos.com.ar/foro/index.php?topic=237.msg1023#msg1023RTOS CCS reiniertl:
http://www.todopic.com.ar/foros/index.php?topic=15876.0Curso reiniertl:
http://www.micropic.es/cursos/course/view.php?id=3J1M:
http://www.todopic.com.ar/foros/index.php?topic=31520.0Saludos.
DESCARGA:
http://www.megaupload.com/?d=KKU3WWP6 (tiene que ponerlo en C: pues sino habra problemas con algunos archivos, yo los tuve
)