MICROCHIP dsPIC33/PIC24 DMT Deadman Timer Module User Manual

June 9, 2024
MICROCHIP

MICROCHIP dsPIC33/PIC24 DMT Deadman Timer Module

MICROCHIP-dsPIC33-PIC24-DMT-Deadman-Timer-Module-
PRODUCT

Note: This family reference manual section is meant to serve as a complement to device data sheets. Depending on the device variant, this manual section may not apply to all dsPIC33/PIC24 devices.
Please consult the note at the beginning of the “Deadman Timer (DMT)” chapter in the current device data sheet to check whether this document supports the device you are using.
Device data sheets and family reference manual sections are available for download from the Microchip Worldwide Website at: http://www.microchip.com.

INTRODUCTION

The Deadman Timer (DMT) module is designed to enable users to monitor the health of their application software by requiring periodic timer interrupts within a user-specified timing window. The DMT module is a synchronous counter and when enabled, counts instruction fetches, and is able to cause a soft trap/interrupt. Refer to the “Interrupt Controller” chapter in the current device data sheet to check whether the DMT event is a soft trap or interrupt if the DMT counter is not cleared within a set number of instructions. The DMT is typically connected to the system clock that drives the processor (TCY). The user specifies the timer time-out value and a mask value that specifies the range of the window, which is the range of counts that is not considered for the comparison event.
Some of the key features of this module are:

  • Configuration or software enable controlled
  • User-configurable time-out period or instruction count
  • Two instruction sequences to clear timer
  • 32-bit configurable window to clear timer
    Figure 1-1 shows a block diagram of the Deadman Timer module.

Figure 1-1: Deadman Timer Module Block DiagramMICROCHIP-dsPIC33-PIC24
-DMT-Deadman-Timer-Module-FIG 1

Note

  1. The DMT can be enabled either in the Configuration register, FDMT, or in the Special Function Register (SFR), DMTCON.
  2. The DMT is clocked whenever the instructions are fetched by the processor using a system clock. For example, after executing a GOTO instruction (which uses four instruction cycles), the DMT counter will be incremented only once.
  3. BAD1 and BAD2 are the improper sequence flags. For more information, refer to Section 3.5 “Resetting the DMT”.
  4. The DMT Max Count is controlled by the initial value of the FDMTCNL and FDMTCNH registers.
  5. A DMT event is a non-maskable soft trap or interrupt.

Figure 1-2 shows the timing diagram of a Deadman Timer event.
Figure 1-2: Deadman Timer EventMICROCHIP-dsPIC33-PIC24-DMT-Deadman-Timer-
Module-FIG 2

DMT REGISTERS

Note: Each dsPIC33/PIC24 family device variant may have one or more DMT modules.
Refer to the specific device data sheets for more details.

The DMT module consists of the following Special Function Registers (SFRs):

  • DMTCON: Deadman Timer Control Register
    This register is used to enable or disable the Deadman Timer.

  • DMTPRECLR: Deadman Timer Preclear Register
    This register is used to write a preclear keyword to eventually clear the Deadman Timer.

  • DMTCLR: Deadman Timer Clear Register
    This register is used to write a clear keyword after a preclear word has been written to the DMTPRECLR register. The Deadman Timer will be cleared following a clear keyword write.

  • DMTSTAT: Deadman Timer Status Register
    This register provides status for incorrect keyword values or sequences, or Deadman Timer events and whether or not the DMT clear window is open.

  • DMTCNTL: Deadman Timer Count Register Low and
    DMTCNTH: Deadman Timer Count Register High

These lower and higher count registers, together as a 32-bit counter register, allow user software to read the contents of the DMT counter.

  • DMTPSCNTL: Post Status Configure DMT Count Status Register Low and DMTPSCNTH: Post Status Configure DMT Count Status Register High

These lower and higher registers provide the value of the DMTCNTx Configuration bits in the FDMTCNTL and FDMTCNTH registers, respectively.

  • DMTPSINTVL: Post Status Configure DMT Interval Status Register Low and DMTPSINTVH: Post Status Configure DMT Interval Status Register High

