Hi,
this is question about how to correctly implement something in the TIROS/MSS/DSS environment. It may be that I'm actually asking two things - happy to re-do as a further question if you think it fits better.
My starting point is the oob demo code.
What I want to do is add an external trigger - using GFPIO_1 for instance. I'm thinking of doing this by using a WHILE() structure in MSS, which loops round and reads the GPIO. When found, it can start some functionality (possibly continuous mode ... any details of what it starts would be a different question). It will then stop the function after, say, a given number of ADC samples are collected. The sync signal is external, and completely asynchronous to the 1843. To avoid (possibly quite variable) service response times, I don't want to use an interrupt, hence thinking of a continuously running loop.
The potentially second question is: the counter may well be on DSS. To minimise run-time delays, I don't want to have to copy values between locations - I'd like a way of the same memory location being accessible in both DSS & MSS. Maybe this is already possible via the two processors having different address spaces, but actually looking at the same memory (e.g. radarCube seems to be visible in both MSS & DSS). I just want to be sure I don't produce any access conflicts.
What would be the best way of adding this:
> is there already a suitable WHILE in MSS which I could add to (without breaking the exiting code)?
> should I e.g. create a new TASK to run this bit, so that it can halt inside the WHILE, but without stalling the whole system?
> would an interrupt format be better?
> some other method that I don't know about.
many thanks