Okay sorry to keep pestering everyone but this has me baffled. Attached is the version of the code that generated the following output. As you will see I have set the timer/counter 1 TOP value to 100 so I should get the interrupt every 100 cycles. I've commented out everything in both ISRs except:
1> the reset of tickCounter=0 on the detection of AC zero cross
2> the addition of 100 to tickCounter every time the timer/coutner interrupt is triggered
I'm not reading anything from Vixen in this test. This is just to see if I get a stable zero cross detection and a stable tick count.
What I am seeing is:
Power on self test running.
Channel: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
POST Done.
Setting up Vixen mode.
millis=8256 tickCounter=13200
millis=8257 tickCounter=35600
millis=8258 tickCounter=6364
millis=8261 tickCounter=33000
millis=8263 tickCounter=9164
millis=8266 tickCounter=49564
millis=8269 tickCounter=25000
millis=8271 tickCounter=1264
millis=8274 tickCounter=41664
millis=8276 tickCounter=16700
millis=8280 tickCounter=58500
millis=8282 tickCounter=34664
millis=8285 tickCounter=10300
millis=8287 tickCounter=52000
millis=8290 tickCounter=28064
millis=8293 tickCounter=3300
millis=8295 tickCounter=43700
millis=8298 tickCounter=19864
millis=8300 tickCounter=500
millis=8303 tickCounter=34500
millis=8305 tickCounter=10764
millis=8308 tickCounter=52464
millis=8310 tickCounter=27500
millis=8313 tickCounter=3664
millis=8315 tickCounter=44064
millis=8318 tickCounter=19600
millis=8322 tickCounter=61400
millis=8324 tickCounter=37564
Are these number more stable than they look and it is just because the serial printing is so slow compared to the interrupts?
XmasLightControllerForVixenSSRs.ino (55.4 KB)