These lower and higher registers provide the value of the DMTIVTx Configuration bits in the FDMTIVTL and FDMTIVTH registers, respectively.

  • DMTHOLDREG: DMT Hold Register
    This register holds the last read value of the DMTCNTH register when the DMTCNTH and DMTCNTL registers are read.

Table 2-1: Fuse Configuration Registers that Affect Deadman Timer Module

Register Name Description
FDMT Setting the DMTEN bit in this register enables the DMT module and if

this bit is clear, DMT can be enabled in software through the DMTCON register.
FDMTCNTL and FDMTCNTH| Lower (DMTCNT[15:0]) and upper (DMTCNT[31:16])

16 bits configure the 32-bit DMT instruction count time-out value. The value written to these registers is the total number of instructions that are required for a DMT event.

FDMTIVTL and FDMTIVTH| Lower (DMTIVT[15:0]) and upper (DMTIVT[31:16])

16 bits configure the 32-bit DMT window interval. The value written to these registers is the minimum number of instructions that are required to clear the DMT.

Register Map
A summary of the registers associated with the Deadman Timer (DMT) module is provided in Table 2-2.

Table 2-2:  DMT Register Map

SFR Name| Bit 15| Bit 14| Bit 13| Bit 12| Bit 11| Bit 10| Bit 9| Bit 8| Bit 7| Bit 6| Bit 5| Bit 4| Bit 3| Bit 2| Bit 1| Bit 0
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---
DMTCON| ON| —| —| —| —| —| —| —| —| —| —| —| —| —| —| —
DMTPRECLR| STEP1[7:0]| —| —| —| —| —| —| —| —
DMTCLR| —| —| —| —| —| —| —| —| STEP2[7:0]
DMTSTAT| —| —| —| —| —| —| —| —| BAD1| BAD2| DMTEVENT| —| —| —| —| WINOPN
DMTCNTL| COUNTER[15:0]
DMTCNTH| COUNTER[31:16]
DMTHOLDREG| UPRCNT[15:0]
DMTPSCNTL| PSCNT[15:0]
DMTPSCNTH| PSCNT[31:16]
DMTPSINTVL| PSINTV[15:0]
DMTPSINTVH| PSINTV[31:16]

Legend: = unimplemented, read as ‘0’. Reset values are shown in hexadecimal.

DMT Control Register

Register 2-1: DMTCON: Deadman Timer Control Register

R/W-0 U-0 U-0 U-0 U-0 U-0 U-0 U-0
ON ( 1 , 2 )
bit 15             bit 8
U-0 U-0 U-0 U-0 U-0 U-0 U-0 U-0
--- --- --- --- --- --- --- ---
bit 7             bit 0

Legend:

R = Readable bit                        W = Writable bit U = Unimplemented bit, read as ‘0’

-n = Value at POR                     ‘1’ = Bit is set                           ‘0’ = Bit is cleared                      x = Bit is unknown


bit 15

ON: Deadman Timer Module Enable bit(1,2) 1 = Deadman Timer module is enabled
0 = Deadman Timer module is not enabled
bit 14-0 Unimplemented: Read as ‘0’

Note

  1. This bit has control only when DMTEN = 0 in the FDMT register.
  2. DMT cannot be disabled in software. Writing ‘0’ to this bit has no effect.

Register 2-2: DMTPRECLR: Deadman Timer Preclear Register

R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0

STEP1[7:0] ( 1 )
bit 15| bit 8
U-0| U-0| U-0| U-0| U-0| U-0| U-0| U-0
---|---|---|---|---|---|---|---
—| —| —| —| —| —| —| —
bit 7|  |  |  |  |  |  | bit 0
Legend:

R = Readable bit                        W = Writable bit U = Unimplemented bit, read as ‘0’

-n = Value at POR                     ‘1’ = Bit is set                           ‘0’ = Bit is cleared                      x = Bit is unknown


