User Activity

  • Modified a comment on discussion Free Support on QP Real-Time Embedded Frameworks & Tools

    Hi Yunnie I am wondering if this large event is a "swing buffer" where one AO (or an ISR or DMA) is filling one event (buffer) while another AO is processing the last filled buffer. That needs a minimum of two buffers so they can swing back and forth. So this may be a valid assertion if the AO (or ISR or DMA) requests and fills the initial buffer, sends it to the second AO then requests another from the pool. If the pool has only one buffer defined then Assert. This would mean looking at how the...

  • Posted a comment on discussion Free Support on QP Real-Time Embedded Frameworks & Tools

    Hi Yunnie I am wondering if this large event is a "swing buffer" where one AO (or an ISR or DMA) is filling one event (buffer) while another AO is processing the last filled buffer. That needs a minimum of two buffers so they can swing back and forward. So this may be a valid assertion if the AO (or ISR or DMA) requests and fills the initial buffer, sends it to the second AO then requests another from the pool. If the pool has only one buffer defined then Assert. This would mean looking at how the...

  • Posted a comment on discussion Free Support on QP Real-Time Embedded Frameworks & Tools

    Hello Miro and others I have started working with QM 5.0.1 and I wanted to create packages containing both AOs and the Events that will be used to interact with them. Is it too early to know the eventual use of the stereotypes from the code generations side ? I see there is a new "modules" stereotype and I wondered if that describes what I am creating. All the best Harry

  • Posted a comment on discussion Free Support on QP Real-Time Embedded Frameworks & Tools

    Hi Dana I forgot to add that I use the following quite often: /* Reminder to read the SmartBox EEPROM */ static const QEvt sbox_reminder = { SBOX_REMINDER_SIG, 0, 0 }; QACTIVE_POST_LIFO(&me->super, &sbox_reminder, me); So it resides in flash and doesn't need to be garbage collected either. It can be posted to any AO; not just self. If I use the same event throughout the code, I define the const event once somewhere rather than sprinkle copies around the code as above. It can also be one of your own...

  • Posted a comment on discussion Free Support on QP Real-Time Embedded Frameworks & Tools

    Hi Dana I think your static ConnectionEvt is the best way. I went back to the Orthagonal Pattern document: https://www.state-machine.com/doc/Pattern_Orthogonal.pdf and page 9 of 11 item (8) shows TimeEvt pe; / temporary synchronous event for the component / which is then dispatched and no deletion necessary. All the best Harry

  • Posted a comment on discussion Free Support on QP Real-Time Embedded Frameworks & Tools

    Hello Miro Following on from Harry's Q_NEW_REF thread here: https://sourceforge.net/p/qpc/discussion/668726/thread/12b084b4/ I solved a QPC coding laziness blunder recently where I had copied an (entire) event which also copied the super part. The source event reference count was 2 (after a Q_NEW_REF). My destination event then had a ref of 2 so it was never garbage collected. Event pool depletion and assertion ensued :-) In some situations I send an event which I'd like to return (or forward) to...

  • Posted a comment on discussion Free Support on QP Real-Time Embedded Frameworks & Tools

    Hello Gene One idea to consider is to create an Acquisition AO that runs timers to start ADC conversions and publish them so any other AO can to subscribe to them. That way, your Mission AO subscribes and gets a periodic Pressure event (that contains the acquired pressure value) and Runs-To-Completion the PID calculations when it is Ascend, Descend, etc state using the pressure value. If you need a few acquired values it could mean bundling them in a single event published by Acquisiton AO but much...

  • Posted a comment on discussion Free Support on QP Real-Time Embedded Frameworks & Tools

    Hi Harry and Miro I have read all of the conversation a few times and can understand that a lower priority AO can be pre-empted for all of the fast tasks to run; I have never ventured into QK to use this because my RTCs have always been fast enough that pre-emption isn't needed. Harry, you are also saying the 4mS of processing time only has to occur within a 10mS period to prevent overrun of the next data structure that requires a call to step(). So I can see what Miro is saying; if it is made a...

View All

Personal Data

Username:
harrymc
Joined:
2006-05-10 04:21:38

Projects

  • No projects to display.

Personal Tools