Utilizar RIT con OSEK

55 views
Skip to first unread message

Gaspar Santamarina

unread,
Aug 29, 2017, 9:41:28 AM8/29/17
to embebidos32@
Buenas!

Estoy intentando generar 6 ondas cuadradas con frecuencias de 20Hz a 3KHz, utilizando los GPIOs de la EDU-CIAA (quizas esto sea un problema y ya desde el vamos le estoy errando). Como ademas necesito realizar otras tareas en paralelo me decidi a probar OSEK.

La idea es utilizar la interrupción generada por el RIT a una frecuencia elevada (digamos unos 200KHz) y realizar los toggle de cada pin en el handler de la misma.

Pregunta, es esto posible, dado que OSEK ya esta utilizando el RIT como su propio TICK?.

Saludos,
Gaspar.

Gaspar Santamarina

unread,
Aug 29, 2017, 10:33:28 AM8/29/17
to embebidos32@
Por las dudas aclaro que las 6 ondas las necesito en simultaneo en 6 pines distintos.

Supongo que podría hacer uso de alguno de los otros timers disponibles. Una duda, dado que estoy usando OSEK, lo que tendria que hacer es definir la interrupción en el .oil y luego configurar el timer en la tarea inicial de mi sistema?.

Saludos,
Gaspar.

Pablo Ridolfi

unread,
Aug 29, 2017, 10:35:40 AM8/29/17
to embebidos32@
Creo que lo mejor para generar una onda cuadrada es usar las compare output de los timers. Así no tenés que estar perdiendo tiempo/latencia manejando los GPIO en el irq handler.


--
-- Recibiste este mensaje porque estás suscripto al Grupo Google Embebidos32. Para postear en este grupo, escribe un email a embeb...@googlegroups.com. Para des-suscribirte, envía un email a embebidos32...@googlegroups.com. Para más opciones, visita el sitio del grupo en https://groups.google.com/d/forum/embebidos32?hl=es
---
Has recibido este mensaje porque estás suscrito al grupo "Embebidos32" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a embebidos32...@googlegroups.com.
Para acceder a más opciones, visita https://groups.google.com/d/optout.

Gaspar Santamarina

unread,
Aug 29, 2017, 12:43:48 PM8/29/17
to embebidos32@
El 29 de agosto de 2017, 11:35, Pablo Ridolfi <pablor...@gmail.com> escribió:
Creo que lo mejor para generar una onda cuadrada es usar las compare output de los timers. Así no tenés que estar perdiendo tiempo/latencia manejando los GPIO en el irq handler.


 Creo que es justo lo que necesito!, el tema es que solo tengo 4 timers y yo necesito 6 señales distintas. 

La función de LPCOpen que necesito para configurar el timer es Chip_TIMER_ExtMatchControlSet ?

Pablo Ridolfi

unread,
Aug 29, 2017, 2:35:14 PM8/29/17
to embebidos32@
Bueno pero con un mismo timer podés generar más de una señal en función de las salidas match que tengas.
El timer genera la base de tiempos, luego configurás cada match según la frecuencia que quieras.
Sí, esa es la función.
Saludos.



--

Gaspar Santamarina

unread,
Aug 29, 2017, 2:51:10 PM8/29/17
to embebidos32@
El 29 de agosto de 2017, 15:34, Pablo Ridolfi <pablor...@gmail.com> escribió:
Bueno pero con un mismo timer podés generar más de una señal en función de las salidas match que tengas.
El timer genera la base de tiempos, luego configurás cada match según la frecuencia que quieras.

Ah, bunísimo, pensé que podía tener un solo valor de match por timer. Gracias!

Saludos,
Gaspar. 

Gaspar Santamarina

unread,
Sep 21, 2017, 7:53:45 PM9/21/17
to embebidos32@
Colgué un poco pero finalmente me puse a implementarlo, jeje.

Funciona, pero solo para un valor de match por timer porque necesito reiniciar el contador cada vez que se da un match. Lo que necesito es setear valores de match que no sean relativos al timer, sino al match anterior. Hay forma de hacer esto?

Saludos,
Gaspar.

Gaspar Santamarina

unread,
Sep 22, 2017, 1:52:41 PM9/22/17
to embebidos32@
Ahora estoy viendo que la EDU-CIAA no tiene ningun P5 ruteado, que es justamente donde estan los pines con las funciones T1_MATx, por lo que solo tendría 3 GPIO toggleables con el timer...
Reply all
Reply to author
Forward
0 new messages