DSPIC30F3014-20I/ML Microchip Technology, DSPIC30F3014-20I/ML Datasheet

IC DSPIC MCU/DSP 24K 44QFN

DSPIC30F3014-20I/ML

Manufacturer Part Number
DSPIC30F3014-20I/ML
Description
IC DSPIC MCU/DSP 24K 44QFN
Manufacturer
Microchip Technology
Series
dsPIC™ 30Fr

Specifications of DSPIC30F3014-20I/ML

Core Processor
dsPIC
Core Size
16-Bit
Speed
20 MIPS
Connectivity
I²C, SPI, UART/USART
Peripherals
Brown-out Detect/Reset, POR, PWM, WDT
Number Of I /o
30
Program Memory Size
24KB (8K x 24)
Program Memory Type
FLASH
Eeprom Size
1K x 8
Ram Size
2K x 8
Voltage - Supply (vcc/vdd)
2.5 V ~ 5.5 V
Data Converters
A/D 13x12b
Oscillator Type
Internal
Operating Temperature
-40°C ~ 85°C
Package / Case
44-QFN
Core Frequency
40MHz
Core Supply Voltage
5.5V
Embedded Interface Type
I2C, SPI, UART
No. Of I/o's
30
Flash Memory Size
24KB
Supply Voltage Range
2.5V To 5.5V
Lead Free Status / RoHS Status
Lead free / RoHS Compliant
For Use With
XLT44QFN2 - SOCKET TRAN ICE 44QFN/40DIPAC164322 - MODULE SOCKET MPLAB PM3 28/44QFN
Lead Free Status / RoHS Status
Lead free / RoHS Compliant, Lead free / RoHS Compliant
Other names
DSPIC30F301420IML
dsPIC30F3014/4013
Data Sheet
High-Performance,
16-bit Digital Signal Controllers
 2010 Microchip Technology Inc.
DS70138G

Related parts for DSPIC30F3014-20I/ML

DSPIC30F3014-20I/ML Summary of contents

Page 1

... Microchip Technology Inc. dsPIC30F3014/4013 High-Performance, 16-bit Digital Signal Controllers Data Sheet DS70138G ...

Page 2

... PICtail, REAL ICE, rfLAB, Select Mode, Total Endurance, TSHARC, UniWinDriver, WiperLock 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. All other trademarks mentioned herein are property of their respective companies. ...

Page 3

... Fractional/Integer Multiplier • All DSP Instructions are Single Cycle - Multiply-Accumulate (MAC) Operation • Single-Cycle ±16 Shift  2010 Microchip Technology Inc. dsPIC30F3014/4013 Peripheral Features: • High-Current Sink/Source I/O Pins: 25 mA/25 mA • Five 16-Bit Timers/Counters; Optionally Pair Up 16-Bit Timers into 32-Bit Timer modules • ...

Page 4

... CMOS Technology: • Low-Power, High-Speed Flash Technology • Wide Operating Voltage Range (2.5V to 5.5V) • Industrial and Extended Temperature Ranges • Low-Power Consumption dsPIC30F3014/4013 Controller Family Program Memory Device Pins Bytes Instructions dsPIC30F3014 40/44 24K 8K dsPIC30F4013 40/44 48K 16K Pin Diagrams ...

Page 5

... Pin Diagrams (Continued) 44-Pin TQFP U1RX/SDI1/SDA/RF2 U2TX/CN18/RF5 U2RX/CN17/RF4 RF1 RF0 EMUD2/OC2/RD1 EMUC2/OC1/RD0 AN12/RB12 AN11/RB11  2010 Microchip Technology Inc. dsPIC30F3014/4013 EMUD1/SOSCI/T2CK/U1ATX/CN1/RC13 32 2 OSC2/CLKO/RC15 31 3 OSC1/CLKI dsPIC30F3014 AN8/RB8 27 7 PGD/EMUD/AN7/RB7 26 8 PGC/EMUC/AN6/OCFA/RB6 9 25 AN5/CN7/RB5 AN4/CN6/RB4 11 DS70138G-page 5 ...

Page 6

... U1RX/SDI1/SDA/RF2 1 U2TX/CN18/RF5 2 U2RX/CN17/RF4 3 RF1 4 RF0 EMUD2/OC2/RD1 9 EMUC2/OC1/RD0 10 AN12/RB12 11 Note 1: The metal plane at the bottom of the device is not connected to any pins and is recommended to be connected to V DS70138G-page 6 OSC2/CLKO/RC15 33 OSC1/CLKI dsPIC30F3014 DD 28 AN8/RB8 27 PGD/EMUD/AN7/RB7 26 PGC/EMUC/AN6/OCFA/RB6 25 AN5/CN7/RB5 24 AN4/CN6/RB4 23 externally. SS  2010 Microchip Technology Inc. ...

Page 7

... Pin Diagrams (Continued) 44-Pin TQFP U1RX/SDI1/SDA/RF2 U2TX/CN18/RF5 U2RX/CN17/RF4 C1TX/RF1 C1RX/RF0 EMUD2/OC2/RD1 EMUC2/OC1/RD0 AN12/COFS/RB12 AN11/CSDO/RB11  2010 Microchip Technology Inc. dsPIC30F3014/4013 EMUD1/SOSCI/T2CK/U1ATX/CN1/RC13 32 2 OSC2/CLKO/RC15 31 3 OSC1/CLKI dsPIC30F4013 AN8/RB8 27 7 PGD/EMUD/AN7/RB7 26 8 PGC/EMUC/AN6/OCFA/RB6 9 25 AN5/IC8/CN7/RB5 AN4/IC7/CN6/RB4 11 DS70138G-page 7 ...

Page 8

... Pin Diagrams (Continued) (1) 44-Pin QFN U1RX/SDI1/SDA/RF2 U2TX/CN18/RF5 U2RX/CN17/RF4 C1TX/RF1 C1RX/RF0 EMUD2/OC2/RD1 10 EMUC2/OC1/RD0 AN12/COFS/RB12 11 Note 1: The metal plane at the bottom of the device is not connected to any pins and is recommended to be connected to V DS70138G-page OSC2/CLKO/RC15 2 32 OSC1/CLKI dsPIC30F4013 AN8/RB8 PGD/EMUD/AN7/RB7 8 26 PGC/EMUC/AN6/OCFA/RB6 9 25 ...

Page 9

... When contacting a sales office, please specify which device, revision of silicon and data sheet (include literature number) you are using. Customer Notification System Register on our web site at www.microchip.com  2010 Microchip Technology Inc. dsPIC30F3014/4013 to receive the most current information on all of our products. DS70138G-page 9 ...

Page 10

... NOTES: DS70138G-page 10  2010 Microchip Technology Inc. ...

Page 11

... This document contains specific information for the dsPIC30F3014/4013 Digital Signal Controller (DSC) devices. The dsPIC30F3014/4013 devices contain extensive Digital Signal Processor (DSP) functionality within a high-performance, 16-bit microcontroller (MCU) architecture. device block diagrams for dsPIC30F3014 and dsPIC30F4013, respectively. Manual” X Data Bus 16 16 ...

Page 12

... FIGURE 1-2: dsPIC30F4013 BLOCK DIAGRAM Y Data Bus Interrupt PSV & Table Controller Data Access 8 24 Control Block 24 24 PCU Program Counter Stack Address Latch Control Logic Program Memory (48 Kbytes) Data EEPROM (1 Kbyte) 16 Data Latch ROM Latch 24 16 Instruction Decode & ...

Page 13

... Schmitt Trigger input with CMOS levels I = Input  2010 Microchip Technology Inc. dsPIC30F3014/4013 Description Analog input channels. AN6 and AN7 are also used for device programming data and clock inputs, respectively. Positive supply for analog module. This pin must be connected at all times. ...

Page 14

... TABLE 1-1: PINOUT I/O DESCRIPTIONS (CONTINUED) Pin Buffer Pin Name Type Type RA11 I/O ST RB0-RB12 I/O ST RC13-RC15 I/O ST RD0-RD3, I/O ST RD8, RD9 RF0-RF5 I/O ST SCK1 I/O ST SDI1 I ST SDO1 O — SS1 I ST SCL I/O ST SDA I/O ST SOSCO O — SOSCI I ST/CMOS ...

Page 15

... Each data word consists of 2 bytes, and most instructions can address data either as words or bytes.  2010 Microchip Technology Inc. dsPIC30F3014/4013 There are two methods of accessing data stored in program memory: • The upper 32 Kbytes of data space memory can ...

Page 16

... The core does not support a multi-stage instruction pipeline. However, a single-stage instruction prefetch mechanism is used, which accesses and partially decodes instructions a cycle ahead of execution, in order to maximize available execution time. Most instructions execute in a single cycle with certain exceptions. The core features a vectored exception processing structure for traps and interrupts, with 62 independent vectors ...

Page 17

... AccA DSP Accumulators AccB PC22 0 7 TABPAG TBLPAG Data Table Page Address 7 0 PSVPAG PSVPAG OAB SAB DA SRH  2010 Microchip Technology Inc. dsPIC30F3014/4013 D15 D0 W0/WREG W10 W11 W12/DSP Offset W13/DSP Write-Back W14/Frame Pointer W15/Stack Pointer SPLIM AD31 AD15 PC0 0 Program Space Visibility Page Address ...

Page 18

