I have internal coils as final outputs from each array move function (M101-M108), and so after the cascade of array functions, I make an AND statement of the coils as follows: The output of each array goes to register locations I have specified, and I plan to use a counter to increment register 100 200 times so that I get 200 samples of each analog input. I do a one-shot for each array move function so that 8 samples are collected through one iteration, one of each analog input. So basically I have 8 analog inputs running through 8 separate array moves, and register 100 is my pointer register for each array move function. I wanted to ask about an error I had been getting in regards to my program logic, and the logic seems fine to me but maybe I am overlooking something.
Thanks for the information, we structured our assignment so that it would fit within the memory limits of the 331 90-30 model. Is there any way to index the register output in the move function so that as data comes in, it is not overwriting old data? I was suggested indirect indexing, is there a function that does that? I know this sounds a little bit like the old question but I got a little more detail out on it. For each channel of analog data, I want to use a Move function to pass in the analog data, but I want to be able to index the register so that when I am single-shotting the data input, the values are automatically being stored in subsequent registers. So for example, if the first sample I take goes into register R100, then the other 399 samples should go in register R101-R399. Basically, I have a channel of analog data which takes a single-shot of data (say, 400 samples) and I want to store each sample in a register. I will try to describe what I am trying to do in more detail to see if someone can point me in a more refined direction. I was looking into how I could possibly use a shift register but I am still confused on that end.
I tried using the Array Move function for my task but it does not do exactly what I want.