bit 15-8 STEP1[7:0]: DMT Preclear Enable bits(1)
01000000 = Enables the Deadman Timer preclear (Step 1)
bit 7-0 All Other Write Patterns = Sets the BAD1 flag. Unimplemented: Read as ‘0’

Note 1: Bits[15:8] are cleared when the DMT counter is reset by writing a correct sequence of STEP1 and STEP2.

Register 2-3: DMTCLR: Deadman Timer Clear Register

U-0 U-0 U-0 U-0 U-0 U-0 U-0 U-0
bit 15             bit 8
R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0
--- --- --- --- --- --- --- ---

STEP2[7:0] ( 1 )
bit 7| bit 0
Legend:

R = Readable bit                        W = Writable bit U = Unimplemented bit, read as ‘0’

-n = Value at POR                     ‘1’ = Bit is set                           ‘0’ = Bit is cleared                      x = Bit is unknown


bit 15-8 Unimplemented: Read as ‘0’
bit 7-0 STEP2[7:0]: DMT Clear Timer bits(1)
00001000 = Clears STEP1[7:0], STEP2[7:0] and the Deadman Timer if preceded by the correct loading of the STEP1[7:0] bits in the correct sequence. The write to these bits may be verified by reading the DMTCNT register and observing the counter being reset.
All Other Write Patterns = Sets the BAD2 flag. The value of STEP1[7:0] will remain unchanged and the new value being written by STEP2[7:0] will be captured.

Note 1: Bits[7:0] are cleared when the DMT counter is reset by writing a correct sequence of STEP1 and STEP2.

Register 2-4: DMTSTAT: Deadman Timer Status Register

U-0 U-0 U-0 U-0 U-0 U-0 U-0 U-0
bit 15             bit 8
R-0 R-0 R-0 U-0 U-0 U-0 U-0 R-0
--- --- --- --- --- --- --- ---
BAD1 ( 1 ) BAD2 ( 1 ) DMTEVENT ( 1 )
WINOPN
bit 7 bit 0

Legend:

R = Readable bit                        W = Writable bit U = Unimplemented bit, read as ‘0’

-n = Value at POR                     ‘1’ = Bit is set                                 ‘0’ = Bit is cleared                   x = Bit is unknown


bit 15-8 Unimplemented: Read as ‘0’
bit 7 BAD1: Bad STEP1[7:0] Value Detect bit(1)
1 = Incorrect STEP1[7:0] value was detected
0 = Incorrect STEP1[7:0] value was not detected
bit 6 BAD2: Bad STEP2[7:0] Value Detect bit(1)
1 = Incorrect STEP2[7:0] value was detected
0 = Incorrect STEP2[7:0] value was not detected
bit 5 DMTEVENT: Deadman Timer Event bit(1)
1 = Deadman Timer event was detected (counter expired, or incorrect STEP1[7:0] or STEP2[7:0] value was entered prior to counter increment)
0 = Deadman Timer event was not detected
bit 4-1 Unimplemented: Read as ‘0’
bit 0 WINOPN: Deadman Timer Clear Window bit
1 = Deadman Timer clear window is open
0 = Deadman Timer clear window is not open

Note 1: BAD1, BAD2 and DMTEVENT bits are cleared only on a Reset.

Register 2-5: DMTCNTL: Deadman Timer Count Register Low

R-0                     R-0                   R-0                   R-0 R-0                    R-0                     R-0                   R-0

COUNTER[15:8]
bit 15 bit 8
R-0                     R-0                   R-0                   R-0 R-0                    R-0                     R-0                   R-0

COUNTER[7:0]
bit 7 bit 0
Legend:

R = Readable bit                        W = Writable bit U = Unimplemented bit, read as ‘0’

-n = Value at POR                     ‘1’ = Bit is set                           ‘0’ = Bit is cleared                      x = Bit is unknown


bit 15-0 COUNTER[15:0]: Read Current Contents of Lower DMT Counter bits

