This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

MCF8316A: Units for DIGITAL_SPEED_CTRL

Part Number: MCF8316A
Other Parts Discussed in Thread: MCF8316C-Q1

I intend to use SPEED_MODE 10b and control speed via I2C through DIGITAL_SPEED_CTRL register. Given the field for DIGITAL_SPEED_CTRL takes 15 bits in ALGO_CTRL_1, what are the units of  DIGITAL_SPEED_CTRL? Are they still percentages of MAX_SPEED or may some fractions of percentages? I could not find any explanation in the datasheet.

Regards

Eugene

  • Hi Eugene,

    DIGITAL_SPEED_CTRL will command percentage value of MAX_SPEED.

    The conversion equation is (DIGITAL_SPEED_CTRL / 32767) * 100% = speed command %

    The maximum register value 0x7FFF corresponds to 100%. Whereas 0x4000 corresponds to 50%, etc.

    Regards,
    Eric C.

  • Hi! Is it possible to write the DIGITAL_SPEED_CTRL register via I2C to change the motor speed while it is running?

  • When I tried to write DIGITAL_SPEED_CTRL to ALGO_CTRL1 register while the motor was spinning, I found that I2C communication stopped working after a small number of successful attempts. There is errata for MCF8316A that advises not to read from the registers during motor operation. I did not have any trouble reading from the registers while the motor was spinning but writing to ALGO_CTRL1 or ALGO_CTRL2 definitely triggered I2C faults.  

    TI advises that the newer chip MCF8316C-Q1 has this fault rectified.

    Regards

    Eugene

     

     

  • Hi Miguel,

    Just to confirm what Eugene said, the MCF8316A has an errata where the device algorithm could freeze-up when I2C read/write are sent during motor operation (See #8 in this page). The likely-hood of the errata occurring depends on how loaded the device algorithm is (e.g. faster motor speed, higher PWM switching frequency, etc), but it will occur eventually if I2C read/write are sent repeatedly while motor is spinning. The workaround on the MCF8316A is to use Analog or PWM input speed command.

    This firmware algorithm bug/errata has been fixed in newer firmware revisions such as MCF8316C-Q1 or future variants.

    Regards,
    Eric C.