I need to be able to change 10 outputs at exactly the same time; I'm aware of port manipulation but this only work for 8 I/O pins could I use something like the && statement?
I need to be able to change 10 outputs at exactly the same time; I'm aware of port manipulation but this only work for 8 I/O pins could I use something like the && statement?
I need to be able to change 10 outputs at exactly the same time;
For anyone to be really helpful you need to put a number on how close to 'exactly' you mean. What is the maximum skew rate between output pins that you can live with, 1 millisec, 1 usec, 1 nanosec ? A lot of time beginners have not yet gained a feel for how fast a arduino clock cycle is in the real world.
If you cannot put a metric to 'exactly' then perhaps if you could describe what the output pins are going to be wired to and the function they will be performing.
I'm using the arduino and circuit for highspeed photography, the flash guns have to have a low light output to minimise motion blur so to get the correct exposure I need to use multiple flash guns...
In answer to your question ideally the outputs would be changed at exactly the same time as firing flash guns at different times will also cause motion blur. My aim is to build a box that I can use for a number of different situations and enviroments; having said that the extra 2 outputs are just for contingency so I could live without them
I'll also do some tests to see if firing 2 outputs with a slight delay will cause a problem
I'm using the arduino and circuit for highspeed photography, the flash guns have to have a low light output to minimise motion blur so to get the correct exposure I need to use multiple flash guns...
In answer to your question ideally the outputs would be changed at exactly the same time as firing flash guns at different times will also cause motion blur. My aim is to build a box that I can use for a number of different situations and enviroments; having said that the extra 2 outputs are just for contingency so I could live without them
OK, but that doesn't answer the maximum timing skew between output changes allowed. There has to be a value which is fast enough to not cause detection, and it might be that even some microseconds is fast enough.
I'll also do some tests to see if firing 2 outputs with a slight delay will cause a problem
Now that is something constructive to try. delayMicroseconds() is available for that testing effort, I believe that command has a 4 microsecond resolution. Lefty