Register 2-6: DMTCNTH: Deadman Timer Count Register High

R-0                     R-0                   R-0                   R-0 R-0                    R-0                     R-0                   R-0

COUNTER[31:24]
bit 15 bit 8
R-0                     R-0                   R-0                   R-0 R-0                    R-0                     R-0                   R-0

COUNTER[23:16]
bit 7 bit 0
Legend:

R = Readable bit                        W = Writable bit U = Unimplemented bit, read as ‘0’

-n = Value at POR                     ‘1’ = Bit is set                           ‘0’ = Bit is cleared                      x = Bit is unknown


bit 15-0 COUNTER[31:16]: Read Current Contents of Higher DMT Counter bits

Register 2-7: DMTPSCNTL: Post Status Configure DMT Count Status Register Low

R-0 R-0 R-0 R-0 R-0 R-0 R-0 R-0

PSCNT[15:8]
bit 15| bit 8
R-0                     R-0                   R-0                   R-0 R-0                    R-0                     R-0                   R-0

PSCNT[7:0]
bit 7 bit 0
Legend:

R = Readable bit                        W = Writable bit U = Unimplemented bit, read as ‘0’

-n = Value at POR                     ‘1’ = Bit is set                           ‘0’ = Bit is cleared                      x = Bit is unknown


bit 15-0 PSCNT[15:0]: Lower DMT Instruction Count Value Configuration Status bits
This is always the value of the FDMTCNTL Configuration register.

Register 2-8: DMTPSCNTH: Post Status Configure DMT Count Status Register High

R-0 R-0 R-0 R-0 R-0 R-0 R-0 R-0

PSCNT[31:24]
bit 15| bit 8
R-0| R-0| R-0| R-0| R-0| R-0| R-0| R-0
---|---|---|---|---|---|---|---
PSCNT[23:16]
bit 7| bit 0
Legend:

R = Readable bit                        W = Writable bit U = Unimplemented bit, read as ‘0’

-n = Value at POR                     ‘1’ = Bit is set                           ‘0’ = Bit is cleared                      x = Bit is unknown


bit 15-0 PSCNT[31:16]: Higher DMT Instruction Count Value Configuration Status bits
This is always the value of the FDMTCNTH Configuration register.

Register 2-9: DMTPSINTVL: Post Status Configure DMT Interval Status Register Low

R-0                     R-0                   R-0                   R-0 R-0                    R-0                     R-0                   R-0

PSINTV[15:8]
bit 15 bit 8
R-0                     R-0                   R-0                   R-0 R-0                    R-0                     R-0                   R-0

PSINTV[7:0]
bit 7 bit 0
Legend:

R = Readable bit                        W = Writable bit U = Unimplemented bit, read as ‘0’

-n = Value at POR                     ‘1’ = Bit is set                           ‘0’ = Bit is cleared                      x = Bit is unknown


bit 15-0 PSINTV[15:0]: Lower DMT Window Interval Configuration Status bits
This is always the value of the FDMTIVTL Configuration register.

Register 2-10: DMTPSINTVH: Post Status Configure DMT Interval Status Register High

R-0 R-0 R-0 R-0 R-0 R-0 R-0 R-0

PSINTV[31:24]
bit 15| bit 8
R-0| R-0| R-0| R-0| R-0| R-0| R-0| R-0
---|---|---|---|---|---|---|---
PSINTV[23:16]
bit 7| bit 0
Legend:

R = Readable bit                        W = Writable bit U = Unimplemented bit, read as ‘0’

-n = Value at POR                     ‘1’ = Bit is set                           ‘0’ = Bit is cleared                      x = Bit is unknown


bit 15-0 PSINTV[31:16]: Higher DMT Window Interval Configuration Status bits
This is always the value of the FDMTIVTH Configuration register.

Register 2-11: DMTHOLDREG: DMT Hold Register

R-0 R-0 R-0 R-0 R-0 R-0 R-0 R-0

