@@ -477,13 +477,12 @@ There is a limit of 64 bits in total.
477477
478478The valid format characters and the pins they create are:
479479
480- p: (Pad)::
481- Does not create any pins, used to ignore sections of the bit stream that are not required.
480+ p: (Pad):: Does not create any pins, used to ignore sections of the bit stream that are not required.
482481
483- b: (Boolean).:: (bit, out) hm2_XXXX.N.ssi.MM.<name>.
484- If any bits in the designated field width are non-zero then the HAL pin will be "True".
485- (bit, out) hm2_XXXX.N.ssi.MM.<name>-not. An inverted version of the above, the
486- HAL pin will be "True" if all bits in the field are zero.
482+ b: (Boolean).:: (bit, out) hm2_XXXX.N.ssi.MM.<name>. +
483+ If any bits in the designated field width are non-zero then the HAL pin will be "True". +
484+ (bit, out) hm2_XXXX.N.ssi.MM.<name>-not. +
485+ An inverted version of the above, the HAL pin will be "True" if all bits in the field are zero.
487486
488487u: (Unsigned):: (float, out) hm2_XXXX.N.ssi.MM.<name>.
489488 The value of the bits
@@ -492,35 +491,26 @@ u: (Unsigned):: (float, out) hm2_XXXX.N.ssi.MM.<name>.
492491 example if the field is 8 bits wide and the scalmax parameter was 20
493492 then a value of 255 would return 20, and 0 would return 0.
494493
495- s: (Signed):: (float, out) hm2_XXXX.N.ssi.MM.<name>.
496- The value of the bits
497- interpreted as a 2s complement signed number then scaled similarly to
494+ s: (Signed):: (float, out) hm2_XXXX.N.ssi.MM.<name>. +
495+ The value of the bits interpreted as a 2s complement signed number then scaled similarly to
498496 the unsigned variant, except symmetrical around zero.
499497
500- f: (bitField):: (bit, out) hm2_XXXX.N.ssi.MM.<name>-NN.
501- The value of each individual
502- bit in the data field. NN starts at 00 up to the number of bits in the
503- field. (bit, out) hm2_XXXX.N.ssi.MM.<name>-NN-not. An inverted version
504- of the individual bit values.
505-
506- e: (Encoder):: (s32, out) hm2_XXXX.N.ssi.MM.<name>.count.
507- The lower 32 bits of the
508- total encoder counts. This value is reset both by the ...reset and the
509- ...index-enable pins. (s32, out) hm2_XXXX.N.ssi.MM.<name>.rawcounts.
510- The lower 32 bits of the total encoder counts. The pin is not affected
511- by reset and index. (float, out) hm2_XXXX.N.ssi.MM.<name>.position.
512- The encoder position in machine units. This is calculated from the
513- full 64-bit buffers so will show a True value even after the counts
514- pins have wrapped. It is zeroed by reset and index enable. (bit, IO)
515- hm2_XXXX.N.ssi.MM.<name>.index-enable. When this pin is set "True" the
516- module will wait until the raw encoder counts next passes through an
517- integer multiple of the number of counts specified by counts-per-rev
518- parameter and then it will zero the counts and position pins, and set
519- the index-enable pin back to "False" as a signal to the system that
520- "index" has been passed. this pin is used for spindle-synchronised
521- motion and index-homing. (bit, in) (bit, out)
522- hm2_XXXX.N.ssi.MM.<name>.reset. When this pin is set high the counts
523- and position pins are zeroed.
498+ f: (bitField):: (bit, out) hm2_XXXX.N.ssi.MM.<name>-NN. +
499+ The value of each individual bit in the data field.
500+ NN starts at 00 up to the number of bits in the field. +
501+ (bit, out) hm2_XXXX.N.ssi.MM.<name>-NN-not. +
502+ An inverted version of the individual bit values.
503+
504+ e: (Encoder):: (s32, out) hm2_XXXX.N.ssi.MM.<name>.count. +
505+ The lower 32 bits of the total encoder counts. This value is reset both by the ...reset and the ...index-enable pins. +
506+ (s32, out) hm2_XXXX.N.ssi.MM.<name>.rawcounts. +
507+ The lower 32 bits of the total encoder counts. The pin is not affected by reset and index. +
508+ (float, out) hm2_XXXX.N.ssi.MM.<name>.position. +
509+ The encoder position in machine units. This is calculated from the full 64-bit buffers so will show a True value even after the counts pins have wrapped. It is zeroed by reset and index enable. +
510+ (bit, IO) hm2_XXXX.N.ssi.MM.<name>.index-enable. +
511+ When this pin is set "True" the module will wait until the raw encoder counts next passes through an integer multiple of the number of counts specified by counts-per-rev parameter and then it will zero the counts and position pins, and set the index-enable pin back to "False" as a signal to the system that "index" has been passed. this pin is used for spindle-synchronised motion and index-homing. +
512+ (bit, in) (bit, out) hm2_XXXX.N.ssi.MM.<name>.reset. +
513+ When this pin is set high the counts and position pins are zeroed.
524514h: (Split encoder, high-order bits)::
525515 Some encoders (Including Fanuc) place the encoder part-turn counts and
526516 full-turn counts in separate, non-contiguous fields. This tag defines
@@ -545,11 +535,10 @@ m: (Multi-turn)::
545535Two parameters are universally created for all SSI instances
546536
547537hm2_XXXX.N.ssi.MM.frequency-khz (float r/w)::
548- This parameter sets the SSI clock frequency. The units are kHz, so 500
549- will give a clock frequency of 500,000 Hz.
538+ This parameter sets the SSI clock frequency. The units are kHz, so 500 will give a clock frequency of 500,000 Hz.
550539hm2_XXXX.N.ssi.timer-number-num (s32 r/w)::
551- This parameter allocates the SSI module to a specific hm2dpll timer
552- instance. This pin is only of use in firmwares which contain a hm2dpll
540+ This parameter allocates the SSI module to a specific hm2dpll timer instance.
541+ This pin is only of use in firmwares which contain a hm2dpll
553542 function and will default to 1 in cases where there is such a
554543 function, and 0 if there is not. The pin can be used to disable reads
555544 of the encoder, by setting to a nonexistent timer number, or to 0.
0 commit comments