... Divide Support The dsPIC DSC devices feature a 16/16-bit signed fractional divide operation, as well as 32/16-bit and 16/ 16-bit signed and unsigned integer divide operations, in the form of single instruction iterative divides. The following instructions and data sizes are supported: 1. DIVF – 16/16 signed fractional divide 2. DIV.sd – ...

Page 19

... ED, EDAC). (See Table 2-2 for DSP instructions.)  2010 Microchip Technology Inc. dsPIC30F3014/4013 The DSP engine has various options selected through various bits in the CPU Core Configuration register (CORCON), as listed below: 1. Fractional or integer DSP multiply (IF). ...

Page 20

... FIGURE 2-2: DSP ENGINE BLOCK DIAGRAM 40 Carry/Borrow Out Carry/Borrow In DS70138G-page 20 40-Bit Accumulator A 40-Bit Accumulator B Saturate Adder Negate Barrel 16 Shifter 40 Sign-Extend 17-Bit Multiplier/Scaler 16 16 To/From W Array Round u Logic Zero Backfill  2010 Microchip Technology Inc. ...

Page 21

... For the ADD and LAC instructions, the data to be accumulated or loaded can be optionally scaled via the barrel shifter prior to accumulation.  2010 Microchip Technology Inc. dsPIC30F3014/4013 2.4.2.1 Adder/Subtracter, Overflow and Saturation The adder/subtracter is a 40-bit adder with an optional zero input into one side and either true or complement data into the other input ...

Page 22

... The SA and SB bits are modified each time data passes through the adder/subtracter but can only be cleared by the user. When set, they indicate that the accumulator has overflowed its maximum range (bit 31 for 32-bit saturation or bit 39 for 40-bit saturation) and will be saturated if saturation is enabled. When ...

Page 23

... If the SATDW bit in the CORCON register is not set, the input data is always passed through unmodified under all conditions.  2010 Microchip Technology Inc. dsPIC30F3014/4013 2.4.3 BARREL SHIFTER The barrel shifter is capable of performing up to 16-bit arithmetic or logic right shifts 16-bit left shifts in a single cycle ...

Page 24

... NOTES: DS70138G-page 24  2010 Microchip Technology Inc. ...

Page 25

... Table 3-1. Note that the program space address is incremented by two between succes- sive program words in order to provide compatibility with data space addressing. FIGURE 3-1: dsPIC30F3014 PROGRAM SPACE MEMORY MAP Reset – GOTO Instruction Reset – Target Address Interrupt Vector Table Reserved ...

Page 26