UPRCNT[15:8] ( 1 )
bit 15| bit 8
R-0| R-0| R-0| R-0| R-0| R-0| R-0| R-0
---|---|---|---|---|---|---|---
UPRCNT[7:0] ( 1 )
bit 7| bit 0
Legend:

R = Readable bit                        W = Writable bit U = Unimplemented bit, read as ‘0’

-n = Value at POR                     ‘1’ = Bit is set                           ‘0’ = Bit is cleared                      x = Bit is unknown


bit 15-0 UPRCNT[15:0]: Contains Value of the DMTCNTH Register When DMTCNTL and DMTCNTH Registers were Last Read bits(1)
Note 1: The DMTHOLDREG register is initialized to ‘0’ on Reset, and is only loaded when the DMTCNTL and DMTCNTH registers are read.

DMT OPERATION

Modes of Operation
The primary function of the Deadman Timer (DMT) module is to interrupt the processor in the event of a software malfunction. The DMT module, which works on the system clock, is a free-running instruction fetch timer, which is clocked whenever an instruction fetch occurs until a count match occurs. The instructions are not fetched when the processor is in Sleep mode.
The DMT module consists of a 32-bit counter, the read-only DMTCNTL and DMTCNTH registers with a time-out count match value, as specified by the two external, 16-bit Configuration Fuse registers, FDMTCNTL and FDMTCNTH. Whenever the count match occurs, a DMT event will occur, which is nothing but a soft trap/interrupt. Refer to the “Interrupt Controller” chapter in the current device data sheet to check whether the DMT event is a soft trap or interrupt.
A DMT module is typically used in mission-critical and safety-critical applications, where any failure of the software functionality and sequencing must be detected.

Enabling and Disabling the DMT Module
The DMT module can be enabled or disabled by the device configuration or it can be enabled through software by writing to the DMTCON register.
If the DMTEN Configuration bit in the FDMT register is set, the DMT is always enabled. The ON control bit (DMTCON[15]) will reflect this by reading a ‘1’. In this mode, the ON bit cannot be cleared in software. To disable the DMT, the configuration must be rewritten to the device. If DMTEN is set to ‘0’ in the fuse, then the DMT is disabled in hardware.
Software can enable the DMT by setting the ON bit in the Deadman Timer Control (DMTCON) register. However, for software control, the DMTEN Configuration bit in the FDMT register should be set to ‘0’. Once enabled, disabling the DMT in software is not possible.

DMT Count Windowed Interval
The DMT module has a Windowed Operation mode. The DMTIVT[15:0] and DMTIVT[31:16] Configuration bits in the FDMTIVTL and FDMTIVTH registers, respectively, set the window inter-val value. In Windowed mode, software can clear the DMT only when the counter is in its final window before a count match occurs. That is, if the DMT counter value is greater than or equal to the value written to the window interval value, then only the clear sequence can be inserted into the DMT module. If the DMT is cleared before the allowed window, a Deadman Timer soft trap or interrupt is immediately generated.

DMT Operation in Power-Saving Modes
As the DMT module is only incremented by instruction fetches, the count value will not change when the core is inactive. The DMT module remains inactive in Sleep and Idle modes. As soon as the device wakes up from Sleep or Idle, the DMT counter again starts incrementing.

Resetting the DMT
The DMT can be reset in two ways: one way is using a system Reset and another way is by writ-ing an ordered sequence to the DMTPRECLR and DMTCLR registers. Clearing the DMT counter value requires a special sequence of operations:

  1. The STEP1[7:0] bits in the DMTPRECLR register must be written as ‘01000000’ (0x40):
    • If any value other than 0x40 is written to the STEP1x bits, the BAD1 bit in the DMTSTAT register will be set and it causes a DMT event to occur.
    • If Step 2 is not preceded by Step 1, BAD1 and DMTEVENT Flags are set. BAD1 and DMTEVENT flags gets cleared only on a device Reset.
  2. The STEP2[7:0] bits in the DMTCLR register must be written as ‘00001000’ (0x08). This can only be done if preceded by Step 1 and the DMT is in the open window interval. Once correct values are written, the DMT counter will be cleared to zero. The DMTPRECLR, DMTCLR and DMTSTAT registers’ value will also be cleared zero.
    • If any value other than 0x08 is written to the STEP2x bits, the BAD2 bit in the DMTSTAT register will be set and causes a DMT event to occur.
    • Step 2 is not carried out in the open window interval; it causes the BAD2 flag to be set. A DMT event immediately occurs.
    • Writing back-to-back preclear sequences (0x40) also causes the BAD2 flag to be set and causes a DMT event.

