Thanks for the reply and head up
I first found the problem first on 20M2 actually, and forgot about adding disconnect command when moving to 14M2 for further testing
( 14M2 have serial programming out common with servo 0, on 20M2 they are separate. )
I do not know wether PICAXE should stop using serial out pin for serial automatically or not(?) because servo use it...?
Adding disconnect however seem to be part of workaround on 14M2, the other part is to configure portc pins, but why?
This program jerks only the servo on B.5:
Code:
#picaxe 14M2 ;v 6.A, PE6.0.6.4
#no_data
disconnect
;dirsC = %00000001
setfreq m16
servo B.0, 150
servo B.1, 150
servo B.2, 150
servo B.3, 150
servo B.4, 150
servo B.5, 150
do
loop
Uncommenting the dirsC line this time makes it calm.
So yes disconnect helps, so do configuration of another port than servos use, but really, none of that should really influence servo operation on i.e B.0 ...
Going back to test 20M2,this program jerk servo on B.4
Jerk frequency is somewhat higher (double?) here than on earlier examples.
Code:
#picaxe 20M2 ;v 8.A, PE6.0.6.4
#no_data
;disconnect
;dirsC = %00000001
setfreq m16
servo B.0, 150
servo B.1, 150
servo B.2, 150
servo B.3, 150
servo B.4, 150
servo B.5, 150
servo B.6, 150
servo B.7, 150
do
loop
At 16MHz, uncommenting either the disconnect or the dirsC line and all servos are calm.
Changing frequency to m4 halves jerk frequency, no lines commented out, now both B.3 and B.4 jerks.
At 4MHz uncommenting only dirsC make B.0 jerk instead..., uncommenting disconnect with or without dirsC all servos are calm.
But really, neither disconnect nor dirsC nor 16 or 4MHz really should affect Portb and servo operation... here we see they all do.