MSP432P401R勘误表
MSP432P401R勘误表
Rev C
Errata Number
BSL16 ✓
COMP11 ✓ ✓
PORT31 ✓ ✓
PORT32 ✓ ✓
PORT34 ✓ ✓
PSS4 ✓ ✓
RTC14 ✓ ✓
SYS26 ✓
TA23 ✓ ✓
USCI42 ✓ ✓
USCI43 ✓ ✓
USCI44 ✓ ✓
USCI45 ✓ ✓
USCI46 ✓ ✓
USCI47 ✓ ✓
USCI48 ✓
USCI50 ✓ ✓
Rev C
Errata Number
UDMA2 ✓ ✓
5 Package Markings
Category Functional
Function On blank devices, debugger access over JTAG is disabled after the timeout window
Description On blank devices, the default device initialization sequence that resides in the boot strap
loader (BSL) disables the JTAG pins after a 10 second timeout window if no activity has
occurred. This causes debug and program access via JTAG to be disabled. JTAG
access can be re-enabled via a device reset (either Class 0 or Class 1).
Workaround 1. Use Serial Wire Debug (SWD) as the debug/program interface instead of JTAG.
OR
2. If timeout occurs, reset device (either Class 0 or Class 1) and ensure JTAG is
accessed within a 10 second window
Category Functional
Description Polling the comparator output interrupt and the output inverted interrupt flags
(CEIFG.CExINT and CEIIFG.CExINT) may result in a missed interrupt if the flags are
modified while being read.
Workaround Using an interrupt service routine to service CEIFG and CEIIFG interrupts significantly
reduces the probability of the issue occurring.
Category Functional
Function Fast transient noise on GPIOs may result in a constant high current
Description GPIOs subject to fast transient noise (e.g. electromagnetic noise) may see a high
constant current. The constant high current is a result of the fast transient noise
triggering the internal ESD protection structure and it persists as long as the internal or
external current driver sustains the current.
1. When using in Input mode (PxDIR = 0 ), all GPIOs are impacted by this issue. A fast
transient noise on the pin configured as an input or on an adjacent pin could cause a
constant high current that is sustained as long as the external driver is present.
2. When using in Output mode (PxDIR = 1), only the high drive GPIOs (P2.0,P2.1,P2.2
and P2.3) are impacted by this issue. If the affected GPIOs are configured in high drive
mode (PxDS register) and they (or adjacent pins) are subject to fast transient noise, it
could cause a constant high current. Note that this issue is not seen in GPIOs configured
in the output direction with the regular drive strength setting since the high drive mode is
required to sustain the high current.
If the GPIO configuration is reset by a power cycle, the constant high current is no longer
sustained.
Workaround 1. For GPIOs configured as input, ensure that they are driven by a current-limited source
< 30mA (up to Tj=85C) or 20mA (up to Tj=125C, if allowed for device. See device
specific datasheet for maximum allowed operating junction temperature) OR use a series
resistance >100 ohm (up to Tj=85C) or 150 ohm (up to Tj=125C, if allowed for device.
See device specific datasheet for maximum allowed operating junction temperature) to
limit the current.
2. For high drive GPIOs configured as output, ensure adequate protection from fast
transients is provided to both the high drive IOs and any adjacent pins.
3. In general, it is recommended to terminate any unused GPIOs in the output direction,
driving low to minimize the occurrence of this issue.
4. For guidelines on ESD considerations refer to the document: MSP430 System-level
ESD Considerations SLAA530
Category Functional
Function Sucessive writes to port registers may cause interrupt to pend incorrectly
Description Writing to the PxIES register sets the corresponding PxIFG bit. The PxIFG bit can be
cleared by writing '0' to it (clearing the register).
However if the PxIFG bit is cleared immediately (next instruction cycle) after writing to
the PxIES register, the interrupt flag does not clear and stays pending.
Workaround Insert a NOP or __no_operation(); instruction after writing to the PxIES register and
before clearing the PxIFG register.
Category Functional
Function Timer_A1 & A2 outputs and EUSCIB3 pins should not be used simultaneously
Description The following pin functions cannot be simultaneously active on the device at any pin:
1) TA1.0 and UCB3STE
2) TA2.0 and UCB3CLK
3) TA2.3 and UCB3SIMO
4) TA2.4 and UCB3SOMI
Attempting to use both pin's secondary functions will cause functional conflicts and
abnormal behavior of the peripherals. For example, using Timer_A2.3 output will prevent
proper operation of EUSCIB3SIMO.
Workaround None.
Category Functional
Description Upon entry into LPM4.5, the SVSMH is set to low power normal performance mode
automatically regardless of the SVSMHLP setting.
Clearing the SVSMHLP bit (PSSCTL0.SVSMHLP = 0) has no impact in LPM4.5.
This bit works as expected in all other low power modes.
Workaround None
Category Functional
Description Polling any RTC interrupt flag mapped to the RTCIV register may result in a missed
interrupt if the flags are modified while being read.
Workaround Using an interrupt service routine to service flags mapped to the RTCIV register
significantly reduces the probability of the issue occurring.
Category Functional
Description The Regional IP Protection feature is not available up to Revision C for the
MSP432P401R/M devices.
If your application only requires MSP432 full-chip security to protect your software IP
from JTAG read-out, this limitation does not apply to you.
Regional IP Protection is used in (i) protecting a specific block of code/data from readout
by the rest of the application code and (ii) multi-party firmware development, where each
software IP owner delivers an executable IP that is protected from read-out by code from
other IP owners using the device.
For more information on benefits and how to use Regional IP Protection, refer to the
document: Software IP Protection on MSP432P4xx Microcontrollers
Workaround None
Category Functional
Description Polling any Timer interrupt flag may result in a missed interrupt if the flags are modified
while being read.
Workaround Using an interrupt service routine to service timer interrupt flags significantly reduces the
probability of the issue occurring.
Function UDMA driver library versions < 4.20.00.03 (SimpleLink MSP432P4 SDK versions <
2.10.00.14) do not support use case where increment size and transfer size are different.
Description UDMA driver library APIs with versions < 4.20.00.03 (SimpleLink MSP432P4 SDK
versions < 2.10.00.14) do not support use cases where increment size and transfer sizes
are different for either the source or destination. The addresses computation are
performed wrongly and this result in erroneous data transfers.
Workaround This is fixed in driver library API versions >= 4.20.00.03 (SimpleLink MSP432P4 SDK
versions >= 2.10.00.14).
- For TI Drivers users, update to SDK version 2.10.00.14 and TI Drivers based
applications automatically leverage the bug fix.
- For Driver Library users, update to SDK version 2.10.00.14 and ensure that the
application code uses MAP_DMA_ function calls for Driverlib DMA [instead of direct
DMA_ API calls].
Category Functional
Description UCTXCPTIFG flag is triggered at the last stop bit of every UART byte transmission,
independently of an empty buffer, when transmitting multiple byte sequences via UART.
The erroneous UART behavior occurs with and without DMA transfer.
Workaround None.
Category Functional
Description When using the USCI_B I2C module as a receiver, if an asynchronous event occurs
during the read of the UCBxRXIFG interrupt flag, the flag could be unintentionally
cleared. This may result in the I2C communication being stalled.
Workaround Workaround
1. If the device functions as an I2C master receiver, use synchronous clock sources for
operation.
OR
2. Avoid polling UCBxRXIFG. Using the standard interrupt service routine to service the
UCBxRXIFG interrupt flag significantly reduces the probability of this errata occurring.
Avoid register access to UCBxCTLW0, UCBxSTATW, UCBxRXBUF, UCBxTXBUF,
UCBxIFG, & UCBxIV while transmit or receive operation is ongoing and UCBxRXIFG or
UCBxTXIFG is expected to be set.
OR
3. Use the clock low time-out select feature (UCCTLO.UCBxCTLW1) to enable a timeout
window. In the event that the I2C communication is stalled, use the clock low time-out
interrupt to reset the eUSCI module and re-initiate communication.
Category Functional
Description When using the USCI_A UART module with differing clock sources for the system clock
(MCLK) and the UART source clock (BRCLK), any read or write of the UCAxIFG,
UCAxCTLW0, UCAxSTATW, UCAxRXBUF, UCAxTXBUF, UCAxABCTL & UCAxIV
registers, while the UCATXIFG or UCARXIFG flag is being set by a UART event could
unintentionally clear the UCATXIFG or UCARXIFG. This may result in the UART
Workaround Workaround 1: Use synchronous clocks to source BRCLK and MCLK. Note that the
clock frequencies need not be identical and dividers may be used as long as they are
using the same clock source.
Workaround 2: Avoid polling UCAxTXIFG and UCAxRXIFG. Using the standard interrupt
service routine to service the interrupt flag significantly reduces access to the USCI
registers & hence reduces the probability of this errata occurring.
Also, limit all accesses of the UCAxCTLW0, UCAxSTATW, UCAxRXBUF, UCAxTXBUF,
UCAxABCTL, UCAxIFG, & UCAxIV registers while transmit or receive operation is
ongoing (and UCAxRXIFG or UCAxTXIFG is expected to be set) as this can further
reduce the probability of this errata occurring.
Category Functional
Function Unexpected SPI clock stretching possible when UCxCLK is asynchronous to MCLK
Description In rare cases, during SPI communication, the clock high phase of the first data bit may
be stretched significantly. The SPI operation completes as expected with no data loss.
This issue only occurs when the USCI SPI module clock (UCxCLK) is asynchronous to
the system clock (MCLK).
Workaround Ensure that the USCI SPI module clock (UCxCLK) and the CPU clock (MCLK) are
synchronous to each other.
Category Functional
Description The USCI UART may receive the first byte incorrectly under the following conditions:
1. If the USCI UART is setup to source BRCLK from ACLK or SMCLK and the clock
source is turned off, for example when the module is in idle condition and no other
peripheral is requesting the same clock source
AND
2. The UART is configured for a baud rate of 9600 and the BRCLK is setup to source a
32kHZ clock (REFO or LFXT)
If the above two conditions are satisfied, the UART start byte received interrupt flag
(UCSTTIFG) may not be set and the UART may miss the first bit resulting in an incorrect
data byte. Subsequent data bytes are not impacted.
Workaround 1. When setting up the UART at 9600 baud, use a source clock >32kHz or if a 32kHz
clock source must be used, lower the baud rate to 4800 baud
OR
2. Ensure any other peripheral (for example a timer sourced from ACLK) is active and
using the UART clock source thereby keeping the clock turned on even when the UART
module is idle.
Category Functional
Description The eUSCI SPI operates incorrectly under the following conditions:
1. The eUSCI_A or eUSCI_B module is configured as a SPI slave with clock phase
mode UCCKPH = 1
AND
2. The SPI clock pin is not at the appropriate idle level (low for UCCKPL = 0, high for
UCCKPL = 1) when the UCSWRST bit in the UCxxCTLW0 register is cleared.
If both of the above conditions are satisfied, then the following will occur:
eUSCI_A: the SPI will not be able to receive a byte (UCAxRXBUF will not be filled and
UCRXIFG will not be set) and SPI slave output data will be wrong (first bit will be missed
and data will be shifted).
eUSCI_B: the SPI receives data correctly but the SPI slave output data will be wrong
(first byte will be duplicated or replaced by second byte).
Workaround Use clock phase mode UCCKPH = 0 for MSP SPI slave if allowed by the application.
OR
The SPI master must set the clock pin at the appropriate idle level (low for UCCKPL = 0,
high for UCCKPL = 1) before SPI slave is reset (UCSWRST bit is cleared).
OR
For eUSCI_A: to detect communication failure condition where UCRXIFG is not set,
check both UCRXIFG and UCTXIFG. If UCTXIFG is set twice but UCRXIFG is not set,
reset the MSP SPI slave by setting and then clearing the UCSWRST bit, and inform the
SPI master to resend the data.
Category Functional
Description When using the USCI_A or USCI_B SPI module as a slave, if an asynchronous event
occurs during the read of the UCRXIFG (UCxxIFG.UCRXIFG) interrupt flag, the flag
could be unintentionally cleared. This may result in the SPI communication being stalled.
Workaround 1. If the device functions as a SPI slave, ensure that the USCI clock source is
synchronous to the system clock (MCLK).
OR
2. Avoid polling UCxxIFG.UCRXIFG. Using the standard interrupt service routine to
service the UCxxIFG.UCRXIFG interrupt flag significantly reduces the probability of this
errata occurring. Avoid register access to UCxxCTLW0, UCxxSTATW, UCxxRXBUF,
UCxxTXBUF, UCxxIFG, & UCxxIV while transmit or receive operation is ongoing and
UCRXIFG is expected to be set.
Category Functional
Function Data may not be transmitted correctly from the eUSCI when operating in SPI 4-pin
master mode with UCSTEM = 0
Description When the eUSCI is used in SPI 4-pin master mode with UCSTEM = 0 (STE pin used as
an input to prevent conflicts with other SPI masters), data that is moved into UCxTXBUF
while the UCxSTE input is in the inactive state may not be transmitted correctly. If the
eUSCI is used with UCSTEM = 1 (STE pin used to output an enable signal), data is
transmitted correctly.
Workaround When using the STE pin in conflict prevention mode (UCSTEM = 0), only move data into
UCxTXBUF when UCxSTE is in the active state. If an active transfer is aborted by
UCxSTE transitioning to the master-inactive state, the data must be rewritten into
UCxTXBUF to be transferred when UCxSTE transitions back to the master-active state.
Texas Instruments Incorporated (‘TI”) technical, application or other design advice, services or information, including, but not limited to,
reference designs and materials relating to evaluation modules, (collectively, “TI Resources”) are intended to assist designers who are
developing applications that incorporate TI products; by downloading, accessing or using any particular TI Resource in any way, you
(individually or, if you are acting on behalf of a company, your company) agree to use it solely for this purpose and subject to the terms of
this Notice.
TI’s provision of TI Resources does not expand or otherwise alter TI’s applicable published warranties or warranty disclaimers for TI
products, and no additional obligations or liabilities arise from TI providing such TI Resources. TI reserves the right to make corrections,
enhancements, improvements and other changes to its TI Resources.
You understand and agree that you remain responsible for using your independent analysis, evaluation and judgment in designing your
applications and that you have full and exclusive responsibility to assure the safety of your applications and compliance of your applications
(and of all TI products used in or for your applications) with all applicable regulations, laws and other applicable requirements. You
represent that, with respect to your applications, you have all the necessary expertise to create and implement safeguards that (1)
anticipate dangerous consequences of failures, (2) monitor failures and their consequences, and (3) lessen the likelihood of failures that
might cause harm and take appropriate actions. You agree that prior to using or distributing any applications that include TI products, you
will thoroughly test such applications and the functionality of such TI products as used in such applications. TI has not conducted any
testing other than that specifically described in the published documentation for a particular TI Resource.
You are authorized to use, copy and modify any individual TI Resource only in connection with the development of applications that include
the TI product(s) identified in such TI Resource. NO OTHER LICENSE, EXPRESS OR IMPLIED, BY ESTOPPEL OR OTHERWISE TO
ANY OTHER TI INTELLECTUAL PROPERTY RIGHT, AND NO LICENSE TO ANY TECHNOLOGY OR INTELLECTUAL PROPERTY
RIGHT OF TI OR ANY THIRD PARTY IS GRANTED HEREIN, including but not limited to any patent right, copyright, mask work right, or
other intellectual property right relating to any combination, machine, or process in which TI products or services are used. Information
regarding or referencing third-party products or services does not constitute a license to use such products or services, or a warranty or
endorsement thereof. Use of TI Resources may require a license from a third party under the patents or other intellectual property of the
third party, or a license from TI under the patents or other intellectual property of TI.
TI RESOURCES ARE PROVIDED “AS IS” AND WITH ALL FAULTS. TI DISCLAIMS ALL OTHER WARRANTIES OR
REPRESENTATIONS, EXPRESS OR IMPLIED, REGARDING TI RESOURCES OR USE THEREOF, INCLUDING BUT NOT LIMITED TO
ACCURACY OR COMPLETENESS, TITLE, ANY EPIDEMIC FAILURE WARRANTY AND ANY IMPLIED WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT OF ANY THIRD PARTY INTELLECTUAL
PROPERTY RIGHTS.
TI SHALL NOT BE LIABLE FOR AND SHALL NOT DEFEND OR INDEMNIFY YOU AGAINST ANY CLAIM, INCLUDING BUT NOT
LIMITED TO ANY INFRINGEMENT CLAIM THAT RELATES TO OR IS BASED ON ANY COMBINATION OF PRODUCTS EVEN IF
DESCRIBED IN TI RESOURCES OR OTHERWISE. IN NO EVENT SHALL TI BE LIABLE FOR ANY ACTUAL, DIRECT, SPECIAL,
COLLATERAL, INDIRECT, PUNITIVE, INCIDENTAL, CONSEQUENTIAL OR EXEMPLARY DAMAGES IN CONNECTION WITH OR
ARISING OUT OF TI RESOURCES OR USE THEREOF, AND REGARDLESS OF WHETHER TI HAS BEEN ADVISED OF THE
POSSIBILITY OF SUCH DAMAGES.
You agree to fully indemnify TI and its representatives against any damages, costs, losses, and/or liabilities arising out of your non-
compliance with the terms and provisions of this Notice.
This Notice applies to TI Resources. Additional terms apply to the use and purchase of certain types of materials, TI products and services.
These include; without limitation, TI’s standard terms for semiconductor products http://www.ti.com/sc/docs/stdterms.htm), evaluation
modules, and samples (http://www.ti.com/sc/docs/sampterms.htm).
Mailing Address: Texas Instruments, Post Office Box 655303, Dallas, Texas 75265
Copyright © 2018, Texas Instruments Incorporated