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.

SCI: 16-bit and 32-bit accesses



In the SCI manual it is stated that :

SCI-B Registers are mapped to peripheral frame 2. This frame allows only 16-bit accesses. Using 32-bit accesses will produce
undefined results.

My first question: does this applies only to SCI-B registers (ie not to SCI-A)?

My second question: how to ensure that only 16bit accesses are made?
Do I need to write code like that:

    union SCICTL1_REG scictl1;

    // Set SCI under reset
    scictl1.all = SciaRegs.SCICCR.all;
    scictl1.bit.SWRESET = SCI_SW_RESET_ENABLE;
    ScibRegs.SCICTL1.all = scictl1.all;

Or can I access the fields of the bit field directly?

Thank you for your help!