Note: After an invalid preclear/clear sequence, it takes at least two cycles to set the BAD1/ BAD2 flag and three cycles at least to set the DMTEVENT.

The BAD2 and DMTEVENT flags gets cleared only on a device Reset. Refer to the flowchart as shown in Figure 3-1.

Figure 3-1: Flowchart for DMT EventMICROCHIP-dsPIC33-PIC24-DMT-Deadman-
Timer-Module-FIG 3

Note

  1. DMT is enabled (ON (DMTCON[15]) as qualified by FDMT in the Configuration Fuses.
  2. DMT counter can be reset after the counter expiry or BAD1/BAD2 occurrences only by device Reset.
  3. STEP2x before STEP1x (DMTCLEAR written before DMTPRECLEAR) or BAD_STEP1 (DMTPRECLEAR written with value not equal to 0x40).
  4. STEP1x (DMTPRECLEAR written again after STEP1x), or BAD_STEP2 (DMTCLR written with value not equal to 0x08) or window interval is not open.

DMT Count Selection
The Deadman Timer count is set by the DMTCNTL[15:0] and DMTCNTH[31:16] register bits in the FDMTCNTL and FDMTCNTH registers, respectively. The current DMT count value can be obtained by reading the lower and higher Deadman Timer Count registers, DMTCNTL and DMTCNTH.
The PSCNT[15:0] and PSCNT[31:16] bits in the DMTPSCNTL and DMTPSCNTH registers, respectively, allow the software to read the maximum count selected for the Deadman Timer. That means these PSCNTx bit values are nothing but the values that are initially written to the DMTCNTx bits in the Configuration Fuse registers, FDMTCNTL and FDMTCNTH. Whenever the DMT event occurs, the user can always compare to see whether the current counter value in the DMTCNTL and DMTCNTH registers is equal to the value of the DMTPSCNTL and DMTPSCNTH registers, which hold the maximum count value.
The PSINTV[15:0] and PSINTV[31:16] bits in the DMTPSINTVL and DMTPSINTVH registers, respectively, allow the software to read the DMT window interval value. That means these registers read the value which is written to the FDMTIVTL and FDMTIVTH registers. So when-ever the DMT current counter value in DMTCNTL and DMTCNTH reaches the value of the DMTPSINTVL and DMTPSINTVH registers, the window interval opens so that the user can insert the clear sequence to the STEP2x bits, which causes the DMT to reset.
The UPRCNT[15:0] bits in the DMTHOLDREG register hold the value of the last read of the DMT upper count values (DMTCNTH) whenever DMTCNTL and DMTCNTH are read.

RELATED APPLICATION NOTES

This section lists application notes that are related to this section of the manual. These application notes may not be written specifically for the dsPIC33/PIC24 product families, but the concepts are pertinent and could be used with modification and possible limitations. The current application notes related to the Deadman Timer (DMT) are:

Title
No related application notes at this time.

Note: Please visit the Microchip website (www.microchip.com) for additional Application Notes and code examples for the dsPIC33/PIC24 family of devices.

REVISION HISTORY

Revision A (February 2014)
This is the initial released version of this document.

Revision B (March 2022)
Updates Figure 1-1 and Figure 3-1.
Updates Register 2-1, Register 2-2, Register 2-3, Register 2-4, Register 2-9 and Register 2-10. Updates Table 2-1 and Table 2-2.
Updates Section 1.0 “Introduction”, Section 2.0 “DMT Registers”, Section 3.1 “Modes of Operation”, Section 3.2 “Enabling and Disabling the DMT Module”, Section 3.3 “DMT Count Windowed Interval”, Section 3.5 “Resetting the DMT” and Section 3.6 “DMT Count Selection”.
Moves the Register Map to Section 2.0 “DMT Registers”.

Note the following details of the code protection feature on Microchip products:

  • Microchip products meet the specifications contained in their particular Microchip Data Sheet.
  • Microchip believes that its family of products is secure when used in the intended manner, within operating specifications, and under normal conditions.
  • Microchip values and aggressively protects its intellectual property rights. Attempts to breach the code protection features of Microchip product is strictly prohibited and may violate the Digital Millennium Copyright Act.
  • Neither Microchip nor any other semiconductor manufacturer can guarantee the security of its code. Code protection does not mean that we are guaranteeing the product is “unbreakable”. Code protection is constantly evolving. Microchip is committed to continuously improving the code protection features of our products.

This publication and the information herein may be used only with Microchip products, including to design, test, and integrate Microchip products with your application. Use of this informa-tion in any other manner violates these terms. Information regarding device applications is provided only for your convenience and may be superseded by updates. It is your responsibility to ensure that your application meets with your specifications. Contact your local Microchip sales office for additional support or, obtain additional support at https://www.microchip.com/en-us/support/design-help/client- support-services.
THIS INFORMATION IS PROVIDED BY MICROCHIP “AS IS”. MICROCHIP MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY KIND WHETHER EXPRESS OR IMPLIED, WRITTEN OR ORAL, STATUTORY OR OTHERWISE, RELATED TO THE INFORMATION INCLUDING BUT NOT LIMITED TO ANY IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY, AND FITNESS FOR A PARTICULAR PURPOSE, OR WARRANTIES RELATED TO ITS CONDITION, QUALITY, OR PERFORMANCE.
IN NO EVENT WILL MICROCHIP BE LIABLE FOR ANY INDIRECT, SPECIAL, PUNITIVE, INCIDENTAL, OR CONSEQUENTIAL LOSS, DAMAGE, COST, OR EXPENSE OF ANY KIND WHATSOEVER RELATED TO THE INFORMATION OR ITS USE, HOWEVER CAUSED, EVEN IF MICROCHIP HAS BEEN ADVISED OF THE POSSIBILITY OR THE DAMAGES ARE FORESEEABLE. TO THE FULLEST EXTENT ALLOWED BY LAW, MICROCHIP’S TOTAL LIABILITY ON ALL CLAIMS IN ANY WAY RELATED TO THE INFORMATION OR ITS USE WILL NOT EXCEED THE AMOUNT OF FEES, IF ANY, THAT YOU HAVE PAID DIRECTLY TO MICROCHIP FOR THE INFORMATION.
Use of Microchip devices in life support and/or safety applications is entirely at the buyer’s risk, and the buyer agrees to defend, indemnify and hold harmless Microchip from any and all damages, claims, suits, or expenses resulting from such use. No licenses are conveyed, implicitly or otherwise, under any Microchip intellectual property rights unless otherwise stated.

For information regarding Microchip’s Quality Management Systems, please visit www.microchip.com/quality.

Trademarks
The Microchip name and logo, the Microchip logo, Adaptec, AnyRate, AVR, AVR logo, AVR Freaks, BesTime, BitCloud, CryptoMemory, CryptoRF, dsPIC, flexPWR, HELDO, IGLOO, JukeBlox, KeeLoq, Kleer, LANCheck, LinkMD, maXStylus, maXTouch, MediaLB, megaAVR, Microsemi, Microsemi logo, MOST, MOST logo, MPLAB, OptoLyzer, PIC, picoPower, PICSTART, PIC32 logo, PolarFire, Prochip Designer, QTouch, SAM-BA, SenGenuity, SpyNIC, SST, SST Logo, SuperFlash, Symmetricom, SyncServer, Tachyon, TimeSource, tinyAVR, UNI/O, Vectron, and XMEGA are registered trademarks of Microchip Technology Incorporated in the U.S.A. and other countries.
AgileSwitch, APT, ClockWorks, The Embedded Control Solutions Company, EtherSynch, Flashtec, Hyper Speed Control, HyperLight Load, IntelliMOS, Libero, motorBench, mTouch, Powermite 3, Precision Edge, ProASIC, ProASIC Plus, ProASIC Plus logo, Quiet- Wire, SmartFusion, SyncWorld, Temux, TimeCesium, TimeHub, TimePictra, TimeProvider, TrueTime, WinPath, and ZL are registered trademarks of Microchip Technology Incorporated in the U.S.A.
Adjacent Key Suppression, AKS, Analog-for-the-Digital Age, Any Capacitor, AnyIn, AnyOut, Augmented Switching, BlueSky, BodyCom, CodeGuard, CryptoAuthentication, CryptoAutomotive, CryptoCompanion, CryptoController, dsPICDEM, dsPICDEM.net, Dynamic Average Matching, DAM, ECAN, Espresso T1S, EtherGREEN, GridTime, IdealBridge, In-Circuit Serial Programming, ICSP, INICnet, Intelligent Paralleling, Inter-Chip Connectivity, JitterBlocker, Knob-on-Display, maxCrypto, maxView, memBrain, Mindi, MiWi, MPASM, MPF, MPLAB Certified logo, MPLIB, MPLINK, MultiTRAK, NetDetach, NVM Express, NVMe, Omniscient Code Generation, PICDEM, PICDEM.net, PICkit, PICtail, PowerSmart, PureSilicon, QMatrix, REAL ICE, Ripple Blocker, RTAX, RTG4, SAM-ICE, Serial Quad I/O, simpleMAP, SimpliPHY, SmartBuffer, SmartHLS, SMART-I.S., storClad, SQI, SuperSwitcher, SuperSwitcher II, Switchtec, SynchroPHY, Total Endurance, TSHARC, USBCheck, VariSense, VectorBlox, VeriPHY, ViewSpan, WiperLock, XpressConnect, and ZENA are trademarks of Microchip Technology Incorporated in the U.S.A. and other countries.
SQTP is a service mark of Microchip Technology Incorporated in the U.S.A.
The Adaptec logo, Frequency on Demand, Silicon Storage Technology, Symmcom, and Trusted Time are registered trademarks of Microchip Technology Inc. in other countries.
GestIC is a registered trademark of Microchip Technology Germany II GmbH & Co. KG, a subsidiary of Microchip Technology Inc., in other countries.
All other trademarks mentioned herein are property of their respective companies.
© 2014-2022, Microchip Technology Incorporated and its subsidiar-ies.
All Rights Reserved.
ISBN: 978-1-6683-0063-3

Service

AMERICAS
Corporate Office
2355 West Chandler Blvd. Chandler, AZ 85224-6199 Tel: 480-792-7200
Fax: 480-792-7277
Technical Support: http://www.microchip.com/support
Web Address:
www.microchip.com

Atlanta
Duluth, GA
Tel: 678-957-9614
Fax: 678-957-1455

Austin, TX
Tel: 512-257-3370

Boston
Westborough, MA
Tel: 774-760-0087
Fax: 774-760-0088

Chicago
Itasca, IL
Tel: 630-285-0071
Fax: 630-285-0075

Los Angeles
Mission Viejo, CA
Tel: 949-462-9523
Fax: 949-462-9608
Tel: 951-273-7800

New York,
NY Tel: 631-435-6000

Canada – Toronto
Tel: 905-695-1980
Fax: 905-695-2078

Read User Manual Online (PDF format)

Loading......

Download This Manual (PDF format)

Download this manual  >>

MICROCHIP User Manuals

Related Manuals