... TABLE 3-1: PROGRAM SPACE ADDRESS CONSTRUCTION Access Access Type Space Instruction Access User User TBLRD/TBLWT (TBLPAG<7> Configuration TBLRD/TBLWT (TBLPAG<7> Program Space Visibility User FIGURE 3-3: DATA ACCESS FROM PROGRAM SPACE ADDRESS GENERATION Using Program 0 Counter Using Program 0 Space Visibility Using ...

Page 27

... Program Memory ‘Phantom’ Byte (read as ‘0’)  2010 Microchip Technology Inc. dsPIC30F3014/4013 A set of table instructions are provided to move byte or word-sized data to and from program space. (See Figure 3-4 and Figure 1. TBLRDL: Table Read Low Word: Read the lsw of the program address; ...

Page 28

... FIGURE 3-5: PROGRAM DATA TABLE ACCESS (MSB) PC Address 0x000000 00000000 0x000002 00000000 00000000 0x000004 0x000006 00000000 Program Memory ‘Phantom’ Byte (read as ‘0’) 3.1.2 DATA ACCESS FROM PROGRAM MEMORY USING PROGRAM SPACE VISIBILITY The upper 32 Kbytes of data space may optionally be mapped into any 16K word program space page ...

Page 29

... PSVPAG is an 8-bit register, containing bits<22:15> of the program space address (i.e., it defines the page in program space to which the upper half of data space is being mapped). The memory map shown here is for a dsPIC30F4013 device.  2010 Microchip Technology Inc. dsPIC30F3014/4013 Program Space 0x0000 (1) ...

Page 30

... Y data space. A key element of this architecture is that Y space is a subset of X space, and is fully contained within X space. In order to provide an apparent Linear Addressing space, X and Y spaces have contiguous addresses. FIGURE 3-7: dsPIC30F3014/dsPIC30F4013 DATA SPACE MEMORY MAP MSB Address 0x0001 2 Kbyte SFR Space ...

Page 31

... DATA SPACE FOR MCU AND DSP (MAC CLASS) INSTRUCTIONS EXAMPLE SFR SPACE (Y SPACE) Non-MAC Class Ops (Read/Write) MAC Class Ops (Write) Indirect EA using any W  2010 Microchip Technology Inc. dsPIC30F3014/4013 SFR SPACE UNUSED Y SPACE UNUSED UNUSED MAC Class Ops (Read) Indirect EA using W8, W9 ...

Page 32

... DATA SPACES The X data space is used by all instructions and sup- ports all addressing modes. There are separate read and write data buses. The X read data bus is the return data path for all instructions that view data space as combined X and Y address space also the X address space data path for the dual operand read instructions (MAC class) ...

Page 33

... A PC push during exception processing concatenates the SRL register to the MSB of the PC prior to the push.  2010 Microchip Technology Inc. dsPIC30F3014/4013 There is a Stack Pointer Limit register (SPLIM) associ- ated with the Stack Pointer. SPLIM is uninitialized at Reset the case for the Stack Pointer, SPLIM<0> ...

Page 34

TABLE 3-3: CORE REGISTER MAP Address SFR Name Bit 15 Bit 14 Bit 13 Bit 12 (Home) W0 0000 W1 0002 W2 0004 W3 0006 W4 0008 W5 000A W6 000C W7 000E W8 0010 W9 0012 W10 0014 ...

Page 35

TABLE 3-3: CORE REGISTER MAP (CONTINUED) Address SFR Name Bit 15 Bit 14 Bit 13 Bit 12 (Home) CORCON 0044 — — — US MODCON 0046 XMODEN YMODEN — XMODSRT 0048 XMODEND 004A YMODSRT 004C YMODEND 004E XBREV 0050 ...

Page 36

... NOTES: DS70138G-page 36  2010 Microchip Technology Inc. ...

Page 37

... Register Indirect Pre-Modified Register Indirect with Register Offset The sum of Wn and Wb forms the EA. Register Indirect with Literal Offset  2010 Microchip Technology Inc. dsPIC30F3014/4013 4.1.1 FILE REGISTER INSTRUCTIONS Most file register instructions use a 13-bit address field (f) to directly address data present in the first 8192 bytes of data memory (near data space) ...

Page 38

... MOVE AND ACCUMULATOR INSTRUCTIONS Move instructions and the DSP accumulator class of instructions provide a greater degree of addressing flexibility than other instructions. In addition to the addressing modes supported by most MCU instruc- tions, move and accumulator instructions also support Register Indirect with Register Offset Addressing mode, also referred to as Register Indexed mode ...

Page 39

... Address 0x0800 0x0863 Start Addr = 0x0800 End Addr = 0x0863 Length = 0x0032 words  2010 Microchip Technology Inc. dsPIC30F3014/4013 4.2.2 W ADDRESS REGISTER SELECTION The Modulo and Bit-Reversed Addressing Control reg- registers: ister MODCON<15:0> contains enable flags as well register field to specify the W address registers. ...

Page 40

... MODULO ADDRESSING APPLICABILITY Modulo Addressing can be applied to the Effective Address (EA) calculation associated with any W register important to realize that the address boundaries check for addresses less than or greater than the upper (for incrementing buffers) and lower (for decrementing buffers) boundary addresses (not just equal to) ...

Page 41

... TABLE 4-2: BIT-REVERSED ADDRESS SEQUENCE (16-ENTRY) Normal Address TABLE 4-3: BIT-REVERSED ADDRESS MODIFIER VALUES FOR XBREV REGISTER Buffer Size (Words) 1024 512 256 128  2010 Microchip Technology Inc. dsPIC30F3014/4013 Bit-Reversed Address Decimal XB<14:0> Bit-Reversed Address Modifier Value A0 Decimal 0x0200 0x0100 ...

Page 42

... NOTES: DS70138G-page 42  2010 Microchip Technology Inc. ...

Page 43

... Addressing Using Table Instruction User/Configuration Space Select  2010 Microchip Technology Inc. dsPIC30F3014/4013 5.2 Run-Time Self-Programming (RTSP) RTSP is accomplished using TBLRD (table read) and TBLWT (table write) instructions. With RTSP, the user may erase program memory, 32 instructions (96 bytes time and can write program memory data, 32 instructions (96 bytes time ...

Page 44

... RTSP Operation The dsPIC30F Flash program memory is organized into rows and panels. Each row consists of 32 instruc- tions or 96 bytes. Each panel consists of 128 rows instructions. RTSP allows the user to erase one row (32 instructions time and to program four instructions at one time. RTSP may be used to program multiple program memory panels, but the Table Pointer must be changed at each panel boundary ...

Page 45

... MOV W1 NVMKEY , BSET NVMCON,#WR NOP NOP  2010 Microchip Technology Inc. dsPIC30F3014/4013 4. Write 32 instruction words of data from data RAM “image” into the program Flash write latches. 5. Program 32 instruction words into program Flash. a) Set up NVMCON register for multi-word, program Flash, program, and set WREN bit ...

Page 46

... LOADING WRITE LATCHES Example 5-2 shows a sequence of instructions that can be used to load the 96 bytes of write latches. 32 TBLWTL and 32 TBLWTH instructions are needed to load the write latches selected by the Table Pointer. EXAMPLE 5-2: LOADING WRITE LATCHES ; Set up a pointer to the first program memory location to be written ...

Page 47

TABLE 5-1: NVM REGISTER MAP File Name Addr. Bit 15 Bit 14 Bit 13 Bit 12 Bit 11 Bit 10 Bit 9 NVMCON 0760 WR WREN WRERR NVMADR 0762 NVMADRU 0764 — — — NVMKEY 0766 — — — ...

Page 48

... NOTES: DS70138G-page 48  2010 Microchip Technology Inc. ...

Page 49

... Microchip Technology Inc. dsPIC30F3014/4013 A program or erase operation on the data EEPROM does not stop the instruction flow. The user is respon- sible for waiting for the appropriate duration of time before initiating another data EEPROM write/erase operation ...

Page 50

... Erasing Data EEPROM 6.2.1 ERASING A BLOCK OF DATA EEPROM In order to erase a block of data EEPROM, the NVMADRU and NVMADR registers must initially point to the block of memory to be erased. Configure NVMCON for erasing a block of data EEPROM and set the WR and WREN bits in the NVMCON register. ...

Page 51

... Write cycle will complete in 2mS. CPU is not stalled for the Data Write Cycle ; User can poll WR bit, use NVMIF or Timer IRQ to determine write complete  2010 Microchip Technology Inc. dsPIC30F3014/4013 The write does not initiate if the above sequence is not exactly followed (write 0x55 to NVMKEY, write 0xAA to NVMCON, then set WR bit) for each word ...

Page 52

... EXAMPLE 6-5: DATA EEPROM BLOCK WRITE MOV #LOW_ADDR_WORD,W0 MOV #HIGH_ADDR_WORD,W1 MOV W1 TBLPAG , MOV #data1,W2 TBLWTL W2 [ W0]++ , MOV #data2,W2 TBLWTL W2 [ W0]++ , MOV #data3,W2 TBLWTL W2 [ W0]++ , MOV #data4,W2 TBLWTL W2 [ W0]++ , MOV #data5,W2 TBLWTL W2 [ W0]++ , MOV #data6,W2 TBLWTL W2 [ W0]++ , MOV #data7,W2 TBLWTL W2 [ W0]++ ...

Page 53

... WR PORT Read LAT Read PORT  2010 Microchip Technology Inc. dsPIC30F3014/4013 Reads from the latch (LATx), read the latch. Writes to the latch, write the latch (LATx). Reads from the port (PORTx), read the port pins and writes to the port pins, write the latch (LATx). ...

Page 54

... FIGURE 7-2: BLOCK DIAGRAM OF A SHARED PORT STRUCTURE Peripheral Module Peripheral Input Data Peripheral Module Enable Peripheral Output Enable Peripheral Output Data PIO Module Read TRIS Data Bus WR TRIS TRIS Latch WR LAT + WR PORT Data Latch Read LAT Read PORT 7.2 ...

Page 55

... TABLE 7-1: dsPIC30F3014/4013 PORT REGISTER MAP SFR Name Addr. Bit 15 Bit 14 Bit 13 Bit 12 TRISA 02C0 — — — — PORTA 02C2 — — — — LATA 02C4 — — — — TRISB 02C6 — — — TRISB12 TRISB11 TRISB10 TRISB9 TRISB8 TRISB7 TRISB6 TRISB5 TRISB4 TRISB3 TRISB2 TRISB1 TRISB0 0001 1111 1111 1111 ...

Page 56

... Input Change Notification Module The input change notification module provides the dsPIC30F devices the ability to generate interrupt requests to the processor, in response to a Change-Of- State (COS) on selected input pins. This module is capable of detecting input Change-Of-States, even in Sleep mode, when the clocks are disabled. There are ...

Page 57

... TABLE 7-2: INPUT CHANGE NOTIFICATION REGISTER MAP FOR dsPIC30F3014/4013 DEVICES (BITS 15-0) SFR Addr. Bit 15 Bit 14 Bit 13 Bit 12 Bit 11 Name CNEN1 00C0 — — — — — CNEN2 00C2 — — — — — CNPU1 00C4 — — — — — ...

Page 58

... NOTES: DS70138G-page 58  2010 Microchip Technology Inc. ...

Page 59

... IPL bits. IPL<3> is present in the CORCON register, whereas IPL<2:0> are present in the STATUS register (SR) in the processor core.  2010 Microchip Technology Inc. dsPIC30F3014/4013 • INTCON1<15:0>, INTCON2<15:0> Global interrupt control functions are derived from these two registers. INTCON1 contains the con- trol and status flags for the processor exceptions ...

Page 60

... Table 8-1 and Table 8-2 list the interrupt numbers, corresponding interrupt sources and associated vector numbers for the dsPIC30F3014 and dsPIC30F4013 devices, respectively. Note 1: The natural order priority scheme has 0 as the highest priority and 53 as the lowest priority. 2: The natural order priority number is the same as the INT number ...

Page 61

... LVD – Low-Voltage Detect 43-53 51-61 Reserved Lowest Natural Order Priority  2010 Microchip Technology Inc. dsPIC30F3014/4013 8.2 Reset Sequence A Reset is not a true exception because the interrupt controller is not involved in the Reset process. The pro- cessor initializes its registers in response to a Reset which forces the PC to zero ...

Page 62

... Traps Traps can be considered as non-maskable interrupts, indicating a software or hardware error, which adhere to a predefined priority as shown in Figure are intended to provide the user a means to correct erroneous operation during debug and when operating within the application. Note: If the user does not intend to take correc- ...

Page 63

... Interrupt 52 Vector Interrupt 53 Vector  2010 Microchip Technology Inc. dsPIC30F3014/4013 8.4 Interrupt Sequence All interrupt event flags are sampled in the beginning of each instruction cycle by the IFSx registers. A pending Interrupt Request (IRQ) is indicated by the flag bit being equal to a ‘1’ IFSx register. The IRQ causes an interrupt to occur if the corresponding bit in the Inter- rupt Enable (IECx) register is set ...

Page 64

... Alternate Vector Table In program memory, the Interrupt Vector Table (IVT) is followed by the Alternate Interrupt Vector Table (AIVT), as shown in Figure 8-1. Access to the alternate vector table is provided by the ALTIVT bit in the INTCON2 reg- ister. If the ALTIVT bit is set, all interrupt and exception processes use the alternate vectors instead of the default vectors ...

Page 65

... TABLE 8-3: dsPIC30F3014 INTERRUPT CONTROLLER REGISTER MAP SFR ADR Bit 15 Bit 14 Bit 13 Bit 12 Bit 11 Name INTCON1 0080 NSTDIS — — — — INTCON2 0082 ALTIVT DISI — — — IFS0 0084 CNIF MI2CIF SI2CIF NVMIF ADIF IFS1 0086 — — — ...

Page 66

TABLE 8-4: dsPIC30F4013 INTERRUPT CONTROLLER REGISTER MAP SFR ADR Bit 15 Bit 14 Bit 13 Bit 12 Bit 11 Name INTCON1 0080 NSTDIS — — — — INTCON2 0082 ALTIVT DISI — — — IFS0 0084 CNIF MI2CIF SI2CIF NVMIF ...

Page 67

... SOSCO/ T1CK LPOSCEN SOSCI  2010 Microchip Technology Inc. dsPIC30F3014/4013 These operating modes are determined by setting the appropriate bit(s) in the 16-bit SFR, T1CON. presents a block diagram of the 16-bit timer module. 16-Bit Timer Mode: In the 16-Bit Timer mode, the timer increments on every instruction cycle match value preloaded into the Period register, PR1, then resets to ‘ ...

Page 68

... Timer Gate Operation The 16-bit timer can be placed in the Gated Time Accu- mulation mode. This mode allows the internal T increment the respective timer when the gate input sig- nal (T1CK pin) is asserted high. Control bit, TGATE (T1CON<6>), must be set to enable this mode. The timer must be enabled (TON = 1) and the timer clock source set to internal (TCS = 0) ...

Page 69

... TABLE 9-1: dsPIC30F3014/4013 TIMER1 REGISTER MAP SFR Name Addr. Bit 15 Bit 14 Bit 13 Bit 12 TMR1 0100 PR1 0102 T1CON 0104 TON — TSIDL — Legend uninitialized bit; — = unimplemented bit, read as ‘0’ Note 1: Refer to the “dsPIC30F Family Reference Manual” (DS70046) for descriptions of register bit fields. ...

Page 70

... NOTES: DS70138G-page 70  2010 Microchip Technology Inc. ...

Page 71

... These operating modes are determined by setting the appropriate bit(s) in the 16-bit T2CON and T3CON SFRs.  2010 Microchip Technology Inc. dsPIC30F3014/4013 For 32-bit timer/counter operation, Timer2 is the lsw and Timer3 is the msw of the 32-bit timer. Note: For 32-bit timer operation, T3CON control bits are ignored ...

Page 72

... FIGURE 10-1: 32-BIT TIMER2/3 BLOCK DIAGRAM Data Bus<15:0> TMR3HLD Write TMR2 Read TMR2 16 Reset ADC Event Trigger Equal 0 T3IF Event Flag 1 TGATE (T2CON<6>) T2CK Note: Timer Configuration bit, T32 (T2CON<3>), must be set to ‘1’ for a 32-bit timer/counter operation. All control bits are respective to the T2CON register ...

Page 73

... ADC Event Trigger Equal Reset 0 T3IF Event Flag 1 TGATE T3CK Note: T3CK pin does not exist on dsPIC30F3014/4013 devices. The block diagram shown here illustrates the schematic of Timer3 as implemented on the dsPIC30F6014 device.  2010 Microchip Technology Inc. dsPIC30F3014/4013 PR2 Comparator x 16 TMR2 TGATE Q D ...

Page 74

... Timer Gate Operation The 32-bit timer can be placed in the Gated Time Accu- mulation mode. This mode allows the internal T increment the respective timer when the gate input signal (T2CK pin) is asserted high. Control bit, TGATE (T2CON<6>), must be set to enable this mode. When in this mode, Timer2 is the originating clock source ...

Page 75

... TABLE 10-1: dsPIC30F3014/4013 TIMER2/3 REGISTER MAP SFR Name Addr. Bit 15 Bit 14 Bit 13 Bit 12 Bit 11 TMR2 0106 TMR3HLD 0108 TMR3 010A PR2 010C PR3 010E T2CON 0110 TON — TSIDL — T3CON 0112 TON — TSIDL — Legend uninitialized bit; — = unimplemented bit, read as ‘0’ ...

Page 76

... NOTES: DS70138G-page 76  2010 Microchip Technology Inc. ...

Page 77

... T4CK Note: Timer Configuration bit, T32 (T4CON<3>), must be set to ‘1’ for a 32-bit timer/counter operation. All control bits are respective to the T4CON register.  2010 Microchip Technology Inc. dsPIC30F3014/4013 The Timer4/5 module is similar in operation to the Timer2/3 module. differences: • The Timer4/5 module does not support the ADC event trigger feature • ...

Page 78

... ADC Event Trigger Equal Reset 0 T5IF Event Flag 1 TGATE T5CK Note: In the dsPIC30F3014 device, there is no T5CK pin. Therefore, in this device the following modes should not be used for Timer5: 2: TCS = 1 (16-bit counter) 3: TCS = 0, TGATE = 1 (gated time accumulation) DS70138G-page 78 PR4 Comparator x 16 TMR4 TGATE Q ...

Page 79

TABLE 11-1: dsPIC30F4013 TIMER4/5 REGISTER MAP SFR Name Addr. Bit 15 Bit 14 Bit 13 Bit 12 TMR4 0114 TMR5HLD 0116 TMR5 0118 PR4 011A PR5 011C T4CON 011E TON — TSIDL — T5CON 0120 TON — TSIDL — Legend: ...

Page 80

... NOTES: DS70138G-page 80  2010 Microchip Technology Inc. ...

Page 81

... These operating modes are determined by setting the appropriate bits in the ICxCON register (where x = 1,2,...,N). The dsPIC DSC devices contain capture channels (i.e., the maximum value 8). The dsPIC30F3014 device contains 2 capture channels while the dsPIC30F4013 device contains 4 capture channels. 12.1 Simple Capture Event Mode ...

Page 82

... CAPTURE BUFFER OPERATION Each capture channel has an associated FIFO buffer which is four 16-bit words deep. There are two status flags which provide status on the FIFO buffer: • ICBNE – Input Capture Buffer Not Empty • ICOV – Input Capture Overflow ...

Page 83

... TABLE 12-1: INPUT CAPTURE REGISTER MAP SFR Name Addr. Bit 15 Bit 14 Bit 13 Bit 12 IC1BUF 0140 IC1CON 0142 — — ICSIDL — IC2BUF 0144 IC2CON 0146 — — ICSIDL — Legend uninitialized bit; — = unimplemented bit, read as ‘0’ Note 1: Refer to the “dsPIC30F Family Reference Manual” (DS70046) for descriptions of register bit fields. ...

Page 84

... NOTES: DS70138G-page 84  2010 Microchip Technology Inc. ...

Page 85

... These operating modes are determined by setting the appropriate bits in the 16-bit OCxCON SFR (where x = 1,2,3,...,N). The dsPIC DSC devices contain compare channels (i.e., the maximum value 8). The dsPIC30F3014 device contains 2 compare channels while the dsPIC30F4013 device contains 4 compare channels. OCxRS and OCxR in Compare registers ...

Page 86

... Simple Output Compare Match Mode When control bits, OCM<2:0> (OCxCON<2:0>) = 001, 010 or 011, the selected output compare channel is configured for one of three simple Output Compare Match modes: • Compare forces I/O pin low • Compare forces I/O pin high • ...

Page 87

... Figure 13-2 for clarity. FIGURE 13-2: PWM OUTPUT TIMING Duty Cycle TMR3 = PR3 T3IF = 1 (Interrupt Flag) OCxR = OCxRS  2010 Microchip Technology Inc. dsPIC30F3014/4013 • OSC Period TMR3 = PR3 T3IF = 1 (Interrupt Flag) OCxR = OCxRS TMR3 = Duty Cycle TMR3 = Duty Cycle (OCxR) ...

Page 88

... Output Compare Operation During CPU Sleep Mode When the CPU enters Sleep mode, all internal clocks are stopped. Therefore, when the CPU enters the Sleep state, the output compare channel drives the pin to the active state that was observed prior to entering the CPU Sleep state ...

Page 89

... TABLE 13-1: dsPIC30F3014 OUTPUT COMPARE REGISTER MAP SFR Name Addr. Bit 15 Bit 14 Bit 13 Bit 12 Bit 11 OC1RS 0180 OC1R 0182 OC1CON 0184 — — OCSIDL — OC2RS 0186 OC2R 0188 OC2CON 018A — — OCSIDL — Legend: — = unimplemented bit, read as ‘0’ ...

Page 90

... NOTES: DS70138G-page 90  2010 Microchip Technology Inc. ...

Page 91

... Thus, the I C module can operate either as a slave master bus. FIGURE 14-1: PROGRAMMER’S MODEL Bit 15 Bit 15  2010 Microchip Technology Inc. dsPIC30F3014/4013 14.1.1 VARIOUS I The following types • slave operation with 7-bit addressing 2 • slave operation with 10-bit addressing 2 • ...

Page 92

... FIGURE 14-2: I C™ BLOCK DIAGRAM Shift SCL Clock SDA Match Detect Stop bit Detect Stop bit Generate Shift Clock DS70138G-page 92 I2CRCV I2CRSR LSB Addr_Match I2CADD Start and Start, Restart, Collision Detect Acknowledge Generation Clock Stretching I2CTRN LSB Reload Control ...

Page 93

... SCL high. The interrupt pulse is sent on the falling edge of the ninth clock pulse, regardless of the status of the ACK received from the master.  2010 Microchip Technology Inc. dsPIC30F3014/4013 14.3.2 SLAVE RECEPTION If the R_W bit received is a ‘0’ during an address match, then Receive mode is initiated ...

Page 94

... MODE SLAVE RECEPTION Once addressed, the master can generate a Repeated Start, reset the high byte of the address and set the R_W bit without generating a Stop bit, thus initiating a slave transmit operation. 14.5 Automatic Clock Stretch In the Slave modes, the module can synchronize buffer reads and write to the master device by clock stretching ...

Page 95

... When the interrupt is serviced, the source for the interrupt can be checked by reading the contents of the I2CRCV to determine if the address was device-specific or a general call address.  2010 Microchip Technology Inc. dsPIC30F3014/4013 2 14. Master Support As a master device, six operations are supported: ...

Page 96

... I C MASTER RECEPTION Master mode reception is enabled by programming the Receive Enable bit, RCEN (I2CCON<3>). The I module must be Idle before the RCEN bit is set; other- wise, the RCEN bit is disregarded. The Baud Rate Generator begins counting and on each rollover, the state of the SCL pin ACK and data are shifted into the I2CRSR on the rising edge of each clock ...

Page 97

... TABLE 14-2: dsPIC30F3014/4013 I C REGISTER MAP SFR Name Addr. Bit 15 Bit 14 Bit 13 Bit 12 I2CRCV 0200 — — — — I2CTRN 0202 — — — — I2CBRG 0204 — — — — I2CCON 0206 I2CEN — I2CSIDL SCLREL IPMIEN I2CSTAT 0208 ACKSTAT TRSTAT — ...

Page 98

... NOTES: DS70138G-page 98  2010 Microchip Technology Inc. ...

Page 99

... SCL transitions while SPIROV is ‘1’, effectively disabling the module until SPIxBUF is read by user software.  2010 Microchip Technology Inc. dsPIC30F3014/4013 Transmit writes are also double-buffered. The user writes to SPIxBUF. When the master or slave transfer is completed, the contents of the shift register (SPIxSR) are moved to the receive buffer ...

Page 100

... Framed SPI Support The module supports a basic framed SPI protocol in Master or Slave mode. The control bit, FRMEN, enables framed SPI support and causes the SSx pin to perform the Frame Synchronization pulse (FSYNC) function. The control bit, SPIFSD, determines whether ...

Page 101

... The transmitter and receiver stop in Sleep mode. However, register contents are not affected by entering or exiting Sleep mode.  2010 Microchip Technology Inc. dsPIC30F3014/4013 15.5 SPI Operation During CPU Idle Mode When the device enters Idle mode, all clock sources remain functional. The SPISIDL bit (SPIxSTAT<13>) determines if the SPI module stops or continues on Idle ...

Page 102

... TABLE 15-1: dsPIC30F3014/4013 SPI1 REGISTER MAP SFR Addr. Bit 15 Bit 14 Bit 13 Bit 12 Bit 11 Name SPI1STAT 0220 SPIEN — SPISIDL — SPI1CON 0222 — FRMEN SPIFSD — DISSDO MODE16 SPI1BUF 0224 Legend: — = unimplemented bit, read as ‘0’ Note 1: Refer to the “dsPIC30F Family Reference Manual” (DS70046) for descriptions of register bit fields. ...

Page 103

... UxTX or UxATX if ALTIO = 1 Parity Note  2010 Microchip Technology Inc. dsPIC30F3014/4013 16.1 UART Module Overview The key features of the UART module are: • Full-duplex 9-bit data communication • Even, odd or no parity options (for 8-bit data) • One or two Stop bits • ...

Page 104

... FIGURE 16-2: UART RECEIVER BLOCK DIAGRAM LPBACK From UxTX 1 0 UxRX · Start bit Detect or UxARX · Parity Check · Stop bit Detect if ALTIO = 1 · Shift Clock Generation · Wake Logic DS70138G-page 104 Internal Data Bus 16 Write Read URX8 UxRXREG Low Byte ...

Page 105

... The STSEL bit determines whether one or two Stop bits are used during data transmission. The default (power-on) setting of the UART is 8 bits, no parity and 1 Stop bit (typically represented 1).  2010 Microchip Technology Inc. dsPIC30F3014/4013 16.3 Transmitting Data 16.3.1 TRANSMITTING IN 8-BIT DATA ...

Page 106

... TRANSMIT INTERRUPT The transmit interrupt flag (U1TXIF or U2TXIF) is located in the corresponding interrupt flag register. The transmitter generates an edge to set the UxTXIF bit. The condition for generating the interrupt depends on the UTXISEL control bit UTXISEL = 0, an interrupt is generated when a word is transferred from the transmit buffer to the Transmit Shift register (UxTSR) ...

Page 107

... No further reception can occur until a Stop bit is received. Note that RIDLE goes high when the Stop bit has not yet been received.  2010 Microchip Technology Inc. dsPIC30F3014/4013 16.6 Address Detect Mode Setting the ADDEN bit (UxSTA<5>) enables this special mode in which a 9th bit (URX8) value of ‘ ...

Page 108

... Auto-Baud Support To allow the system to determine baud rates of received characters, the input can be optionally linked to a capture input (IC1 for UART1, IC2 for UART2). To enable this mode, the user must program the input capture module to detect the falling and rising edges of the Start bit ...

Page 109

... U1BRG 0214 Legend uninitialized bit; — = unimplemented bit, read as ‘0’ Note 1: Refer to the “dsPIC30F Family Reference Manual” (DS70046) for descriptions of register bit fields. TABLE 16-2: dsPIC30F3014/4013 UART2 REGISTER MAP SFR Addr. Bit 15 Bit 14 Bit 13 Bit 12 Bit 11 Name U2MODE ...

Page 110

... NOTES: DS70138G-page 110  2010 Microchip Technology Inc. ...

Page 111

... CAN1 and CAN2) for time-stamping and network synchronization • Low-power Sleep and Idle mode  2010 Microchip Technology Inc. dsPIC30F3014/4013 The CAN bus module consists of a protocol engine and message buffering/control. The CAN protocol engine handles all functions for receiving and transmitting messages on the CAN bus ...

Page 112

... FIGURE 17-1: CAN BUFFERS AND PROTOCOL ENGINE BLOCK DIAGRAM BUFFERS (2) (2) TXB0 TXB1 Message Queue Control Transmit Byte Sequencer PROTOCOL ENGINE Transmit Logic (1) CiTX Note refers to a particular CAN module (CAN1 or CAN2). 2: These are conceptual groups of registers, not SFR names by themselves. ...

Page 113

... Module Disable mode. The I/O pins revert to normal I/O function when the module is in the Module Disable mode.  2010 Microchip Technology Inc. dsPIC30F3014/4013 The module can be programmed to apply a low-pass filter function to the CiRX input line while the module or the CPU is in Sleep mode. The WAKFIL bit (CiCFG2< ...

Page 114

... Message Reception 17.4.1 RECEIVE BUFFERS The CAN bus module has 3 receive buffers. However, one of the receive buffers is always committed to mon- itoring the bus for incoming messages. This buffer is called the Message Assembly Buffer (MAB). So there are 2 receive buffers visible, denoted as RXB0 and RXB1, that can essentially instantaneously receive a complete message from the protocol engine ...

Page 115

... SOF occurs. When TXREQ is set, the TXABT (CiTXnCON<6>), TXLARB (CiTXnCON<5>) and TXERR (CiTXnCON<4>) flag bits are automatically cleared.  2010 Microchip Technology Inc. dsPIC30F3014/4013 Setting TXREQ bit simply flags a message buffer as enqueued for transmission. When the module detects an available bus, it begins transmitting the message which has been determined to have the highest priority ...

Page 116

... TRANSMIT INTERRUPTS Transmit interrupts can be divided into 2 major groups, each including various conditions that generate interrupts: • Transmit Interrupt: At least one of the three transmit buffers is empty (not scheduled) and can be loaded to schedule a message for transmission. The TXnIF flags are read to determine which transmit buffer is available and caused the interrupt ...

Page 117

... The following requirement must be fulfilled while setting the lengths of the phase segments: Prop Seg + Phase1 Seg > = Phase2 Seg  2010 Microchip Technology Inc. dsPIC30F3014/4013 17.6.5 SAMPLE POINT The sample point is the point of time at which the bus level is read and interpreted as the value of that respec fixed tive bit ...

Page 118

TABLE 17-1: dsPIC30F4013 CAN1 REGISTER MAP SFR Name Addr. Bit 15 Bit 14 Bit 13 Bit 12 C1RXF0SID 0300 — — — C1RXF0EIDH 0302 — — — — C1RXF0EIDL 0304 Receive Acceptance Filter 0 Extended Identifier<5:0> C1RXF1SID 0308 — — ...

Page 119

TABLE 17-1: dsPIC30F4013 CAN1 REGISTER MAP SFR Name Addr. Bit 15 Bit 14 Bit 13 Bit 12 C1TX1B1 0356 Transmit Buffer 1 Byte 1 C1TX1B2 0358 Transmit Buffer 1 Byte 3 C1TX1B3 035A Transmit Buffer 1 Byte 5 C1TX1B4 035C ...

Page 120

... NOTES: DS70138G-page 120  2010 Microchip Technology Inc. ...

Page 121

... CSDOM control bit. This allows other devices to place data on the serial bus during transmission periods not used by the DCI module.  2010 Microchip Technology Inc. dsPIC30F3014/4013 18.2.3 CSDI PIN The serial data input (CSDI) pin is configured as an input only pin when the module is enabled. ...

Page 122

... FIGURE 18-1: DCI MODULE BLOCK DIAGRAM F OSC Word-Size Selection bits Frame Length Selection bits DCI Mode Selection bits Receive Buffer Registers w/Shadow Transmit Buffer Registers w/Shadow DS70138G-page 122 BCG Control bits Sample Rate /4 Generator Frame Synchronization Generator DCI Buffer Control Unit ...

Page 123

... EQUATION 18-1: COFSG PERIOD Frame Length = Word Length • (FSG Value + 1)  2010 Microchip Technology Inc. dsPIC30F3014/4013 Frame lengths data words, may be selected. The frame length in CSCK periods can vary maximum of 256 depending on the word size that is selected. ...

Page 124

... Frame Sync generator control bits. A new I data transfer boundary is marked by a high-to-low or a low-to-high transition edge on the COFS pin. 18.3.6 SLAVE FRAME SYNC OPERATION When the DCI module is operating as a Frame Sync slave (COFSD = 1), data transfers are controlled by the Codec device attached to the DCI module ...

Page 125

... When the CSCK signal is applied externally (CSCKD = 1), the external clock high and low times must meet the device timing requirements.  2010 Microchip Technology Inc. dsPIC30F3014/4013 EQUATION 18-2: The required bit clock frequency is determined by the system sampling rate and frame size. Typical bit clock ...

Page 126

... SAMPLE CLOCK EDGE CONTROL BIT The sample clock edge (CSCKE) control bit determines the sampling edge for the CSCK signal. If the CSCK bit is cleared (default), data is sampled on the falling edge of the CSCK signal. The AC-Link protocols and most multichannel formats require that data be sampled on the falling edge of the CSCK signal ...

Page 127

... DCI module.  2010 Microchip Technology Inc. dsPIC30F3014/4013 18.3.16 TRANSMIT STATUS BITS There are two transmit status bits in the DCISTAT SFR. The TMPTY bit is set when the contents of the transmit buffer registers are transferred to the transmit shadow registers ...

Page 128

... SLOT STATUS BITS The SLOT<3:0> status bits in the DCISTAT SFR indi- cate the current active time slot. These bits correspond to the value of the Frame Sync generator counter. The user may poll these status bits in software when a DCI interrupt occurs to determine what time slot data was last received and which time slot data should be loaded into the TXBUF registers ...

Page 129

... Synchronization signal marks the boundary of a new data word transfer. The user must also select the frame length and data word size using the COFSG and WS control bits in the DCICON2 SFR.  2010 Microchip Technology Inc. dsPIC30F3014/4013 2 18.7 FRAME AND DATA WORD LENGTH SELECTION ...

Page 130

... TABLE 18-2: dsPIC30F3014/4013 DCI REGISTER MAP SFR Name Addr. Bit 15 Bit 14 Bit 13 Bit 12 DCICON1 0240 DCIEN — DCISIDL — DCICON2 0242 — — — — DCICON3 0244 — — — — DCISTAT 0246 — — — — TSCON 0248 TSE15 TSE14 ...

Page 131

... The ADCHS, ADPCFG and ADCSSL registers allow the application to configure AN13-AN15 as analog input pins. Since these pins are not physically present on the device, conversion results from these pins will read ‘0’.  2010 Microchip Technology Inc. dsPIC30F3014/4013 The A/D module has six 16-bit registers: • A/D Control Register 1 (ADCON1) • ...

Page 132

... A/D Result Buffer The module contains a 16-word, dual port read-only buffer, called ADCBUF0...ADCBUFF, to buffer the A/D results. The RAM is 12 bits wide but the data obtained is represented in one of four different 16-bit data for- mats. The contents of the sixteen A/D Conversion Result Buffer registers, ADCBUF0 through ADCBUFF, cannot be written by user software ...

Page 133

... EQUATION 19-1: ADC CONVERSION CLOCK (0.5*(ADCS<5:0>  2010 Microchip Technology Inc. dsPIC30F3014/4013 The internal RC oscillator is selected by setting the ADRC bit. For correct ADC conversions, the ADC conversion clock (T ) must be selected to ensure a minimum T AD time of 334 nsec (for V “Electrical Characteristics” ...

Page 134

... ADC Speeds The dsPIC30F 12-bit ADC specifications permit a maximum of 200 ksps sampling rate. The table below summarizes the conversion speeds for the dsPIC30F 12-bit ADC and the required operating conditions. TABLE 19-1: 12-BIT ADC EXTENDED CONVERSION RATES dsPIC30F 12-Bit ADC Conversion Rates ...

Page 135

... Figure 19-2 depicts the recommended circuit for the conversion rates above 200 ksps. The dsPIC30F3014 is shown as an example. FIGURE 19-2: ADC VOLTAGE REFERENCE SCHEMATIC 0.1 F 0.01 F Note 1: Ensure adequate bypass capacitors are provided on each V The configuration procedures below give the required setup values for the conversion speeds above 100 ksps ...

Page 136

... FIGURE 19-3: CONVERTING 1 CHANNEL AT 200 ksps, AUTO-SAMPLE START SAMPLING TIME T SAMP = ADCLK SAMP DONE ADCBUF0 ADCBUF1 Instruction Execution BSET ADCON1, ASAM 19.8 A/D Acquisition Requirements The analog input model of the 12-bit A/D converter is shown in Figure 19-4. The total sampling time for the A function of the internal amplifier settling time and the holding capacitor charge time ...

Page 137

... Integer 0  2010 Microchip Technology Inc. dsPIC30F3014/4013 If the A/D interrupt is enabled, the device wakes up from Sleep. If the A/D interrupt is not enabled, the A/D module is then turned off, although the ADON bit remains set ...

Page 138

... Configuring Analog Port Pins The use of the ADPCFG and TRIS registers control the operation of the A/D port pins. The port pins that are desired as analog inputs must have their correspond- ing TRIS bit set (input). If the TRIS bit is cleared (output), the digital output level (V converted ...

Page 139

TABLE 19-2: A/D CONVERTER REGISTER MAP SFR Addr. Bit 15 Bit 14 Bit 13 Bit 12 Name ADCBUF0 0280 — — — — ADCBUF1 0282 — — — — ADCBUF2 0284 — — — — ADCBUF3 0286 — — — ...

Page 140

... NOTES: DS70138G-page 140  2010 Microchip Technology Inc. ...

Page 141

... In the Idle mode, the clock sources are still active but the CPU is shut off. The RC oscillator option saves system cost while the LP crystal option saves power.  2010 Microchip Technology Inc. dsPIC30F3014/4013 20.1 Oscillator System Overview The dsPIC30F oscillator system has the following modules and features: • ...

Page 142

... TABLE 20-1: OSCILLATOR OPERATING MODES Oscillator Mode XTL 400 kHz-4 MHz crystal on OSC1:OSC2 XT 4 MHz-10 MHz crystal on OSC1:OSC2 XT w/PLL 4x 4 MHz-10 MHz crystal on OSC1:OSC2, 4x PLL enabled XT w/PLL 8x 4 MHz-10 MHz crystal on OSC1:OSC2, 8x PLL enabled XT w/PLL 16x 4 MHz-7.5 MHz crystal on OSC1:OSC2, 16x PLL enabled ...

Page 143

... FIGURE 20-1: OSCILLATOR SYSTEM BLOCK DIAGRAM OSC1 Primary Oscillator OSC2 POR Done SOSCO 32 kHz LP Oscillator SOSCI  2010 Microchip Technology Inc. dsPIC30F3014/4013 F PLL PLL x4, x8, x16 PLL Lock Primary Osc Primary Oscillator Stability Detector Oscillator Start-up Timer Clock Switching Secondary Osc ...

Page 144

... Oscillator Configurations 20.2.1 INITIAL CLOCK SOURCE SELECTION While coming out of Power-on Reset or Brown-out Reset, the device selects its clock source based on: a) FOS<2:0> Configuration bits that select one of four oscillator groups, b) and FPR<4:0> Configuration bits that select one of 13 oscillator choices within the primary group. ...

Page 145

... The tuning step size is an approximation and is neither characterized nor tested.  2010 Microchip Technology Inc. dsPIC30F3014/4013 If OSCCON<14:12> are set to ‘111’ and FPR<4:0> are set to ‘00101’, ‘00110’ or ‘00111’, then a PLL multiplier (respectively) is applied. ...

Page 146

... FAIL-SAFE CLOCK MONITOR The Fail-Safe Clock Monitor (FSCM) allows the device to continue to operate even in the event of an oscillator failure. The FSCM function is enabled by appropriately programming the FCKSM Configuration bits (clock switch and monitor selection bits) in the FOSC Device Configuration register. If the FSCM function is enabled, ...

Page 147

... Set to FOS<2:0> values on POR or BOR. bit 7-6 POST<1:0>: Oscillator Postscaler Selection bits 11 = Oscillator postscaler divides clock Oscillator postscaler divides clock Oscillator postscaler divides clock Oscillator postscaler does not alter clock  2010 Microchip Technology Inc. dsPIC30F3014/4013 only to the dsPIC30F4013 R-y U-0 — ...

Page 148

... REGISTER 20-1: OSCCON: OSCILLATOR CONTROL REGISTER (CONTINUED) bit 5 LOCK: PLL Lock Status bit (read-only Indicates that PLL is in lock 0 = Indicates that PLL is out of lock (or disabled) Reset on POR or BOR. Reset when a valid clock switching sequence is initiated. Set when PLL lock is achieved after a PLL start. Reset when lock is lost. Read zero when PLL is not selected as a system ...

Page 149

... Center frequency, oscillator is running at calibrated frequency 1111 = 1110 = 1101 = 1100 = 1011 = 1010 = 1001 = 1000 = Minimum frequency  2010 Microchip Technology Inc. dsPIC30F3014/4013 U-0 U-0 U-0 — — — U-0 R/W-0 R/W-0 — TUN<3:0> Unimplemented bit, read as ‘0’ ...

Page 150

... REGISTER 20-3: FOSC: OSCILLATOR CONFIGURATION REGISTER — — — bit 23 R/P R/P U FCKSM<1:0> — bit — — — bit 7 Legend Readable bit W = Writable bit -n = Value at POR ‘1’ = Bit is set bit 23-16 Unimplemented: Read as ‘0’ bit 15-14 FCKSM<1:0>: Clock Switching and Monitor Selection Configuration bits ...

Page 151

... Reset state. The POR also selects the device clock source identified by the oscillator configuration fuses.  2010 Microchip Technology Inc. dsPIC30F3014/4013 Different registers are affected in different ways by var- ious Reset conditions. Most registers are not affected between by a WDT wake-up since this is viewed as the resump- tion of normal operation ...

Page 152

... FIGURE 20-3: TIME-OUT SEQUENCE ON POWER-UP (MCLR TIED MCLR INTERNAL POR OST TIME-OUT PWRT TIME-OUT INTERNAL Reset FIGURE 20-4: TIME-OUT SEQUENCE ON POWER-UP (MCLR NOT TIED MCLR INTERNAL POR OST TIME-OUT PWRT TIME-OUT INTERNAL Reset FIGURE 20-5: TIME-OUT SEQUENCE ON POWER-UP (MCLR NOT TIED TO V ...

Page 153

... Refer to the Electrical Specifications in the specific device data sheet for BOR voltage limit specifications.  2010 Microchip Technology Inc. dsPIC30F3014/4013 A BOR generates a Reset pulse, which resets the device. The BOR selects the clock source based on the device Configuration bit values (FOS<2:0> and FPR< ...

Page 154

... Table 20-5 shows the Reset conditions for the RCON register. Since the control bits within the RCON register are R/W, the information in the table means that all the bits are negated prior to the action specified in the condition column. TABLE 20-5: ...

Page 155

... In some devices, the LVD threshold voltage may be applied externally on the LVDIN pin. The LVD module is enabled by setting the LVDEN bit (RCON<12>).  2010 Microchip Technology Inc. dsPIC30F3014/4013 20.7 Power-Saving Modes There are two power-saving states that can be entered through the execution of a special instruction, PWRSAV; ...

Page 156

... Any interrupt that is individually enabled (using the cor- responding IE bit) and meets the prevailing priority level can wake-up the processor. The processor processes the interrupt and branch to the ISR. The SLEEP status bit in the RCON register is set upon wake-up. Note: ...

Page 157

... In the dsPIC30F3014 device, the T4MD, T5MD, IC7MD, IC8MD, OC4MD and DCIMD are readable and writable, and are read as “1” when set. ...

Page 158

... Refer to the “dsPIC30F Family Reference Manual” (DS70046) for descriptions of register bit fields. 2: Reset state depends on type of Reset. 3: Reset state depends on Configuration bits. 4: These bits are not available in dsPIC30F3014 devices. TABLE 20-8: DEVICE CONFIGURATION REGISTER MAP Name Address Bit 15 Bit 14 Bit 13 ...

Page 159

... The destination, which could either be the file register ‘f’ or the W0 register, which is denoted as ‘WREG’  2010 Microchip Technology Inc. dsPIC30F3014/4013 Most bit-oriented instructions (including simple rotate/ shift instructions) have two operands: • The W register (with or without an address modifier) or file register (specified by the value of ‘ ...

Page 160

... Most single-word instructions are executed in a single instruction cycle, unless a conditional test is true or the program counter is changed as a result of the instruction. In these cases, the execution takes two instruction cycles with the additional instruction cycle(s) executed as a NOP. Notable exceptions are the ...

Page 161

... Y data space prefetch address register for DSP instructions {[W10]+=6, [W10]+=4, [W10]+=2, [W10], [W10]-=6, [W10]-=4, [W10]-=2, [W11]+=6, [W11]+=4, [W11]+=2, [W11], [W11]-=6, [W11]-=4, [W11]-=2, [W11+W12], none} Y data space prefetch destination register for DSP instructions {W4..W7} Wyd  2010 Microchip Technology Inc. dsPIC30F3014/4013 Description DS70138G-page 161 ...

Page 162

... TABLE 21-2: INSTRUCTION SET OVERVIEW Base Assembly Instr Mnemoni Assembly Syntax # c 1 ADD ADD Acc ADD f ADD f,WREG ADD #lit10,Wn ADD Wb,Ws,Wd ADD Wb,#lit5,Wd ADD Wso,#Slit4,Acc 2 ADDC ADDC f ADDC f,WREG ADDC #lit10,Wn ADDC Wb,Ws,Wd ADDC Wb,#lit5,Wd 3 AND AND f AND ...

Page 163

... DEC2 DEC2 f DEC2 f,WREG DEC2 Ws,Wd 28 DISI DISI #lit14  2010 Microchip Technology Inc. dsPIC30F3014/4013 # of Description Words Bit Toggle f Bit Toggle Ws Bit Test f, Skip if Clear Bit Test Ws, Skip if Clear Bit Test f, Skip if Set Bit Test Ws, Skip if Set Bit Test f Bit Test Bit Test Bit Test Ws< ...

Page 164

... TABLE 21-2: INSTRUCTION SET OVERVIEW (CONTINUED) Base Assembly Instr Mnemoni Assembly Syntax # c 29 DIV DIV.S Wm,Wn DIV.SD Wm,Wn DIV.U Wm,Wn DIV.UD Wm,Wn 30 DIVF DIVF Wm, #lit14,Expr DO Wn,Expr Wm*Wm,Acc,Wx,Wy,Wxd 33 EDAC EDAC Wm*Wm,Acc,Wx,Wy,Wxd 34 EXCH EXCH Wns,Wnd 35 FBCL FBCL Ws,Wnd 36 FF1L FF1L Ws,Wnd 37 FF1R ...

Page 165

... RLNC Ws,Wd 65 RRC RRC f RRC f,WREG RRC Ws,Wd  2010 Microchip Technology Inc. dsPIC30F3014/4013 # of Description Words Multiply Accumulator Square Wm to Accumulator -(Multiply Wm by Wn) to Accumulator Multiply and Subtract from Accumulator {Wnd+1, Wnd} = Signed(Wb) * Signed(Ws) {Wnd+1, Wnd} = Signed(Wb) * Unsigned(Ws) {Wnd+1, Wnd} = Unsigned(Wb) * ...

Page 166

... TABLE 21-2: INSTRUCTION SET OVERVIEW (CONTINUED) Base Assembly Instr Mnemoni Assembly Syntax # c 66 RRNC RRNC f RRNC f,WREG RRNC Ws,Wd 67 SAC SAC Acc,#Slit4,Wdo SAC.R Acc,#Slit4,Wdo Ws,Wnd 69 SETM SETM f SETM WREG SETM Ws 70 SFTAC SFTAC Acc,Wn SFTAC Acc,#Slit6 71 SL ...

Page 167

... Device Programmers - PICkit™ 2 Programmer - MPLAB PM3 Device Programmer • Low-Cost Demonstration/Development Boards, Evaluation Kits, and Starter Kits  2010 Microchip Technology Inc. dsPIC30F3014/4013 22.1 MPLAB Integrated Development Environment Software ® digital signal The MPLAB IDE software brings an ease of software development previously unseen in the 8/16/32-bit microcontroller market ...

Page 168

... MPLAB C Compilers for Various Device Families The MPLAB C Compiler code development systems are complete ANSI C compilers for Microchip’s PIC18, PIC24 and PIC32 families of microcontrollers and the dsPIC30 and dsPIC33 families of digital signal control- lers. These compilers provide powerful integration capabilities, superior code optimization and ease of use ...

Page 169

... Microchip Technology Inc. dsPIC30F3014/4013 22.9 MPLAB ICD 3 In-Circuit Debugger System MPLAB ICD 3 In-Circuit Debugger System is Micro- chip's most cost effective high-speed hardware ...

Page 170

... PICkit 2 Development Programmer/Debugger and PICkit 2 Debug Express The PICkit™ 2 Development Programmer/Debugger is a low-cost development tool with an easy to use inter- face for programming and debugging Microchip’s Flash families of microcontrollers. The ® Windows programming interface supports baseline (PIC10F, PIC12F5xx, ...

Page 171

... All peripheral electrical characteristics are specified. For exact peripherals available on specific devices, please refer to the  2010 Microchip Technology Inc. dsPIC30F3014/4013 (except V and MCLR) (Note 1) ..................................... -0. ....................................................................................................... 0V to +13.25V ) .......................................................................................................... ± > ...................................................................................................± pin, inducing currents greater than 80 mA, may cause latch-up. PP dsPIC30F3014/4013 Controller Family + 0.3V) DD pin, rather PP Table 23-4 table. DS70138G-page 171 ...

Page 172

... TABLE 23-2: THERMAL OPERATING CONDITIONS Rating dsPIC30F3014-30I dsPIC30F4013-30I Operating Junction Temperature Range Operating Ambient Temperature Range dsPIC30F3014-20E dsPIC30F4013-20E Operating Junction Temperature Range Operating Ambient Temperature Range Power Dissipation: Internal chip power dissipation:     ...

Page 173

... Data in “Typ” column is at 5V, 25°C unless otherwise stated. Parameters are for design guidance only and are not tested. 2: These parameters are characterized but not tested in manufacturing. 3: This is the limit to which V DD  2010 Microchip Technology Inc. dsPIC30F3014/4013 Standard Operating Conditions: 2.5V to 5.5V (unless otherwise stated) Operating temperature (1) Min Typ Max 2.5 — ...

Page 174

... TABLE 23-5: DC CHARACTERISTICS: OPERATING CURRENT (I DC CHARACTERISTICS Parameter Typical Max No. (1) Operating Current ( DC31a 2 4 DC31b 2 4 DC31c 2 4 DC31e 4 6 DC31f 4 6 DC31g 4 6 DC30a 6 11 DC30b 6 11 DC30c 7 11 DC30e 11 16 DC30f 11 16 DC30g 11 16 DC23a 13 20 DC23b ...

Page 175

... DC49b 75 95 Note 1: Base I current is measured with core off, clock on and all modules turned off. IDLE  2010 Microchip Technology Inc. dsPIC30F3014/4013 ) IDLE Standard Operating Conditions: 2.5V to 5.5V (unless otherwise stated) -40°C  T  +85°C for Industrial Operating temperature A -40°C  T  ...

Page 176

... TABLE 23-7: DC CHARACTERISTICS: POWER-DOWN CURRENT (I DC CHARACTERISTICS Parameter Typical Max No. (1) Power-Down Current ( DC60a 1 — DC60b 3 30 DC60c 30 60 DC60e 2 — DC60f 6 45 DC60g 55 90 DC61a 7 11 DC61b 7 11 DC61c 7 11 DC61e 14 21 DC61f 14 21 DC61g 14 21 DC62a — — ...

Page 177

... The leakage current on the MCLR pin is strongly dependent on the applied voltage level. The specified levels represent normal operating conditions. Higher leakage current may be measured at different input voltages. 5: Negative current is defined as current sourced by the pin.  2010 Microchip Technology Inc. dsPIC30F3014/4013 Standard Operating Conditions: 2.5V to 5.5V (unless otherwise stated) Operating temperature (1) Min ...

Page 178

... TABLE 23-9: DC CHARACTERISTICS: I/O PIN OUTPUT SPECIFICATIONS DC CHARACTERISTICS Param Symbol Characteristic No. V Output Low Voltage OL DO10 I/O Ports DO16 OSC2/CLKO ( Oscillator mode) V Output High Voltage OH DO20 I/O Ports DO26 OSC2/CLKO ( Oscillator mode) Capacitive Loading Specs (2) on Output Pins DO50 C 2 OSC2/SOSC2 Pin ...

Page 179

... These values not in usable operating range. FIGURE 23-2: BROWN-OUT RESET CHARACTERISTICS V DD BO10 (Device in Brown-out Reset) R (due to BOR) ESET  2010 Microchip Technology Inc. dsPIC30F3014/4013 Standard Operating Conditions: 2.5V to 5.5V (unless otherwise stated) Operating temperature (1) Min (2) LVDL = 0000 — DD (2) LVDL = 0001 — ...

Page 180

... TABLE 23-11: ELECTRICAL CHARACTERISTICS: BOR DC CHARACTERISTICS Param Symbol Characteristic No. BO10 V BOR Voltage on V BOR Transition (2) High-to-Low BO15 V BHYS Note 1: Data in “Typ” column is at 5V, 25°C unless otherwise stated. Parameters are for design guidance only and are not tested. 2: These parameters are characterized but not tested in manufacturing. ...

Page 181

... Load Condition 1 – for all pins except OSC2 Pin FIGURE 23-4: EXTERNAL CLOCK TIMING Q4 OSC1 CLKO  2010 Microchip Technology Inc. dsPIC30F3014/4013 Standard Operating Conditions: 2.5V to 5.5V (unless otherwise stated) -40°C  T Operating temperature -40°C  T Operating voltage V range as described in DD Load Condition 2 – ...

Page 182

... TABLE 23-14: EXTERNAL CLOCK TIMING REQUIREMENTS AC CHARACTERISTICS Param Symbol Characteristic No. OS10 F External CLKI Frequency OSC (external clocks allowed (2) only in EC mode) Oscillator Frequency OS20 1/F OSC OSC OSC OS25 T Instruction Cycle Time CY OS30 TosL, External Clock in (OSC1) (2) TosH High or Low Time ...

Page 183

... Mode EC 0.200 Note 1: Assumption: Oscillator Postscaler is divide Instruction Execution Cycle Time Instruction Execution Frequency: MIPS = (F cycle].  2010 Microchip Technology Inc. dsPIC30F3014/4013 -40°C  -40°C  (1) Min Typ Max Units -40°C  T — 0.251 0.413 % -40°C  T — 0.251 0.413 % -40° ...

Page 184

... TABLE 23-17: AC CHARACTERISTICS: INTERNAL FRC ACCURACY Standard Operating Conditions: 2.5V to 5.5V (unless otherwise stated) AC CHARACTERISTICS Operating temperature Param Characteristic No. Internal FRC Accuracy @ FRC Freq. = 7.37 MHz OS63 FRC Note 1: Frequency calibrated at 7.372 MHz ±2%, 25°C and 5V. TUN bits (OSCCON<3:0>) can be used to compensate for temperature drift ...

Page 185

... Measurements are taken in RC mode and EC mode where CLKO output These parameters are characterized but not tested in manufacturing. 4: Data in “Typ” column is at 5V, 25°C unless otherwise stated.  2010 Microchip Technology Inc. dsPIC30F3014/4013 DI35 DI40 New Value DO31 DO32 Standard Operating Conditions: 2.5V to 5.5V (unless otherwise stated) -40° ...

Page 186

... FIGURE 23-6: RESET, WATCHDOG TIMER, OSCILLATOR START-UP TIMER AND POWER-UP TIMER TIMING CHARACTERISTICS V DD SY12 MCLR Internal POR SY11 PWRT Time-out SY30 Oscillator Time-out Internal Reset Watchdog Timer Reset I/O Pins SY35 FSCM Delay Note: Refer to Figure 23-3 for load conditions. ...

Page 187

... Band Gap Start-up Time BGAP Note 1: These parameters are characterized but not tested in manufacturing. 2: Data in “Typ” column is at 5V, 25°C unless otherwise stated.  2010 Microchip Technology Inc. dsPIC30F3014/4013 Standard Operating Conditions: 2.5V to 5.5V (unless otherwise stated) Operating temperature (1) (2) Min ...

Page 188

... FIGURE 23-8: TYPE A, B AND C TIMER EXTERNAL CLOCK TIMING CHARACTERISTICS TxCK TMRX Note: Refer to Figure 23-3 for load conditions. TABLE 23-22: TYPE A TIMER (TIMER1) EXTERNAL CLOCK TIMING REQUIREMENTS AC CHARACTERISTICS Param Symbol Characteristic No. TA10 T H TxCK High Time TX TA11 T L TxCK Low Time ...

Page 189

... TxCK Input Period Synchronous, TC20 T Delay from External TxCK Clock CKEXTMRL Edge to Timer Increment Note 1: Timer3 and Timer5 are Type C.  2010 Microchip Technology Inc. dsPIC30F3014/4013 Standard Operating Conditions: 2.5V to 5.5V (unless otherwise stated) -40°C  T Operating temperature -40°C  T Min Typ Synchronous, ...

Page 190

... FIGURE 23-9: INPUT CAPTURE (CAPx) TIMING CHARACTERISTICS IC X Note: Refer to Figure 23-3 TABLE 23-25: INPUT CAPTURE TIMING REQUIREMENTS AC CHARACTERISTICS Param Symbol Characteristic No. IC10 TccL ICx Input Low Time IC11 TccH ICx Input High Time IC15 TccP ICx Input Period Note 1: These parameters are characterized but not tested in manufacturing ...

Page 191

... These parameters are characterized but not tested in manufacturing. 2: Data in “Typ” column is at 5V, 25°C unless otherwise stated. Parameters are for design guidance only and are not tested.  2010 Microchip Technology Inc. dsPIC30F3014/4013 OC20 Standard Operating Conditions: 2.5V to 5.5V (unless otherwise stated) Operating temperature ...

Page 192

... FIGURE 23-12: DCI MODULE (MULTICHANNEL, I CSCK (SCKE = 0) CSCK (SCKE = 1) COFS CS55 CS56 CS35 CS51 CS50 HIGH-Z CSDO CSDI Note: Refer to Figure 23-3 for load conditions. DS70138G-page 192 2 S MODES) TIMING CHARACTERISTICS CS11 CS10 CS21 CS20 MSb CS30 MSb IN CS40 CS41 ...

Page 193

... The minimum clock period for CSCK is 100 ns. Therefore, the clock generated in Master mode must not violate this specification. 4: Assumes 50 pF load on all DCI pins.  2010 Microchip Technology Inc. dsPIC30F3014/4013 2 S MODES) TIMING REQUIREMENTS Standard Operating Conditions: 2.5V to 5.5V (unless otherwise stated) -40° ...

Page 194

... FIGURE 23-13: DCI MODULE (AC-LINK MODE) TIMING CHARACTERISTICS BIT_CLK (CSCK) CS61 CS60 SYNC (COFS) CS80 MSb LSb SDOx (CSDO) MSb In SDIx (CSDI) CS65 CS66 DS70138G-page 194 CS62 CS21 CS71 CS72 CS76 CS76 CS75 CS20 CS70 CS75 LSb  2010 Microchip Technology Inc. ...

Page 195

... SCKx (CKP = 0) SP11 SCKx (CKP = 1) SP35 SDOx SP31 SDIx MSb In SP40 SP41 Note: Refer to Figure 23-3 for load conditions.  2010 Microchip Technology Inc. dsPIC30F3014/4013 Standard Operating Conditions: 2.5V to 5.5V (unless otherwise stated) Operating temperature (1,2) (3) Min Typ Max 36 40 40.7 45 — ...

Page 196

... TABLE 23-30: SPI MASTER MODE (CKE = 0) TIMING REQUIREMENTS AC CHARACTERISTICS Param Symbol Characteristic No. SP10 TscL SCK Output Low Time X SP11 TscH SCK Output High Time X SP20 TscF SCK Output Fall Time X SP21 TscR SCK Output Rise Time X SP30 TdoF SDO Data Output Fall Time ...

Page 197

... SPI MODULE SLAVE MODE (CKE = 0) TIMING CHARACTERISTICS SS X SP50 SCK X (CKP = 0) SP71 SCK X (CKP = 1) SP35 SDO X SDI SDI X SP40  2010 Microchip Technology Inc. dsPIC30F3014/4013 Standard Operating Conditions: 2.5V to 5.5V (unless otherwise stated) Operating temperature (1) (2) Min Typ ( — — CY (4) — ...

Page 198

... TABLE 23-32: SPI MODULE SLAVE MODE (CKE = 0) TIMING REQUIREMENTS AC CHARACTERISTICS Param Symbol Characteristic No. SP70 TscL SCK Input Low Time X SP71 TscH SCK Input High Time X SP72 TscF SCK Input Fall Time X SP73 TscR SCK Input Rise Time X SP30 TdoF SDO ...

Page 199

... SCK X (CKP = 0) SP71 SCK X (CKP = 1) MSb SDO X SDI SDI X MSb In SP41 SP40 Note: Refer to Figure 23-3 for load conditions.  2010 Microchip Technology Inc. dsPIC30F3014/4013 SP70 SP73 SP35 SP72 SP52 Bit LSb SP30,SP31 Bit LSb In SP52 SP72 SP73 SP51 DS70138G-page 199 ...

Page 200

... TABLE 23-33: SPI MODULE SLAVE MODE (CKE = 1) TIMING REQUIREMENTS AC CHARACTERISTICS Param Symbol Characteristic No. SP70 TscL SCK Input Low Time X SP71 TscH SCK Input High Time X SP72 TscF SCK Input Fall Time X SP73 TscR SCK Input Rise Time X SP30 TdoF SDO ...

Related keywords