Escolar Documentos
Profissional Documentos
Cultura Documentos
Data Sheet
High-Performance, 16-Bit
Digital Signal Controllers
• Microchip believes that its family of products is one of the most secure families of its kind on the market today, when used in the
intended manner and under normal conditions.
• There are dishonest and possibly illegal methods used to breach the code protection feature. All of these methods, to our
knowledge, require using the Microchip products in a manner outside the operating specifications contained in Microchip’s Data
Sheets. Most likely, the person doing so is engaged in theft of intellectual property.
• Microchip is willing to work with the customer who is concerned about the integrity of their code.
• Neither Microchip nor any other semiconductor manufacturer can guarantee the security of their code. Code protection does not
mean that we are guaranteeing the product as “unbreakable.”
Code protection is constantly evolving. We at Microchip are committed to continuously improving the code protection features of our
products. Attempts to break Microchip’s code protection feature may be a violation of the Digital Millennium Copyright Act. If such acts
allow unauthorized access to your software or other copyrighted work, you may have a right to sue for relief under that Act.
UART
2 TM
CAN
SRAM EEPROM Timer Input A/D 10-bit Quad
SPI
Device Pins Mem. Bytes/ Comp/Std Control
I C
Bytes Bytes 16-bit Cap 1 Msps Enc
Instructions PWM PWM
Note 1: This table provides a summary of the dsPIC30F3010/3011 peripheral features. Other available devices in
the dsPIC30F Motor Control and Power Conversion Family are shown for feature comparison.
40-Pin PDIP
MCLR 1 40 AVDD
EMUD3/AN0/VREF+/CN2/RB0 2 39 AVSS
EMUC3/AN1/VREF-/CN3/RB1 3 38 PWM1L/RE0
AN2/SS1/CN4/RB2 4 37 PWM1H/RE1
AN3/INDX/CN5/RB3 5 36 PWM2L/RE2
AN4/QEA/IC7/CN6/RB4 6 35 PWM2H/RE3
dsPIC30F3011
AN5/QEB/IC8/CN7/RB5 7 34 PWM3L/RE4
AN6/OCFA/RB6 8 33 PWM3H/RE5
AN7/RB7 9 32 VDD
AN8/RB8 10 31 VSS
VDD 11 30 RF0
VSS 12 29 RF1
OSC1/CLKI 13 28 U2RX/CN17/RF4
OSC2/CLKO/RC15 14 27 U2TX/CN18/RF5
EMUD1/SOSCI/T2CK/U1ATX/CN1/RC13 15 26 PGC/EMUC/U1RX/SDI1/SDA/RF2
EMUC1/SOSCO/T1CK/U1ARX/CN0/RC14 16 25 PGD/EMUD/U1TX/SDO1/SCL/RF3
FLTA/INT0/RE8 17 24 SCK1/RF6
EMUD2/OC2/IC2/INT2/RD1 18 23 EMUC2/OC1/IC1/INT1/RD0
OC4/RD3 19 22 OC3/RD2
VSS 20 21 VDD
44-Pin TQFP
EMUC1/SOSCO/T1CK/U1ARX/CN0/RC14
PGD/EMUD/U1TX/SDO1/SCL/RF3
EMUC2/OC1/IC1/INT1/RD0
EMUD2/OC2/IC2/INT2/RD1
FLTA/INT0/RE8
SCK1/RF6
OC3/RD2
OC4/RD3
VDD
VSS
NC
44
43
42
41
40
39
38
37
36
35
34
PGC/EMUC/U1RX/SDI1/SDA/RF2 1 33 NC
U2TX/CN18/RF5 2 32 EMUD1/SOSCI/T2CK/U1ATX/CN1/RC13
U2RX/CN17/RF4 3 31 OSC2/CLKO/RC15
RF1 4 30 OSC1/CLKI
RF0 5 29 VSS
VSS 28 VDD
VDD
6 dsPIC30F3011 AN8/RB8
7 27
PWM3H/RE5 8 26 AN7/RB7
PWM3L/RE4 9 25 AN6/OCFA/RB6
PWM2H/RE3 10 24 AN5/QEB/IC8/CN7/RB5
PWM2L/RE2 11 23 AN4/QEA/IC7/CN6/RB4
12
13
14
15
16
17
18
19
20
21
22
EMUD3/AN0/VREF+/CN2/RB0
EMUC3/AN1/VREF-/CN3/RB1
AN2/SS1/CN4/RB2
AN3/INDX/CN5/RB3
PWM1H/RE1
PWM1L/RE0
NC
NC
MCLR
AVSS
AVDD
44-Pin QFN
EMUC1/SOSCO/T1CK/U1ARX/CN0/RC14
EMUD1/SOSCI/T2CK/U1ATX/CN1/RC13
PGD/EMUD/U1TX/SDO1/SCL/RF3
EMUD2/OC2/IC2/INT2/RD1
EMUC2/OC1/IC1/INT1/RD0
FLTA/INT0/RE8
SCK1/RF6
OC4/RD3
OC3/RD2
VDD
VSS
44
43
42
41
40
39
38
37
36
35
34
PGC/EMUC/U1RX/SDI1/SDA/RF2 1 33 OSC2/CLKO/RC15
U2TX/CN18/RF5 2 32 OSC1/CLKI
U2RX/CN17/RF4 3 31 VSS
RF1 4 30 VSS
RF0 5 29 VDD
VSS 6 dsPIC30F3011 28 VDD
VDD 7 27 AN8/RB8
VDD 8 26 AN7/RB7
PWM3H/RE5 9 25 AN6/OCFA/RB6
PWM3L/RE4 10 24 AN5/QEB/IC8/CN7/RB5
PWM2H/RE3 11 23 AN4/QEA/IC7/CN6/RB4
12
13
14
15
16
17
18
19
20
21
22
EMUC3/AN1/VREF-/CN3/RB1
NC
MCLR
AVSS
EMUD3/AN0/VREF+/CN2/RB0
AN2/SS1/CN4/RB2
AN3/INDX/CN5/RB3
PWM2L/RE2
PWM1H/RE1
PWM1L/RE0
AVDD
28-Pin SPDIP
28-Pin SOIC
MCLR 1 28 AVDD
EMUD3/AN0/VREF+/CN2/RB0 2 27 AVSS
EMUC3/AN1/VREF-/CN3/RB1 3 26 PWM1L/RE0
dsPIC30F3010
AN2/SS1/CN4/RB2 4 25 PWM1H/RE1
AN3/INDX/CN5/RB3 5 24 PWM2L/RE2
AN4/QEA/IC7/CN6/RB4 6 23 PWM2H/RE3
AN5/QEB/IC8/CN7/RB5 7 22 PWM3L/RE4
VSS 8 21 PWM3H/RE5
OSC1/CLKI 9 20 VDD
OSC2/CLKO/RC15 10 19 VSS
EMUD1/SOSCI/T2CK/U1ATX/CN1/RC13 11 18 PGC/EMUC/U1RX/SDI1/SDA/RF2
EMUC1/SOSCO/T1CK/U1ARX/CN0/RC14 12 17 PGD/EMUD/U1TX/SDO1/SCL/RF3
VDD 13 16 FLTA/INT0/SCK1/OCFA/RE8
EMUD2/OC2/IC2/INT2/RD1 14 15 EMUC2/OC1/IC1/INT1/RD0
44-Pin QFN
EMUC1/SOSCO/T1CK/U1ARX/CN0/RC14
EMUD1/SOSCI/T2CK/U1ATX/CN1/RC13
PGD/EMUD/U1TX/SDO1/SCL/RF3
FLTA/INT0/SCK1\OCFA/RE8
EMUD2/OC2/IC2/INT2/RD1
EMUC2/OC1/IC1/INT1/RD0
VDD
VDD
VSS
NC
NC
44
43
42
41
40
39
38
37
36
35
34
PGC/EMUC/U1RX/SDI1/SDA/RF2 1 33 OSC2/CLKO/RC15
NC 2 32 OSC1/CLKI
NC 3 31 VSS
NC 4 30 VSS
NC 5 29 VDD
VSS 6 dsPIC30F3010 28 VDD
VDD 7 27 NC
VDD 8 26 NC
PWM3H/RE5 9 25 NC
PWM3L/RE4 10 24 AN5/QEB/IC8/CN7/RB5
PWM2H/RE3 11 23 AN4/QEA/IC7/CN6/RB4
12
13
14
15
16
17
18
19
20
21
22
EMUC3/AN1/VREF-/CN3/RB1
NC
MCLR
AVSS
EMUD3/AN0/VREF+/CN2/RB0
AN2/SS1/CN4/RB2
PWM2L/RE2
PWM1H/RE1
PWM1L/RE0
AN3/INDX/CN5/RB3
AVDD
Errata
An errata sheet, describing minor operational differences from the data sheet and recommended workarounds, may exist for current
devices. As device/documentation issues become known to us, we will publish an errata sheet. The errata will specify the revision
of silicon and revision of document to which it applies.
To determine if an errata sheet exists for a particular device, please check with one of the following:
• Microchip’s Worldwide Web site; http://www.microchip.com
• Your local Microchip sales office (see last page)
When contacting a sales office, please specify which device, revision of silicon and data sheet (include literature number) you are
using.
Y Data Bus
X Data Bus
16 16 16 16
16
Interrupt Data Latch Data Latch
Controller PSV & Table
Data Access Y Data X Data
24 Control Block 8 16 RAM RAM
(4 Kbytes) (4 Kbytes)
Address Address
24 Latch Latch
16 16 16
24 X RAGU EMUD3/AN0/VREF+/CN2/RB0
Y AGU
PCU PCH PCL X WAGU EMUC3/AN1/VREF-/CN3/RB1
Program Counter AN2/SS1/CN4/RB2
Address Latch Stack Loop AN3/INDX/CN5/RB3
Control Control AN4/QEA/IC7/CN6/RB4
Program Memory Logic Logic
AN5/QEB/IC8/CN7/RB5
(24 Kbytes)
AN6/OCFA/RB6
Data EEPROM AN7/RB7
(1 Kbyte) Effective Address AN8/RB8
Data Latch 16 PORTB
ROM Latch 16
24
IR
EMUD1/SOSCI/T2CK/U1ATX/CN1/RC13
16 16 EMUC1/SOSCO/T1CK/U1ARX/CN0/RC14
OSC2/CLKO/RC15
16 x 16
W Reg Array PORTC
Decode
Instruction
Decode and 16 16
Control
Watchdog
Timer
VDD, VSS
AVDD, AVSS
Input Output
10-bit ADC Capture Compare I2C™
PWM1L/RE0
Module Module
PWM1H/RE1
PWM2L/RE2
PWM2H/RE3
PWM3L/RE4
PWM3H/RE5
Motor Control UART1, FLTA/INT0/RE8
SPI Timers QEI
PWM UART2
PORTE
RF0
RF1
PGC/EMUC/U1RX/SDI1/SDA/RF2
PGD/EMUD/U1TX/SDO1/SCL/RF3
U2RX/CN17/RF4
U2TX/CN18/RF5
SCK1/RF6
PORTF
Y Data Bus
X Data Bus
16 16 16 16
16
Interrupt Data Latch Data Latch
Controller PSV & Table Y Data
Data Access X Data
24 Control Block 8 16 RAM RAM
(4 Kbytes) (4 Kbytes)
Address Address
24 Latch Latch
16 16 16
24 X RAGU
Y AGU
PCU PCH PCL X WAGU
EMUD3/AN0/VREF+/CN2/RB0
Program Counter
EMUC3/AN1/VREF-/CN3/RB1
Address Latch Stack Loop AN2/SS1/CN4/RB2
Control Control
Program Memory Logic Logic AN3/INDX/CN5/RB3
(24 Kbytes) AN4/QEA/IC7/CN6/RB4
AN5/QEB/IC8/CN7/RB5
Data EEPROM
(1 Kbyte) Effective Address PORTB
Data Latch 16
ROM Latch 16
24
IR
EMUD1/SOSCI/T2CK/U1ATX/CN1/RC13
16 16 EMUC1/SOSCO/T1CK/U1ARX/CN0/RC14
OSC2/CLKO/RC15
16 x 16
W Reg Array PORTC
Decode
Instruction
Decode and 16 16
Control
Watchdog
VDD, VSS Timer
AVDD, AVSS
Input Output
10-bit ADC Capture Compare I2C™
PWM1L/RE0
Module Module
PWM1H/RE1
PWM2L/RE2
PWM2H/RE3
PWM3L/RE4
PWM3H/RE5
SPI Timers QEI Motor Control UART FLTA/INT0/SCK1/OCFA/RE8
PWM PORTE
PGC/EMUC/U1RX/SDI1/SDA/RF2
PGD/EMUD/U1TX/SDO1/SCL/RF3
PORTF
D15 D0
W0/WREG
PUSH.S Shadow
W1
DO Shadow
W2
W3 Legend
W4
DSP Operand W5
Registers
W6
W7
Working Registers
W8
W9
DSP Address
Registers W10
W11
W12/DSP Offset
W13/DSP Write Back
W14/Frame Pointer
W15/Stack Pointer
PC22 PC0
0 Program Counter
7 0
TABPAG
TBLPAG Data Table Page Address
7 0
PSPSVPAG
VPAG Program Space Visibility Page Address
15 0
RCOUNT REPEAT Loop Counter
15 0
DCOUNT DO Loop Counter
22 0
DOSTART DO Loop Start Address
22
DOEND DO Loop End Address
15 0
CORCON Core Configuration Register
SRH SRL
S
a
40 40-bit Accumulator A 40 Round t 16
40-bit Accumulator B u
Logic r
a
Carry/Borrow Out t
Saturate e
Carry/Borrow In Adder
Negate
40
40 40
Barrel
16
Shifter
X Data Bus
40
Sign-Extend
Y Data Bus
32 16
Zero Backfill
32
33
17-bit
Multiplier/Scaler
16 16
To/From W Array
User Memory
incremented by two between successive program Alternate Vector Table 000084
Space
0000FE
words, in order to provide compatibility with data space User Flash 000100
addressing. Program Memory
(8K instructions)
User program space access is restricted to the lower 003FFE
4M instruction word address range (0x000000 to 004000
Reserved
0x7FFFFE), for all accesses other than TBLRD/TBLWT, (Read 0’s)
which use TBLPAG<7> to determine user or configura- 7FFBFE
tion space access. In Table 3-1, Read/Write instruc- 7FFC00
Data EEPROM
tions, bit 23 allows access to the Device ID, the User ID (1 Kbyte)
and the configuration bits. Otherwise, bit 23 is always 7FFFFE
clear. 800000
Reserved
Configuration Memory
8005BE
Space
8005C0
UNITID (32 instr.)
8005FE
800600
Reserved
F7FFFE
Device Configuration F80000
Registers F8000E
F80010
Reserved
FEFFFE
DEVID (2) FF0000
FFFFFE
23 bits
Using
Program 0 Program Counter 0
Counter
Select
1 EA
Using
Program 0 PSVPAG Reg
Space
Visibility 8 bits 15 bits
EA
User/ Byte
Configuration 24-bit EA
Space Select
Select
Note: Program Space Visibility cannot be used to access bits <23:16> of a word in program memory.
PC Address 23 16 8 0
0x000000 00000000
0x000002 00000000
0x000004 00000000
0x000006 00000000
TBLRDL.B (Wn<0> = 0)
TBLRDL.W
Program Memory
‘Phantom’ Byte
TBLRDL.B (Wn<0> = 1)
(Read as ‘0’).
TBLRDH.W
PC Address 23 16 8 0
0x000000 00000000
0x000002 00000000
0x000004 00000000
0x000006 00000000
TBLRDH.B (Wn<0> = 0)
Program Memory
‘Phantom’ Byte
(Read as ‘0’) TBLRDH.B (Wn<0> = 1)
3.1.2 DATA ACCESS FROM PROGRAM Note that by incrementing the PC by 2 for each
MEMORY USING PROGRAM program memory word, the 15 LSb of data space
SPACE VISIBILITY addresses directly map to the 15 LSb in the
corresponding program space addresses. The
The upper 32 Kbytes of data space may optionally be remaining bits are provided by the Program Space
mapped into any 16K word program space page. This Visibility Page register, PSVPAG<7:0>, as shown in
provides transparent access of stored constant data Figure 3-5.
from X data space, without the need to use special
instructions (i.e., TBLRDL/H, TBLWTL/H instructions). Note: PSV access is temporarily disabled during
Table Reads/Writes.
Program space access through the data space occurs
if the MSb of the data space EA is set and program For instructions that use PSV which are executed
space visibility is enabled, by setting the PSV bit in the outside a REPEAT loop:
Core Control register (CORCON). The functions of • The following instructions will require one instruc-
CORCON are discussed in Section 2.4 "DSP tion cycle in addition to the specified execution
Engine". time:
Data accesses to this area add an additional cycle to - MAC class of instructions with data operand
the instruction being executed, since two program prefetch
memory fetches are required. - MOV instructions
Note that the upper half of addressable data space is - MOV.D instructions
always part of the X data space. Therefore, when a • All other instructions will require two instruction
DSP operation uses program space mapping to access cycles in addition to the specified execution time
this memory region, Y data space should typically of the instruction.
contain state (variable) data for DSP operations,
whereas X data space should typically contain For instructions that use PSV which are executed
coefficient (constant) data. inside a REPEAT loop:
Although each data space address, 0x8000 and higher, • The following instances will require two instruction
maps directly into a corresponding program memory cycles in addition to the specified execution time
address (see Figure 3-5), only the lower 16-bits of the of the instruction:
24-bit program word are used to contain the data. The - Execution in the first iteration
upper 8 bits should be programmed to force an illegal - Execution in the last iteration
instruction to maintain machine robustness. Refer - Execution prior to exiting the loop due to an
to the “dsPIC30F/33F Programmer’s Reference Man- interrupt
ual” (DS70157) for details on instruction encoding.
- Execution upon re-entering the loop after an
interrupt is serviced
• Any other iteration of the REPEAT loop will allow
the instruction, accessing data using PSV, to
execute in a single cycle.
15 PSVPAG(1)
EA<15> = 0 0x00
8
Data 16
Space 0x8000
EA 15 23 15 0
Address
EA<15> = 1 0x001200
15 Concatenation 23
Data Read
Note: 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).
3.2 Data Address Space When executing any instruction other than one of the
MAC class of instructions, the X block consists of the 64
The core has two data spaces. The data spaces can be Kbyte data address space (including all Y addresses).
considered either separate (for some DSP instruc- When executing one of the MAC class of instructions,
tions), or as one unified linear address range (for MCU the X block consists of the 64 Kbyte data address
instructions). The data spaces are accessed using two space excluding the Y address block (for data reads
Address Generation Units (AGUs) and separate data only). In other words, all other instructions regard the
paths. entire data memory as one composite address space.
The MAC class instructions extract the Y address space
3.2.1 DATA SPACE MEMORY MAP from data space and address it using EAs sourced from
The data space memory is split into two blocks, X and W10 and W11. The remaining X data space is
Y data space. A key element of this architecture is that addressed using W8 and W9. Both address spaces are
Y space is a subset of X space, and is fully contained concurrently accessed only with the MAC class
within X space. In order to provide an apparent linear instructions.
addressing space, X and Y spaces have contiguous A data space memory map is shown in Figure 3-6.
addresses.
Figure 3-7 shows a graphical summary of how X and Y
data spaces are accessed for MCU and DSP
instructions.
MSB LSB
Address 16 bits Address
MSB LSB
0x0001 0x0000
2 Kbyte SFR Space
SFR Space 0x07FE
0x07FF
0x0801 0x0800
0x0BFF 0xBFE
0x0C01 0x0C00
0x8001 0x8000
X Data
Unimplemented (X)
Optionally
Mapped
into Program
Memory
0xFFFF 0xFFFE
X SPACE
UNUSED
X SPACE
X SPACE
UNUSED
Indirect EA using any W Indirect EA using W10, W11 Indirect EA using W8, W9
dsPIC30F3010/3011
Address
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 Reset State
(Home)
W0 0000 W0 / WREG 0000 0000 0000 0000
W1 0002 W1 0000 0000 0000 0000
W2 0004 W2 0000 0000 0000 0000
W3 0006 W3 0000 0000 0000 0000
W4 0008 W4 0000 0000 0000 0000
W5 000A W5 0000 0000 0000 0000
W6 000C W6 0000 0000 0000 0000
W7 000E W7 0000 0000 0000 0000
W8 0010 W8 0000 0000 0000 0000
W9 0012 W9 0000 0000 0000 0000
W10 0014 W10 0000 0000 0000 0000
W11 0016 W11 0000 0000 0000 0000
W12 0018 W12 0000 0000 0000 0000
W13 001A W13 0000 0000 0000 0000
Confidential
Address
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 Reset State
(Home)
CORCON 0044 — — — US EDT DL2 DL1 DL0 SATA SATB SATDW ACCSAT IPL3 PSV RND IF 0000 0000 0010 0000
MODCON 0046 XMODEN YMODEN — — BWM<3:0> YWM<3:0> XWM<3:0> 0000 0000 0000 0000
XMODSRT 0048 XS<15:1> 0 uuuu uuuu uuuu uuu0
XMODEND 004A XE<15:1> 1 uuuu uuuu uuuu uuu1
YMODSRT 004C YS<15:1> 0 uuuu uuuu uuuu uuu0
YMODEND 004E YE<15:1> 1 uuuu uuuu uuuu uuu1
XBREV 0050 BREN XB<14:0> uuuu uuuu uuuu uuuu
DISICNT 0052 — — DISICNT<13:0> 0000 0000 0000 0000
Legend: u = uninitialized bit; — = unimplemented bit
Note 1: Refer to “dsPIC30F Family Reference Manual” (DS70046) for descriptions of register bit fields. Not all peripherals, and therefore their bit positions, are available on this device.
Confidential
dsPIC30F3010/3011
DS70141D-page 33
dsPIC30F3010/3011
NOTES:
File Register Direct The address of the file register is specified explicitly.
Register Direct The contents of a register are accessed directly.
Register Indirect The contents of Wn forms the EA.
Register Indirect Post-modified The contents of Wn forms the EA. Wn is post-modified (incremented or
decremented) by a constant value.
Register Indirect Pre-modified Wn is pre-modified (incremented or decremented) by a signed constant value
to form the EA.
Register Indirect with Register Offset The sum of Wn and Wb forms the EA.
Register Indirect with Literal Offset The sum of Wn and a literal forms the EA.
Byte
Address MOV #0x1100,W0
MOV W0, XMODSRT ;set modulo start address
MOV #0x1163,W0
MOV W0,MODEND ;set modulo end address
0x1100 MOV #0x8001,W0
MOV W0,MODCON ;enable W1, X AGU for modulo
MOV #0x0000,W0 ;W0 holds buffer fill value
MOV #0x1110,W1 ;point W1 to buffer
DO AGAIN,#0x31 ;fill the 50 buffer locations
MOV W0, [W1++] ;fill the next location
AGAIN: INC W0,W0 ;increment the fill value
0x1163
Pivot Point
XB = 0x0008 for a 16-word Bit-Reversed Buffer
2. The Stack Pointer is loaded with a value which IVT Reserved Vector
Reserved Vector
is less than 0x0800 (simple stack underflow). Reserved Vector
Interrupt 0 Vector 0x000014
Interrupt 1 Vector
Oscillator Fail Trap: —
—
This trap is initiated if the external oscillator fails and —
operation becomes reliant on an internal RC backup. Interrupt 52 Vector
Interrupt 53 Vector 0x00007E
Reserved 0x000080
Reserved 0x000082
Reserved 0x000084
Oscillator Fail Trap Vector
Stack Error Trap Vector
Address Error Trap Vector
Math Error Trap Vector
AIVT Reserved Vector
Reserved Vector
Reserved Vector
Interrupt 0 Vector 0x000094
Interrupt 1 Vector
—
—
—
Interrupt 52 Vector
Interrupt 53 Vector 0x0000FE
dsPIC30F3010/3011
SFR
ADR 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 Reset State
Name
INTCON1 0080 NSTDIS — — — — OVATE OVBTE COVTE — — — MATHERR ADDRERR STKERR OSCFAIL — 0000 0000 0000 0000
INTCON2 0082 ALTIVT DISI — — — — — — — — — — — INT2EP INT1EP INT0EP 0000 0000 0000 0000
IFS0 0084 CNIF MI2CIF SI2CIF NVMIF ADIF U1TXIF U1RXIF SPI1IF T3IF T2IF OC2IF IC2IF T1IF OC1IF IC1IF INT0IF 0000 0000 0000 0000
IFS1 0086 — — — — — — U2TXIF U2RXIF INT2IF T5IF T4IF OC4IF OC3IF IC8IF IC7IF INT1IF 0000 0000 0000 0000
IFS2 0088 — — — — FLTAIF — — QEIIF PWMIF — — — — — — — 0000 0000 0000 0000
IEC0 008C CNIE MI2CIE SI2CIE NVMIE ADIE U1TXIE U1RXIE SPI1IE T3IE T2IE OC2IE IC2IE T1IE OC1IE IC1IE INT0IE 0000 0000 0000 0000
IEC1 008E — — — — — — U2TXIE U2RXIE INT2IE T5IE T4IE OC4IE OC3IE IC8IE IC7IE INT1IE 0000 0000 0000 0000
IEC2 0090 — — — — FLTAIE — — QEIIE PWMIE — — — — — — — 0000 0000 0000 0000
IPC0 0094 — T1IP<2:0> — OC1IP<2:0> — IC1IP<2:0> — INT0IP<2:0> 0100 0100 0100 0100
IPC1 0096 — T31P<2:0> — T2IP<2:0> — OC2IP<2:0> — IC2IP<2:0> 0100 0100 0100 0100
IPC2 0098 — ADIP<2:0> — U1TXIP<2:0> — U1RXIP<2:0> — SPI1IP<2:0> 0100 0100 0100 0100
IPC3 009A — CNIP<2:0> — MI2CIP<2:0> — SI2CIP<2:0> — NVMIP<2:0> 0100 0100 0100 0100
IPC4 009C — OC3IP<2:0> — IC8IP<2:0> — IC7IP<2:0> — INT1IP<2:0> 0100 0100 0100 0100
IPC5 009E — INT2IP<2:0> — T5IP<2:0> — T4IP<2:0> — OC4IP<2:0> 0100 0100 0100 0100
Confidential
The dsPIC30F family of devices contains internal 6.3 Table Instruction Operation Summary
program Flash memory for executing user code. There
are two methods by which the user can program this The TBLRDL and the TBLWTL instructions are used to
memory: read or write to bits <15:0> of program memory.
TBLRDL and TBLWTL can access program memory in
1. In-Circuit Serial Programming™ (ICSP™)
Word or Byte mode.
capabilities
2. Run Time Self-Programming (RTSP) The TBLRDH and TBLWTH instructions are used to read
or write to bits<23:16> of program memory. TBLRDH
and TBLWTH can access program memory in Word or
6.1 In-Circuit Serial Programming
Byte mode.
(ICSP)
A 24-bit program memory address is formed using
dsPIC30F devices can be serially programmed while in bits<7:0> of the TBLPAG register and the Effective
the end application circuit. This is simply done with two Address (EA) from a W register specified in the table
lines for Programming Clock and Programming Data instruction, as shown in Figure 6-1.
(which are named PGC and PGD respectively), and
three other lines for Power (VDD), Ground (VSS) and
Master Clear (MCLR). This allows customers to manu-
facture boards with unprogrammed devices, and then
program the microcontroller just before shipping the
product. This also allows the most recent firmware or a
custom firmware to be programmed.
24 bits
Using
Program 0 Program Counter 0
Counter
NVMADR Reg EA
Using
NVMADR 1/0 NVMADRU Reg
Addressing
8 bits 16 bits
Working Reg EA
Byte
User/Configuration Select
Space Select 24-bit EA
Note: In Example 6-2, the contents of the upper byte of W3 have no effect.
File Name Addr. 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 All RESETS
NVMCON 0760 WR WREN WRERR — — — — — — PROGOP<6:0> 0000 0000 0000 0000
NVMADR 0762 NVMADR<15:0> uuuu uuuu uuuu uuuu
NVMADRU 0764 — — — — — — — — — NVMADR<22:16> 0000 0000 uuuu uuuu
NVMKEY 0766 — — — — — — — — NVMKEY<7:0> 0000 0000 0000 0000
Legend: u = uninitialized bit; — = unimplemented bit
Note 1: Refer to “dsPIC30F Family Reference Manual” (DS70046) for descriptions of register bit fields. Not all peripherals, and therefore their bit positions, are available on this device.
Confidential
dsPIC30F3010/3011
DS70141D-page 51
dsPIC30F3010/3011
NOTES:
Read TRIS
I/O Cell
TRIS Latch
Data Bus D Q
WR TRIS CK
Data Latch
D Q I/O Pad
WR LAT +
CK
WR Port
Read LAT
Read Port
PIO Module 1
Output Data
0
Read TRIS
I/O Pad
Data Bus D Q
WR TRIS CK
TRIS Latch
D Q
WR LAT +
WR Port CK
Data Latch
Read LAT
Input Data
Read Port
8.2 Configuring Analog Port Pins 8.2.1 I/O PORT WRITE/READ TIMING
The use of the ADPCFG and TRIS registers control the One instruction cycle is required between a port
operation of the A/D port pins. The port pins that are direction change or port write operation and a read
desired as analog inputs must have their correspond- operation of the same port. Typically this instruction
ing TRIS bit set (input). If the TRIS bit is cleared would be a NOP.
(output), the digital output level (VOH or VOL) will be
converted. EXAMPLE 8-1: PORT WRITE/READ
When reading the PORT register, all pins configured as EXAMPLE
analog input channel will read as cleared (a low level). MOV 0xFF00, W0 ; Configure PORTB<15:8>
; as inputs
Pins configured as digital inputs will not convert an MOV W0, TRISBB ; and PORTB<7:0> as outputs
analog input. Analog levels on any pin that is defined as NOP ; Delay 1 cycle
a digital input (including the ANx pins), may cause the btss PORTB, #13 ; Next Instruction
input buffer to consume current that exceeds the
device specifications.
SFR Addr. 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 Reset State
Name
TRISB 02C6 — — — — — — — TRISB8 TRISB7 TRISB6 TRISB5 TRISB4 TRISB3 TRISB2 TRISB1 TRISB0 0000 0001 1111 1111
PORTB 02C8 — — — — — — — RB8 RB7 RB6 RB5 RB4 RB3 RB2 RB1 RB0 0000 0000 0000 0000
LATB 02CA — — — — — — — LATB8 LATB7 LATB6 LATB5 LATB4 LATB3 LATB2 LATB1 LATB0 0000 0000 0000 0000
TRISC 02CC TRISC15 TRISC14 TRISC13 — — — — — — — — — — — — — 1110 0000 0000 0000
PORTC 02CE RC15 RC14 RC13 — — — — — — — — — — — — — 0000 0000 0000 0000
LATC 02D0 LATC15 LATC14 LATC13 — — — — — — — — — — — — — 0000 0000 0000 0000
TRISD 02D2 — — — — — — — — — — — — TRISD3 TRISD2 TRISD1 TRISD0 0000 0000 0000 1111
PORTD 02D4 — — — — — — — — — — — — RD3 RD2 RD1 RD0 0000 0000 0000 0000
LATD 02D6 — — — — — — — — — — — — LATD3 LATD2 LATD1 LATD0 0000 0000 0000 0000
TRISE 02D8 — — — — — — — TRISE8 — — TRISE5 TRISE4 TRISE3 TRISE2 TRISE1 TRISE0 0000 0001 0011 1111
PORTE 02DA — — — — — — — RE8 — — RE5 RE4 RE3 RE2 RE1 RE0 0000 0000 0000 0000
LATE 02DC — — — — — — — LATE8 — — LATE5 LATE4 LATE3 LATE2 LATE1 LATE0 0000 0000 0000 0000
TRISF 02DE — — — — — — — — — TRISF6 TRISF5 TRISF4 TRISF3 TRISF2 TRISF1 TRISF0 0000 0000 0111 1111
Confidential
PORTF 02E0 — — — — — — — — — RF6 RF5 RF4 RF3 RF2 RF1 RF0 0000 0000 0000 0000
LATF 02E2 — — — — — — — — — LATF6 LATF5 LATF4 LATF3 LATF2 LATF1 LATF0 0000 0000 0000 0000
Legend: u = uninitialized bit; — = unimplemented bit
Note 1: Refer to “dsPIC30F Family Reference Manual” (DS70046) for descriptions of register bit fields. Not all peripherals, and therefore their bit positions, are available on this device.
dsPIC30F3010/3011
DS70141D-page 59
TABLE 8-2: dsPIC30F3011 PORT REGISTER MAP
DS70141D-page 60
dsPIC30F3010/3011
SFR Addr. 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 Reset State
Name
TRISB 02C6 — — — — — — — — — — TRISB5 TRISB4 TRISB3 TRISB2 TRISB1 TRISB0 0000 0000 0011 1111
PORTB 02C8 — — — — — — — — — — RB5 RB4 RB3 RB2 RB1 RB0 0000 0000 0000 0000
LATB 02CB — — — — — — — — — — LATB5 LATB4 LATB3 LATB2 LATB1 LATB0 0000 0000 0000 0000
TRISC 02CC TRISC15 TRISC14 TRISC13 — — — — — — — — — — — — — 1110 0000 0000 0000
PORTC 02CE RC15 RC14 RC13 — — — — — — — — — — — — — 0000 0000 0000 0000
LATC 02D0 LATC15 LATC14 LATC13 — — — — — — — — — — — — — 0000 0000 0000 0000
TRISD 02D2 — — — — — — — — — — — — — — TRISD1 TRISD0 0000 0000 0000 0011
PORTD 02D4 — — — — — — — — — — — — — — RD1 RD0 0000 0000 0000 0000
LATD 02D6 — — — — — — — — — — — — — — LATD1 LATD0 0000 0000 0000 0000
TRISE 02D8 — — — — — — — TRISE8 — — TRISE5 TRISE4 TRISE3 TRISE2 TRISE1 TRISE0 0000 0001 0011 1111
PORTE 02DA — — — — — — — RE8 — — RE5 RE4 RE3 RE2 RE1 RE0 0000 0000 0000 0000
LATE 02DC — — — — — — — LATE8 — — LATE5 LATE4 LATE3 LATE2 LATE1 LATE0 0000 0000 0000 0000
TRISF 02EE — — — — — — — — — — — — TRISF3 TRISF2 — — 0000 0000 0000 1100
Confidential
PR1
Equal
Comparator x 16 TSYNC
1 Sync
TMR1
Reset
0
0
T1IF
Event Flag 1 Q D TGATE
Q CK
TGATE
TGATE
TCS
TCKPS<1:0>
SOSCO/ TON 2
1X
T1CK
SOSCI
TCY 00
C1
SOSCI
C1 = C2 = 18 pF; R = 100K
dsPIC30F3010/3011
SFR Name Addr. 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 Reset State
TMR1 0100 Timer 1 Register uuuu uuuu uuuu uuuu
PR1 0102 Period Register 1 1111 1111 1111 1111
T1CON 0104 TON — TSIDL — — — — — — TGATE TCKPS1 TCKPS0 — TSYNC TCS — 0000 0000 0000 0000
Legend: u = uninitialized bit; — = unimplemented bit
Note 1: Refer to “dsPIC30F Family Reference Manual” (DS70046) for descriptions of register bit fields. Not all peripherals, and therefore their bit positions, are available on this device.
Confidential
© 2007 Microchip Technology Inc.
dsPIC30F3010/3011
10.0 TIMER2/3 MODULE For 32-bit timer/counter operation, Timer2 is the lsw
and Timer3 is the msw of the 32-bit timer.
Note: This data sheet summarizes features of this group
of dsPIC30F devices and is not intended to be a complete Note: For 32-bit timer operation, T3CON control
reference source. For more information on the CPU, bits are ignored. Only T2CON control bits
peripherals, register descriptions and general device are used for setup and control. Timer 2
functionality, refer to the “dsPIC30F Family Reference clock and gate inputs are utilized for the
Manual” (DS70046).
32-bit timer module, but an interrupt is
This section describes the 32-bit general purpose generated with the Timer3 interrupt flag
Timer module (Timer2/3) and associated operational (T3IF) and the interrupt is enabled with the
modes. Figure 10-1 depicts the simplified block dia- Timer3 Interrupt Enable bit (T3IE).
gram of the 32-bit Timer2/3 module. Figure 10-2 and 16-bit Mode: In the 16-bit mode, Timer2 and Timer3
Figure 10-3 show Timer2/3 configured as two can be configured as two independent 16-bit timers.
independent 16-bit timers; Timer2 and Timer3, Each timer can be set up in either 16-bit Timer mode or
respectively. 16-bit Synchronous Counter mode. See Section 9.0
Note: Timer2 is a ‘Type B’ timer and Timer3 is a "Timer1 Module", Timer1 Module, for details on these
‘Type C’ timer. Please refer to the two operating modes.
appropriate timer type in Section 23.0 The only functional difference between Timer2 and
"Electrical Characteristics" of this Timer3 is that Timer2 provides synchronization of the
document. clock prescaler output. This is useful for high-frequency
The Timer2/3 module is a 32-bit timer, which can be external clock inputs.
configured as two 16-bit timers, with selectable operat- 32-bit Timer Mode: In the 32-bit Timer mode, the timer
ing modes. These timers are utilized by other increments on every instruction cycle up to a match
peripheral modules such as: value, preloads into the combined 32-bit period register
• Input Capture PR3/PR2, then resets to ‘0’ and continues to count.
• Output Compare/Simple PWM For synchronous 32-bit reads of the Timer2/Timer3
The following sections provide a detailed description, pair, reading the lsw (TMR2 register) will cause the
including setup and control registers, along with msw to be read and latched into a 16-bit holding regis-
associated block diagrams for the operational modes of ter, termed TMR3HLD.
the timers. For synchronous 32-bit writes, the holding register
The 32-bit timer has the following modes: (TMR3HLD) must first be written to. When followed by
a write to the TMR2 register, the contents of TMR3HLD
• Two independent 16-bit timers (Timer2 and will be transferred and latched into the MSB of the
Timer3) with all 16-bit operating modes (except 32-bit timer (TMR3).
Asynchronous Counter mode)
32-bit Synchronous Counter Mode: In the 32-bit
• Single 32-bit Timer operation
Synchronous Counter mode, the timer increments on
• Single 32-bit Synchronous Counter the rising edge of the applied external clock signal,
Further, the following operational characteristics are which is synchronized with the internal phase clocks.
supported: The timer counts up to a match value preloaded in the
combined 32-bit period register PR3/PR2, then resets
• ADC Event Trigger
to ‘0’ and continues.
• Timer Gate Operation
When the timer is configured for the Synchronous
• Selectable Prescaler Settings
Counter mode of operation and the CPU goes into the
• Timer Operation during Idle and Sleep modes Idle mode, the timer will stop incrementing, unless the
• Interrupt on a 32-bit Period Register Match TSIDL (T2CON<13>) bit = 0. If TSIDL = 1, the timer
These operating modes are determined by setting the module logic will resume the incrementing sequence
appropriate bit(s) in the 16-bit T2CON and T3CON upon termination of the CPU Idle mode.
SFRs.
TMR3HLD
16
16
Write TMR2
Read TMR2
16
Reset
TMR3 TMR2 Sync
MSB LSB
ADC Event Trigger
Comparator x 32
Equal
PR3 PR2
0
T3IF
Event Flag 1 Q D TGATE(T2CON<6>)
Q CK
TGATE
(T2CON<6>)
TGATE
TCS
TCKPS<1:0>
TON 2
T2CK 1X
Prescaler
Gate 1, 8, 64, 256
Sync 01
TCY
00
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.
PR2
Equal
Comparator x 16
TMR2 Sync
Reset
0
T2IF
Event Flag 1 Q D TGATE
Q CK
TGATE
TGATE
TCS
TCKPS<1:0>
TON 2
T2CK 1X
Gate Prescaler
Sync 01 1, 8, 64, 256
TCY 00
PR3
TMR3
Reset
0
T3IF
Event Flag 1 Q D TGATE
Q CK
TGATE
TGATE
TCS
TCKPS<1:0>
TON 2
Sync 1X
Prescaler
01 1, 8, 64, 256
TCY 00
Note: The dsPIC30F3010/3011 devices do not have external pin inputs to TIMER3. In these devices the following
modes should not be used:
1. TCS = 1
2. TCS = 0 and TGATE = 1 (Gated Time Accumulation)
SFR Name Addr. 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 Reset State
TMR2 0106 Timer2 Register uuuu uuuu uuuu uuuu
TMR3HLD 0108 Timer3 Holding Register (For 32-bit timer operations only) uuuu uuuu uuuu uuuu
TMR3 010A Timer3 Register uuuu uuuu uuuu uuuu
PR2 010C Period Register 2 1111 1111 1111 1111
PR3 010E Period Register 3 1111 1111 1111 1111
T2CON 0110 TON — TSIDL — — — — — — TGATE TCKPS1 TCKPS0 T32 — TCS — 0000 0000 0000 0000
T3CON 0112 TON — TSIDL — — — — — — TGATE TCKPS1 TCKPS0 — — TCS — 0000 0000 0000 0000
Legend: u = uninitialized bit; — = unimplemented bit
Note 1: Refer to “dsPIC30F Family Reference Manual” (DS70046) for descriptions of register bit fields. Not all peripherals, and therefore their bit positions, are available on this device.
Confidential
dsPIC30F3010/3011
DS70141D-page 71
dsPIC30F3010/3011
NOTES:
Note: Timer4 is a ‘Type B’ timer and Timer5 is a Note: For 32-bit timer operation, T5CON control
‘Type C’ timer. Please refer to the bits are ignored. Only T4CON control bits
appropriate timer type in Section 23.0 are used for setup and control. Timer4
"Electrical Characteristics" of this clock and gate inputs are utilized for the
document. 32-bit timer module, but an interrupt is
generated with the Timer5 interrupt flag
(T5IF) and the interrupt is enabled with the
Timer5 Interrupt Enable bit (T5IE).
TMR5HLD
16
16
Write TMR4
Read TMR4
16
Reset
TMR5 TMR4 Sync
MSB LSB
Comparator x 32
Equal
PR5 PR4
0
T5IF
Event Flag Q D
1 TGATE(T4CON<6>)
Q CK
TGATE
TGATE
(T4CON<6>)
TCS
TCKPS<1:0>
TON 2
1X
Prescaler
Gate 1, 8, 64, 256
Sync 01
TCY 00
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.
The dsPIC30F3010/3011 devices do not have external pin inputs to TIMER4 or TIMER5. In these
devices, the following modes should not be used:
1. TCS = 1
2. TCS = 0 and TGATE = 1 (Gated Time Accumulation)
PR4
Equal
Comparator x 16
TMR4 Sync
Reset
0
T4IF
Event Flag 1 Q D TGATE
Q CK
TGATE
TGATE
TCS
TCKPS<1:0>
TON 2
1X
Gate Prescaler
Sync 01 1, 8, 64, 256
TCY 00
Note: The dsPIC30F3010/3011 devices do not have external pin inputs to TIMER4 or TIMER5. In these
devices, the following modes should not be used:
1. TCS = 1
2. TCS = 0 and TGATE = 1 (Gated Time Accumulation)
PR5
TMR5
Reset
0
T5IF
Event Flag 1 Q D TGATE
Q CK
TGATE
TGATE
TCS
TCKPS<1:0>
TON 2
Sync 1X
Prescaler
01 1, 8, 64, 256
TCY 00
Note: The dsPIC30F3010/3011 devices do not have external pin inputs to TIMER4 or TIMER5. In these
devices, the following modes should not be used:
1. TCS = 1
2. TCS = 0 and TGATE = 1 (Gated Time Accumulation)
dsPIC30F3010/3011
SFR Name Addr. 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 Reset State
TMR4 0114 Timer 4 Register uuuu uuuu uuuu uuuu
TMR5HLD 0116 Timer 5 Holding Register (For 32-bit operations only) uuuu uuuu uuuu uuuu
TMR5 0118 Timer 5 Register uuuu uuuu uuuu uuuu
PR4 011A Period Register 4 1111 1111 1111 1111
PR5 011C Period Register 5 1111 1111 1111 1111
T4CON 011E TON — TSIDL — — — — — — TGATE TCKPS1 TCKPS0 T45 — TCS — 0000 0000 0000 0000
T5CON 0120 TON — TSIDL — — — — — — TGATE TCKPS1 TCKPS0 — — TCS — 0000 0000 0000 0000
Legend: u = uninitialized bit; — = unimplemented bit
Note 1: Refer to “dsPIC30F Family Reference Manual” (DS70046) for descriptions of register bit fields. Not all peripherals, and therefore their bit positions, are available on this device.
Confidential
© 2007 Microchip Technology Inc.
dsPIC30F3010/3011
12.0 INPUT CAPTURE MODULE The key operational features of the Input Capture
module are:
Note: This data sheet summarizes features of this group
of dsPIC30F devices and is not intended to be a complete
• Simple Capture Event mode
reference source. For more information on the CPU, • Timer2 and Timer3 mode selection
peripherals, register descriptions and general device • Interrupt on input capture event
functionality, refer to the “dsPIC30F Family Reference
Manual” (DS70046). These operating modes are determined by setting
the appropriate bits in the ICxCON register
This section describes the Input Capture module and
(where x = 1,2,...,N).
associated operational modes. The features provided
by this module are useful in applications requiring Note: The dsPIC30F3010/3011 devices have
Frequency (Period) and Pulse measurement. four capture channels. The channels are
Figure 12-1 depicts a block diagram of the Input designated IC1, IC2, IC7 and IC8 to
Capture module. Input capture is useful for such modes maintain software compatibility with other
as: dsPIC30F devices.
• Frequency/Period/Pulse Measurements
• Additional sources of External Interrupts
16 16
ICx ICTMR
Pin 1 0
Edge FIFO
Prescaler Clock Detection R/W
1, 4, 16 Synchronizer
Logic Logic
3 ICM<2:0> ICxBUF
Mode Select
ICBNE, ICOV
ICI<1:0>
Interrupt
ICxCON Logic
Note: Where ‘x’ is shown, reference is made to the registers or bits associated to the respective input
capture channels 1 through N.
dsPIC30F3010/3011
SFR Name Addr. 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 Reset State
IC1BUF 0140 Input 1 Capture Register uuuu uuuu uuuu uuuu
IC1CON 0142 — — ICSIDL — — — — — ICTMR ICI<1:0> ICOV ICBNE ICM<2:0> 0000 0000 0000 0000
IC2CON 0146 — — ICSIDL — — — — — ICTMR ICI<1:0> ICOV ICBNE ICM<2:0> 0000 0000 0000 0000
IC7CON 015A — — ICSIDL — — — — — ICTMR ICI<1:0> ICOV ICBNE ICM<2:0> 0000 0000 0000 0000
IC8CON 015E — — ICSIDL — — — — — ICTMR ICI<1:0> ICOV ICBNE ICM<2:0> 0000 0000 0000 0000
Legend: u = uninitialized bit; — = unimplemented bit
Note 1: Refer to “dsPIC30F Family Reference Manual” (DS70046) for descriptions of register bit fields. Not all peripherals, and therefore their bit positions, are available on this device.
Confidential
© 2007 Microchip Technology Inc.
dsPIC30F3010/3011
13.0 OUTPUT COMPARE MODULE The key operational features of the Output Compare
module include:
Note: This data sheet summarizes features of this group
of dsPIC30F devices and is not intended to be a complete
• Timer2 and Timer3 Selection mode
reference source. For more information on the CPU, • Simple Output Compare Match mode
peripherals, register descriptions and general device • Dual Output Compare Match mode
functionality, refer to the “dsPIC30F Family Reference
Manual” (DS70046). • Simple PWM mode
• Output Compare during Sleep and Idle modes
This section describes the Output Compare module
and associated operational modes. The features • Interrupt on Output Compare/PWM Event
provided by this module are useful in applications These operating modes are determined by setting the
requiring operational modes such as: appropriate bits in the 16-bit OCxCON SFR (where x =
• Generation of Variable Width Output Pulses 1,2,3,...,N). The dsPIC30F3010/3011 devices have 4/2
compare channels, respectively.
• Power Factor Correction
OCxRS and OCxR in the figure represent the dual
Figure 13-1 depicts a block diagram of the Output
compare registers. In the Dual Compare mode, the
Compare module.
OCxR register is used for the first compare and OCxRS
is used for the second compare.
OCxRS
Output S Q
OCxR OCx
Logic R
3 Output Enable
OCM<2:0>
Mode Select OCFA
Comparator
(for x = 1, 2, 3 or 4)
OCTSEL
0 1 0 1
Note: Where ‘x’ is shown, reference is made to the registers associated with the respective output compare
channels 1 through N.
13.3 Dual Output Compare Match Mode The user must perform the following steps in order to
configure the output compare module for PWM
When control bits OCM<2:0> (OCxCON<2:0>) = 100 operation:
or 101, the selected output compare channel is config-
1. Set the PWM period by writing to the appropriate
ured for one of two dual output compare modes, which
period register.
are:
2. Set the PWM duty cycle by writing to the OCxRS
• Single Output Pulse mode register.
• Continuous Output Pulse mode 3. Configure the output compare module for PWM
operation.
13.3.1 SINGLE PULSE MODE
4. Set the TMRx prescale value and enable the
For the user to configure the module for the generation Timer, TON (TxCON<15>) = 1.
of a single output pulse, the following steps are
required (assuming timer is off): 13.4.1 INPUT PIN FAULT PROTECTION
• Determine instruction cycle time TCY. FOR PWM
• Calculate desired pulse width value based on TCY. When control bits OCM<2:0> (OCxCON<2:0>) = 111,
• Calculate time to start pulse from timer start value the selected output compare channel is again config-
of 0x0000. ured for the PWM mode of operation, with the addi-
• Write pulse width start and stop times into OCxR tional feature of input fault protection. While in this
and OCxRS compare registers (x denotes mode, if a logic ‘0’ is detected on the OCFA/B pin, the
channel 1, 2, ...,N). respective PWM output pin is placed in the high-imped-
ance input state. The OCFLT bit (OCxCON<4>) indi-
• Set Timer Period register to value equal to, or
cates whether a Fault condition has occurred. This
greater than, value in OCxRS compare register.
state will be maintained until both of the following
• Set OCM<2:0> = 100. events have occurred:
• Enable timer, TON (TxCON<15>) = 1.
• The external Fault condition has been removed.
To initiate another single pulse, issue another write to • The PWM mode has been re-enabled by writing
set OCM<2:0> = 100. to the appropriate control bits.
Duty Cycle
dsPIC30F3010/3011
SFR Name Addr. 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 Reset State
OC1RS 0180 Output Compare 1 Secondary Register 0000 0000 0000 0000
OC1R 0182 Output Compare 1 Main Register 0000 0000 0000 0000
OC1CON 0184 — — OCSIDL — — — — — — — — OCFLT OCTSEL OCM<2:0> 0000 0000 0000 0000
OC2RS 0186 Output Compare 2 Secondary Register 0000 0000 0000 0000
OC2R 0188 Output Compare 2 Main Register 0000 0000 0000 0000
OC2CON 018A — — OCSIDL — — — — — — — — OCFLT OCTSEL OCM<2:0> 0000 0000 0000 0000
OC3RS* 018C Output Compare 3 Secondary Register 0000 0000 0000 0000
OC3R* 018E Output Compare 3 Main Register 0000 0000 0000 0000
OC3CON* 0190 — — OCSIDL — — — — — — — — OCFLT OCTSEL OCM<2:0> 0000 0000 0000 0000
OC4RS* 0192 Output Compare 4 Secondary Register 0000 0000 0000 0000
OC4R* 0194 Output Compare 4 Main Register 0000 0000 0000 0000
OC4CON* 0196 — — OCSIDL — — — — — — — — OCFLT OCTSEL OCM<2:0> 0000 0000 0000 0000
Legend: u = uninitialized bit; — = unimplemented bit, * = not available on dsPIC30F3010
Note 1: Refer to “dsPIC30F Family Reference Manual” (DS70046) for descriptions of register bit fields. Not all peripherals, and therefore their bit positions, are available on this device.
Confidential
© 2007 Microchip Technology Inc.
dsPIC30F3010/3011
14.0 QUADRATURE ENCODER The operational features of the QEI include:
INTERFACE (QEI) MODULE • Three input channels for two phase signals and
index pulse
Note: This data sheet summarizes features of this group • 16-bit up/down position counter
of dsPIC30F devices and is not intended to be a complete
reference source. For more information on the CPU, • Count direction status
peripherals, register descriptions and general device • Position Measurement (x2 and x4) mode
functionality, refer to the “dsPIC30F Family Reference
Manual” (DS70046). • Programmable digital noise filters on inputs
• Alternate 16-bit Timer/Counter mode
This section describes the Quadrature Encoder
Interface (QEI) module and associated operational • Quadrature Encoder Interface interrupts
modes. The QEI module provides the interface to These operating modes are determined by setting the
incremental encoders for obtaining mechanical position appropriate bits QEIM<2:0> (QEICON<10:8>).
data. Figure 14-1 depicts the Quadrature Encoder Interface
block diagram.
TQCKPS<1:0>
Sleep Input TQCS
2
TCY
0
Synchronize
Prescaler
Det 1 1, 8, 64, 256
1
QEIM<2:0>
0
QEIIF
D Q
TQGATE Event
CK Q Flag
Programmable
QEB
Digital Filter
Programmable Up/Down(1)
INDX
Digital Filter
Note 1: In dsPIC30F3010/3011, the UPDN pin is not available. Up/Down logic bit can still be polled by software.
SFR
Addr. 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 Reset State
Name
QEICON 0122 CNTERR — QEISIDL INDX UPDN QEIM2 QEIM1 QEIM0 SWPAB — TQGATE TQCKPS1 TQCKPS0 POSRES TQCS UPDN_SRC 0000 0000 0000 0000
DFLTCON 0124 — — — — — IMV1 IMV0 CEID QEOUT QECK2 QECK1 QECK0 — — — — 0000 0000 0000 0000
POSCNT 0126 Position Counter<15:0> 0000 0000 0000 0000
MAXCNT 0128 Maximun Count<15:0> 1111 1111 1111 1111
ADPCFG 02A8 — — — — — — — PCFG8 PCFG7 PCFG6 PCFG5 PCFG4 PCFG3 PCFG2 PCFG1 PCFG0 0000 0000 0000 0000
Legend: u = uninitialized bit; — = unimplemented bit
Note 1: Refer to “dsPIC30F Family Reference Manual” (DS70046) for descriptions of register bit fields. Not all peripherals, and therefore their bit positions, are available on this device.
Confidential
dsPIC30F3010/3011
DS70141D-page 89
dsPIC30F3010/3011
NOTES:
PWMCON1
PWM Enable and Mode SFRs
PWMCON2
PWM Manual
OVDCON
Control SFR
PWM Generator #3
PDC3 Buffer
16-bit Data Bus
PDC3
FLTA
PTPER Buffer
PTCON
SEVTCMP PTDIR
15.1.5 PWM TIME BASE PRESCALER EQUATION 15-1: PWM PERIOD (FREE-
The input clock to PTMR (FOSC/4), has prescaler RUNNING MODE)
options of 1:1, 1:4, 1:16, or 1:64, selected by control
TCY • (PTPER + 1)
bits PTCKPS<1:0> in the PTCON SFR. The prescaler TPWM =
counter is cleared when any of the following occurs: (PTMR Prescale Value)
• a write to the PTMR register
• a write to the PTCON register If the PWM time base is configured for one of the Up/
• any device Reset Down Count modes, the PWM period is given by
Equation 15-2.
The PTMR register is not cleared when PTCON is
written.
EQUATION 15-2: PWM PERIOD (UP/DOWN
15.1.6 PWM TIME BASE POSTSCALER COUNTING MODE)
The match output of PTMR can optionally be post- 2 • TCY • (PTPER + 0.75)
scaled through a 4-bit postscaler (which gives a 1:1 to TPWM =
(PTMR Prescale Value)
1:16 scaling).
The postscaler counter is cleared when any of the
following occurs: The maximum resolution (in bits) for a given device
oscillator and PWM frequency can be determined using
• a write to the PTMR register Equation 15-3:
• a write to the PTCON register
• any device Reset EQUATION 15-3: PWM RESOLUTION
The PTMR register is not cleared when PTCON is written.
log (2 • TPWM / TCY)
Resolution =
log (2)
PWMxH
PWMxL
SFR Name Addr. 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 Reset State
PTCON 01C0 PTEN — PTSIDL — — — — — PTOPS<3:0> PTCKPS<1:0> PTMOD<1:0> 0000 0000 0000 0000
PTMR 01C2 PTDIR PWM Timer Count Value 0000 0000 0000 0000
PTPER 01C4 — PWM Time Base Period Register 0000 0000 0000 0000
SEVTCMP 01C6 SEVTDIR PWM Special Event Compare Register 0111 1111 1111 1111
PWMCON1 01C8 — — — — — PTMOD3 PTMOD2 PTMOD1 — PEN3H PEN2H PEN1H — PEN3L PEN2L PEN1L 0000 0000 1111 1111
PWMCON2 01CA — — — — SEVOPS<3:0> — — — — — — OSYNC UDIS 0000 0000 0000 0000
DTCON1 01CC — — — — — — — — DTAPS<1:0> Dead-Time A Value 0000 0000 0000 0000
FLTACON 01D0 — — FAOV3H FAOV3L FAOV2H FAOV2L FAOV1H FAOV1L FLTAM — — — — FAEN3 FAEN2 FAEN1 0000 0000 0000 0000
OVDCON 01D4 — — POVD3H POVD3L POVD2H POVD2L POVD1H POVD1L — — POUT3H POUT3L POUT2H POUT2L POUT1H POUT1L 1111 1111 0000 0000
PDC1 01D6 PWM Duty Cycle #1 Register 0000 0000 0000 0000
PDC2 01D8 PWM Duty Cycle #2 Register 0000 0000 0000 0000
PDC3 01DA PWM Duty Cycle #3 Register 0000 0000 0000 0000
Legend: u = uninitialized bit; — = unimplemented bit
Note 1: Refer to “dsPIC30F Family Reference Manual” (DS70046) for descriptions of register bit fields. Not all peripherals, and therefore their bit positions, are available on this device.
Confidential
dsPIC30F3010/3011
DS70141D-page 101
dsPIC30F3010/3011
NOTES:
SPI1BUF SPI1BUF
Receive Transmit
SPI1SR
SDI1 bit 0
SDO1 Shift
clock
SS & FSYNC Clock Edge
Control Select
SS1 Control
Secondary Primary
Prescaler Prescaler FCY
1:1 – 1:8 1, 4, 16, 64
SCK1
SDOx SDIy
Note: x = 1 or 2, y = 1 or 2.
dsPIC30F3010/3011
SFR
Addr. 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 Reset State
Name
SPI1STAT 0220 SPIEN — SPISIDL — — — — — — SPIROV — — — — SPITBF SPIRBF 0000 0000 0000 0000
SPI1CON 0222 — FRMEN SPIFSD — DISSDO MODE16 SMP CKE SSEN CKP MSTEN SPRE2 SPRE1 SPRE0 PPRE1 PPRE0 0000 0000 0000 0000
SPI1BUF 0224 Transmit and Receive Buffer 0000 0000 0000 0000
Legend: u = uninitialized bit; — = unimplemented bit
Note 1: Refer to “dsPIC30F Family Reference Manual” (DS70046) for descriptions of register bit fields. Not all peripherals, and therefore their bit positions, are available on this device.
Confidential
© 2007 Microchip Technology Inc.
dsPIC30F3010/3011
17.0 I2C™ MODULE 17.1.1 VARIOUS I2C MODES
The following types of I2C operation are supported:
Note: This data sheet summarizes features of this group
of dsPIC30F devices and is not intended to be a complete • I2C Slave operation with 7-bit address
reference source. For more information on the CPU,
peripherals, register descriptions and general device
• I2C Slave operation with 10-bit address
functionality, refer to the “dsPIC30F Family Reference • I2C Master operation with 7 or 10-bit address
Manual” (DS70046).
See the I2C programmer’s model in Figure 17-1.
2
The Inter-Integrated Circuit (I C) module provides
complete hardware support for both Slave and Multi- 17.1.2 PIN CONFIGURATION IN I2C MODE
Master modes of the I2C serial communication I2C has a 2-pin interface; pin SCL is clock and pin SDA
standard, with a 16-bit interface. is data.
This module offers the following key features:
17.1.3 I2C REGISTERS
• I2C interface supporting both master and slave
operation. I2CCON and I2CSTAT are Control and Status
• I2C Slave mode supports 7 and 10-bit address. registers, respectively. The I2CCON register is read-
able and writable. The lower 6 bits of I2CSTAT are read
• I2C Master mode supports 7 and 10-bit address.
only. The remaining bits of the I2CSTAT are read/write.
• I2C port allows bidirectional transfers between
master and slaves. I2CRSR is the Shift register used for shifting data,
whereas I2CRCV is the Buffer register to which data
• Serial clock synchronization for I2C port can be
bytes are written, or from which data bytes are read.
used as a handshake mechanism to suspend and
I2CRCV is the receive buffer, as shown in Figure 17-1.
resume serial transfer (SCLREL control).
I2CTRN is the Transmit register to which bytes are
• I2C supports multi-master operation; detects bus written during a transmit operation, as shown in
collision and will arbitrate accordingly. Figure 17-2.
The I2CADD register holds the slave address. A status
17.1 Operating Function Description bit, ADD10, indicates 10-bit Address mode. The
The hardware fully implements all the master and I2CBRG acts as the Baud Rate Generator (BRG)
slave functions of the I2C Standard and Fast mode reload value.
specifications, as well as 7 and 10-bit addressing. In receive operations, I2CRSR and I2CRCV together
Thus, the I2C module can operate either as a slave or form a double-buffered receiver. When I2CRSR
a master on an I2C bus. receives a complete byte, it is transferred to I2CRCV
and an interrupt pulse is generated. During
transmission, the I2CTRN is not double buffered.
Note: Following a Restart condition in 10-bit
mode, the user only needs to match the
first 7-bit address.
I2CRCV (8 bits)
bit 7 bit 0
I2CTRN (8 bits)
bit 7 bit 0
I2CBRG (9 bits)
bit 8 bit 0
I2CCON (16 bits)
bit 15 bit 0
I2CSTAT (16 bits)
bit 15 bit 0
I2CADD (10 bits)
bit 9 bit 0
Internal
Data Bus
I2CRCV
Read
Shift
SCL Clock
I2CRSR
LSB
SDA Addr_Match
Match Detect
Write
I2CADD
Read
Start and
Stop bit Detect
Write
I2CSTAT
Start, Restart,
Stop bit Generate
Read
Control Logic
Collision
Detect
Write
I2CCON
Acknowledge
Read
Generation
Clock
Stretching Write
I2CTRN
Reload
Control Write
As per the I2C standard, FSCL may be 100 kHz or The Master will continue to monitor the SDA and SCL
400 kHz. However, the user can specify any baud rate pins, and if a Stop condition occurs, the MI2CIF bit will
up to 1 MHz. I2CBRG values of ‘0’ or ‘1’ are illegal. be set.
A write to the I2CTRN will start the transmission of data
EQUATION 17-1: I2CBRG VALUE at the first data bit, regardless of where the transmitter
left off when bus collision occurred.
In a Multi-Master environment, the interrupt generation
I2CBRG = ( FFSCL
CY – FCY
1,111,111
) –1
on the detection of Start and Stop conditions allows the
determination of when the bus is free. Control of the I2C
bus can be taken when the P bit is set in the I2CSTAT
17.12.4 CLOCK ARBITRATION register, or the bus is Idle and the S and P bits are
Clock arbitration occurs when the master deasserts the cleared.
SCL pin (SCL allowed to float high) during any receive,
transmit or Restart/Stop condition. When the SCL pin is 17.13 I2C Module Operation During CPU
allowed to float high, the Baud Rate Generator is Sleep and Idle Modes
suspended from counting until the SCL pin is actually
sampled high. When the SCL pin is sampled high, the 17.13.1 I2C OPERATION DURING CPU
Baud Rate Generator is reloaded with the contents of SLEEP MODE
I2CBRG and begins counting. This ensures that the
When the device enters Sleep mode, all clock sources
SCL high time will always be at least one BRG rollover
to the module are shutdown and stay at logic ‘0’. If
count in the event that the clock is held low by an
Sleep occurs in the middle of a transmission, and the
external device.
state machine is partially into a transmission as the
17.12.5 MULTI-MASTER COMMUNICATION, clocks stop, then the transmission is aborted. Similarly,
BUS COLLISION AND BUS if Sleep occurs in the middle of a reception, then the
reception is aborted.
ARBITRATION
Multi-Master operation support is achieved by bus 17.13.2 I2C OPERATION DURING CPU IDLE
arbitration. When the master outputs address/data bits MODE
onto the SDA pin, arbitration takes place when the
For the I2C, the I2CSIDL bit selects if the module will
master outputs a ‘1’ on SDA, by letting SDA float high
stop on Idle or continue on Idle. If I2CSIDL = 0, the
while another master asserts a ‘0’. When the SCL pin
module will continue operation on assertion of the Idle
floats high, data should be stable. If the expected data
mode. If I2CSIDL = 1, the module will stop on Idle.
on SDA is a ‘1’ and the data sampled on the SDA
pin = 0, then a bus collision has taken place. The
master will set the MI2CIF pulse and reset the master
portion of the I2C port to its Idle state.
SFR Name Addr. 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 Reset State
I2CRCV 0200 — — — — — — — — Receive Register 0000 0000 0000 0000
I2CTRN 0202 — — — — — — — — Transmit Register 0000 0000 1111 1111
I2CBRG 0204 — — — — — — — Baud Rate Generator 0000 0000 0000 0000
I2CCON 0206 I2CEN — I2CSIDL SCLREL IPMIEN A10M DISSLW SMEN GCEN STREN ACKDT ACKEN RCEN PEN RSEN SEN 0001 0000 0000 0000
I2CSTAT 0208 ACKSTAT TRSTAT — — — BCL GCSTAT ADD10 IWCOL I2COV D_A P S R_W RBF TBF 0000 0000 0000 0000
I2CADD 020A — — — — — — Address Register 0000 0000 0000 0000
Legend: u = uninitialized bit; — = unimplemented bit
Note 1: Refer to “dsPIC30F Family Reference Manual” (DS70046) for descriptions of register bit fields. Not all peripherals, and therefore their bit positions, are available on this device.
Confidential
dsPIC30F3010/3011
DS70141D-page 113
dsPIC30F3010/3011
NOTES:
Write Write
– Control TSR
– Control Buffer
– Generate Flags
– Generate Interrupt
Load TSR
UxTXIF
UTXBRK
Data
Transmit Shift Register (UxTSR)
‘0’ (Start)
UxTX
‘1’ (Stop)
Control
Signals
Note: x = 1 or 2
dsPIC30F3010 only has UART1.
UxMODE UxSTA
LPBACK 8-9
From UxTX
1 Load RSR
to Buffer Control
FERR
PERR
Receive Shift Register Signals
UxRX
0 (UxRSR)
SFR Name Addr. 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 Reset State
U1MODE 020C UARTEN — USIDL — — ALTIO — — WAKE LPBACK ABAUD — — PDSEL1 PDSEL0 STSEL 0000 0000 0000 0000
U1STA 020E UTXISEL — — — UTXBRK UTXEN UTXBF TRMT URXISEL1 URXISEL0 ADDEN RIDLE PERR FERR OERR URXDA 0000 0001 0001 0000
U1TXREG 0210 — — — — — — — UTX8 Transmit Register 0000 000u uuuu uuuu
U1RXREG 0212 — — — — — — — URX8 Receive Register 0000 0000 0000 0000
U1BRG 0214 Baud Rate Generator Prescaler 0000 0000 0000 0000
Legend: u = uninitialized bit; — = unimplemented bit
Note 1: Refer to “dsPIC30F Family Reference Manual” (DS70046) for descriptions of register bit fields. Not all peripherals, and therefore their bit positions, are available on this device.
U2BRG 021E Baud Rate Generator Prescaler 0000 0000 0000 0000
Legend: u = uninitialized bit; — = unimplemented bit
Note 1: Refer to “dsPIC30F Family Reference Manual” (DS70046) for descriptions of register bit fields. Not all peripherals, and therefore their bit positions, are available on this device.
dsPIC30F3010/3011
DS70141D-page 121
dsPIC30F3010/3011
NOTES:
AVDD AVSS
VREF+
VREF-
AN0 AN0
AN3 +
S/H CH1 ADC
AN6 -
Format
Data
AN7 -
16-word, 10-bit
Dual Port
Buffer
Bus Interface
AN2 AN2
AN5 +
S/H CH3
AN8 - CH1,CH2,
CH3,CH0 Sample/Sequence
sample Control
AN0
AN1 Input
AN2 Switches Input Mux
AN3 AN3 Control
AN4 AN4
AN5 AN5
*AN6 AN6
*AN7 AN7
*AN8 AN8 +
S/H CH0
AN1 -
TAD Sampling
ADC Speed RS Max VDD Temperature A/D Channels Configuration
Minimum Time Min
Up to 83.33 ns 12 TAD 500Ω 4.5V to 5.5V -40°C to +85°C VREF- VREF+
1 Msps(1)
CH1, CH2 or CH3
ANx
S/H
ADC
CH0
S/H
CHX
ANx
S/H ADC
ADC
CH0
S/H
ANx CHX
S/H ADC
ANx or VREF-
ANx CHX
S/H ADC
ANx or VREF-
Note 1: External VREF- and VREF+ pins must be used for correct operation. See Figure 19-2 for recommended
circuit.
VDD
44
43
42
41
40
39
38
37
36
35
34
VDD
VSS
1 33
2 32 VDD VDD VDD
3 31
C8 C7 C6
4 30 1 μF 0.1 μF 0.01 μF
5 VSS 29
6 VSS dsPIC30F3011 VDD 28 VDD
VDD 7 VDD 27
8 26 VDD VDD VDD
9 25 C5 C4 C3
1 μF 0.1 μF 0.01 μF
VREF+
VREF-
10 24
AVDD
AVSS
11 23
12
13
14
15
16
17
18
19
20
21
22
R1 VDD
10 R2
10
VDD
C2 C1
0.1 μF 0.01 μF
VDD
RIC ≤ 250Ω Sampling RSS ≤ 3 kΩ
Switch
VT = 0.6V
Rs ANx RSS
CHOLD
VA CPIN I leakage = DAC capacitance
VT = 0.6V ± 500 nA = 4.4 pF
VSS
Note: CPIN value depends on device package and is not tested. Effect of CPIN negligible if Rs ≤ 5 kΩ.
RAM Contents: d09 d08 d07 d06 d05 d04 d03 d02 d01 d00
Read to Bus:
Signed Fractional (1.15) d09 d08 d07 d06 d05 d04 d03 d02 d01 d00 0 0 0 0 0 0
Fractional (1.15) d09 d08 d07 d06 d05 d04 d03 d02 d01 d00 0 0 0 0 0 0
Signed Integer d09 d09 d09 d09 d09 d09 d09 d08 d07 d06 d05 d04 d03 d02 d01 d00
Integer 0 0 0 0 0 0 d09 d08 d07 d06 d05 d04 d03 d02 d01 d00
SFR Name Addr. 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 Reset State
ADCBUF0 0280 — — — — — — ADC Data Buffer 0 0000 00uu uuuu uuuu
ADCBUF1 0282 — — — — — — ADC Data Buffer 1 0000 00uu uuuu uuuu
ADCBUF2 0284 — — — — — — ADC Data Buffer 2 0000 00uu uuuu uuuu
ADCBUF3 0286 — — — — — — ADC Data Buffer 3 0000 00uu uuuu uuuu
ADCBUF4 0288 — — — — — — ADC Data Buffer 4 0000 00uu uuuu uuuu
ADCBUF5 028A — — — — — — ADC Data Buffer 5 0000 00uu uuuu uuuu
ADCBUF6 028C — — — — — — ADC Data Buffer 6 0000 00uu uuuu uuuu
ADCBUF7 028E — — — — — — ADC Data Buffer 7 0000 00uu uuuu uuuu
ADCBUF8 0290 — — — — — — ADC Data Buffer 8 0000 00uu uuuu uuuu
ADCBUF9 0292 — — — — — — ADC Data Buffer 9 0000 00uu uuuu uuuu
ADCBUFA 0294 — — — — — — ADC Data Buffer 10 0000 00uu uuuu uuuu
ADCBUFB 0296 — — — — — — ADC Data Buffer 11 0000 00uu uuuu uuuu
ADCBUFC 0298 — — — — — — ADC Data Buffer 12 0000 00uu uuuu uuuu
ADCBUFD 029A — — — — — — ADC Data Buffer 13 0000 00uu uuuu uuuu
ADCBUFE 029C — — — — — — ADC Data Buffer 14 0000 00uu uuuu uuuu
Confidential
dsPIC30F3010/3011
ADPCFG 02A8 — — — — — — — PCFG8* PCFG7* PCFG6* PCFG5 PCFG4 PCFG3 PCFG2 PCFG1 PCFG0 0000 0000 0000 0000
ADCSSL 02AA — — — — — — — CSSL8* CSSL7* CSSL6* CSSL5 CSSL4 CSSL3 CSSL2 CSSL1 CSSL0 0000 0000 0000 0000
Legend: u = uninitialized bit; — = unimplemented bit, * = not available on dsPIC30F3010
Note 1: Refer to “dsPIC30F Family Reference Manual” (DS70046) for descriptions of register bit fields. Not all peripherals, and therefore their bit positions, are available on this device.
DS70141D-page 133
dsPIC30F3010/3011
NOTES:
Wake-up Request
FPLL
OSC1
Primary PLL
Oscillator x4, x8, x16 PLL
OSC2
Lock COSC<2:0>
Primary Osc
TUN<3:0> NOSC<2:0>
4
Primary
Oscillator OSWEN
Stability Detector
Internal Fast RC
Oscillator (FRC)
Oscillator
POR Done Start-up
Timer Clock
Programmable
Switching
Secondary Osc Clock Divider System
and Control
Clock
Block
SOSCO
32 kHz LP Secondary 2
Oscillator
Oscillator
SOSCI Stability Detector
POST<1:0>
CF
Fail-Safe Clock
FCKSM<1:0> Monitor (FSCM)
2 Oscillator Trap
To Timer1
RESET
Instruction
Digital
Glitch Filter
MCLR
Sleep or Idle
WDT
Module
Illegal Opcode/
Uninitialized W Register
20.3.1 POR: POWER-ON RESET The POR circuit inserts a small delay, TPOR, which is
nominally 10 μs and ensures that the device bias
A power-on event will generate an internal POR pulse
circuits are stable. Furthermore, a user selected power-
when a VDD rise is detected. The Reset pulse will occur
up time-out (TPWRT) is applied. The TPWRT parameter
at the POR circuit threshold voltage (VPOR), which is
is based on device Configuration bits and can be 0 ms
nominally 1.85V. The device supply voltage
(no delay), 4 ms, 16 ms or 64 ms. The total delay is at
characteristics must meet specified starting voltage
device power-up TPOR + TPWRT. When these delays
and rise rate requirements. The POR pulse will reset a
have expired, SYSRST will be negated on the next
POR timer and place the device in the Reset state. The
leading edge of the Q1 clock, and the PC will jump to
POR also selects the device clock source identified by
the Reset vector.
the oscillator configuration fuses.
The timing for the SYSRST signal is shown in
Figure 20-3 through Figure 20-5.
VDD
MCLR
INTERNAL POR
TOST
OST TIME-OUT
TPWRT
PWRT TIME-OUT
INTERNAL Reset
FIGURE 20-4: TIME-OUT SEQUENCE ON POWER-UP (MCLR NOT TIED TO VDD): CASE 1
VDD
MCLR
INTERNAL POR
TOST
OST TIME-OUT
TPWRT
PWRT TIME-OUT
INTERNAL Reset
FIGURE 20-5: TIME-OUT SEQUENCE ON POWER-UP (MCLR NOT TIED TO VDD): CASE 2
VDD
MCLR
INTERNAL POR
TOST
OST TIME-OUT
TPWRT
PWRT TIME-OUT
INTERNAL Reset
20.3.1.2 Operating without FSCM and PWRT FIGURE 20-6: EXTERNAL POWER-ON
If the FSCM is disabled and the Power-up Timer RESET CIRCUIT (FOR
(PWRT) is also disabled, then the device will exit SLOW VDD POWER-UP)
rapidly from Reset on power-up. If the clock source is VDD
FRC, LPRC, EXTRC or EC, it will be active
immediately. D R
If the FSCM is disabled and the system clock has not R1
MCLR
started, the device will be in a frozen state at the Reset
vector until the system clock starts. From the user’s C dsPIC30F
perspective, the device will appear to be in Reset until
a system clock is available.
Note 1: External Power-on Reset circuit is
20.3.2 BOR: PROGRAMMABLE required only if the VDD power-up slope
BROWN-OUT RESET is too slow. The diode D helps discharge
the capacitor quickly when VDD powers
The BOR (Brown-out Reset) module is based on an down.
internal voltage reference circuit. The main purpose of
the BOR module is to generate a device Reset when 2: R should be suitably chosen so as to
a brown-out condition occurs. Brown-out conditions make sure that the voltage drop across
are generally caused by glitches on the AC mains R does not violate the device’s electrical
(i.e., missing portions of the AC cycle waveform due specification.
to bad power transmission lines or voltage sags due 3: R1 should be suitably chosen so as to
to excessive current draw when a large inductive load limit any current flowing into MCLR from
is turned on). external capacitor C, in the event of
The BOR module allows selection of one of the MCLR/VPP pin breakdown due to
following voltage trip points: Electrostatic Discharge (ESD) or
Electrical Overstress (EOS).
• 2.6V-2.71V
• 4.1V-4.4V
• 4.58V-4.73V Note: Dedicated supervisory devices, such as
the MCP1XX and MCP8XX, may also be
Note: The BOR voltage trip points indicated here used as an external Power-on Reset
are nominal values provided for design circuit.
guidance only.
20.5 Power-Saving Modes If EC, FRC, LPRC or EXTRC oscillators are used, then
a delay of TPOR (~ 10 μs) is applied. This is the smallest
There are two power-saving states that can be entered delay possible on wake-up from Sleep.
through the execution of a special instruction, PWRSAV.
Moreover, if LP oscillator was active during Sleep, and
These are: Sleep and Idle. LP is the oscillator used on wake-up, then the start-up
The format of the PWRSAV instruction is as follows: delay will be equal to TPOR. PWRT delay and OST
timer delay are not applied. In order to have the small-
PWRSAV <parameter>, where ‘parameter’ defines est possible start-up delay when waking up from Sleep,
Idle or Sleep mode. one of these faster wake-up options should be selected
before entering Sleep.
dsPIC30F3010/3011
SFR Addr
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 Reset State
Name .
RCON 0740 TRAPR IOPUWR BGST — EXTR SWR SWDTEN WDTO SLEEP IDLE BOR POR Depends on type of Reset.
OSCCON 0742 TUN3 TUN2 COSC<1:0> TUN1 TUN0 NOSC<1:0> POST<1:0> LOCK — CF — LPOSCEN OSWEN Depends on configuration bits.
Legend: u = uninitialized bit; — = unimplemented bit
Note 1: Refer to “dsPIC30F Family Reference Manual “(DS70046) for descriptions of register bit fields. Not all peripherals, and therefore their bit positions, are available on this device.
†NOTICE:
Stresses above those listed under “Absolute Maximum Ratings” may cause permanent damage to the
device. This is a stress rating only and functional operation of the device at those or any other conditions above those
indicated in the operation listings of this specification is not implied. Exposure to maximum rating conditions for
extended periods may affect device reliability.
23.1 DC Characteristics
VDD
Load Condition 1 - for all pins except OSC2 Load Condition 2 - for OSC2
VDD/2
RL Pin CL
VSS
CL
Pin RL = 464 Ω
CL = 50 pF for all pins except OSC2
VSS 5 pF for OSC2 output
Q4 Q1 Q2 Q3 Q4 Q1
OSC1
OS20
OS30 OS30 OS31 OS31
OS25
CLKO
OS40 OS41
Param
Characteristic Min Typ(1) Max Units Conditions
No.
OS61 x4 PLL — 0.251 0.413 % -40°C ≤ TA ≤ +85°C VDD = 3.0 to 3.6V
— 0.251 0.413 % -40°C ≤ TA ≤ +125°C VDD = 3.0 to 3.6V
— 0.256 0.47 % -40°C ≤ TA ≤ +85°C VDD = 4.5 to 5.5V
— 0.256 0.47 % -40°C ≤ TA ≤ +125°C VDD = 4.5 to 5.5V
x8 PLL — 0.355 0.584 % -40°C ≤ TA ≤ +85°C VDD = 3.0 to 3.6V
— 0.355 0.584 % -40°C ≤ TA ≤ +125°C VDD = 3.0 to 3.6V
— 0.362 0.664 % -40°C ≤ TA ≤ +85°C VDD = 4.5 to 5.5V
— 0.362 0.664 % -40°C ≤ TA ≤ +125°C VDD = 4.5 to 5.5V
x16 PLL — 0.67 0.92 % -40°C ≤ TA ≤ +85°C VDD = 3.0 to 3.6V
— 0.632 0.956 % -40°C ≤ TA ≤ +85°C VDD = 4.5 to 5.5V
— 0.632 0.956 % -40°C ≤ TA ≤ +125°C VDD = 4.5 to 5.5V
Note 1: These parameters are characterized but not tested in manufacturing.
Param
Characteristic Min Typ Max Units Conditions
No.
Internal FRC Jitter @ FRC Freq. = 7.37 MHz(1)
OS62 FRC — +0.04 +0.16 % -40°C ≤ TA ≤ +85°C VDD = 3.0-3.6V
— +0.07 +0.23 % -40°C ≤ TA ≤ +125°C VDD = 4.5-5.5V
FRC with 4x PLL — +0.31 +0.62 % -40°C ≤ TA ≤ +85°C VDD = 3.0-3.6V
— +0.34 +0.77 % -40°C ≤ TA ≤ +125°C VDD = 4.5-5.5V
FRC with 8x PLL — +0.44 +0.87 % -40°C ≤ TA ≤ +85°C VDD = 3.0-3.6V
— +0.48 +1.08 % -40°C ≤ TA ≤ +125°C VDD = 4.5-5.5V
FRC with 16x PLL — +0.71 +1.23 % -40°C ≤ TA ≤ +125°C VDD = 4.5-5.5V
Internal FRC Accuracy @ FRC Freq. = 7.37 MHz(1)
OS63 FRC — — +0.5 % -40°C ≤ TA ≤ +125°C VDD = 3.0-5.5V
Internal FRC Drift @ FRC Freq. = 7.37 MHz(1)
OS64 -0.7 — 0.5 % -40°C ≤ TA ≤ +85°C VDD = 3.0-3.6V
-0.7 — 0.7 % -40°C ≤ TA ≤ +125°C VDD = 3.0-3.6V
-0.7 — 0.5 % -40°C ≤ TA ≤ +85°C VDD = 4.5-5.5V
-0.7 — 0.7 % -40°C ≤ TA ≤ +125°C VDD = 4.5-5.5V
Note 1: Frequency calibrated at 25°C and 5V. TUN bits can be used to compensate for temperature drift.
2: Overall FRC variation can be calculated by adding the absolute values of jitter, accuracy and drift
percentages.
TABLE 23-18: INTERNAL RC ACCURACY
Standard Operating Conditions: 2.5V to 5.5V
(unless otherwise stated)
AC CHARACTERISTICS
Operating temperature -40°C ≤ TA ≤ +85°C for Industrial
-40°C ≤ TA ≤ +125°C for Extended
Param
Characteristic Min Typ Max Units Conditions
No.
LPRC @ Freq. = 512 kHz(1)
OS65 -35 — +35 % —
Note 1: Change of LPRC frequency as VDD changes.
I/O Pin
(Input)
DI35
DI40
VDD SY12
MCLR
Internal SY10
POR
SY11
PWRT
Time-out
SY30
OSC
Time-out
Internal
RESET
Watchdog
Timer
RESET
SY20
SY13
SY13
I/O Pins
SY35
FSCM Note: Refer to Figure 23-2 for load conditions.
Delay
TABLE 23-20: RESET, WATCHDOG TIMER, OSCILLATOR START-UP TIMER, POWER-UP TIMER
AND BROWN-OUT RESET TIMING REQUIREMENTS
Standard Operating Conditions: 2.5V to 5.5V
(unless otherwise stated)
AC CHARACTERISTICS
Operating temperature -40°C ≤ TA ≤ +85°C for Industrial
-40°C ≤ TA ≤ +125°C for Extended
Param
Symbol Characteristic(1) Min Typ(2) Max Units Conditions
No.
SY10 TmcL MCLR Pulse Width (low) 2 — — μs -40°C to +85°C
SY11 TPWRT Power-up Timer Period 3 4 6 ms -40°C to +85°C
12 16 22 User programmable
50 64 90
SY12 TPOR Power On Reset Delay 3 10 30 μs -40°C to +85°C
SY13 TIOZ I/O High-impedance from MCLR — 0.8 1.0 μs
Low or Watchdog Timer Reset
SY20 TWDT1 Watchdog Timer Time-out Period 1.4 2.1 2.8 ms VDD = 5V, -40°C to +85°C
(No Prescaler)
TWDT2 1.4 2.1 2.8 ms VDD = 3V, -40°C to +85°C
SY25 TBOR Brown-out Reset Pulse Width(3) 100 — — μs VDD ≤ VBOR (D034)
SY30 TOST Oscillation Start-up Timer Period — 1024 TOSC — — TOSC = OSC1 period
SY35 TFSCM Fail-Safe Clock Monitor Delay — 500 900 μs -40°C to +85°C
Note 1: These parameters are characterized but not tested in manufacturing.
2: Data in “Typ” column is at 5V, 25°C unless otherwise stated.
3: Refer to Figure 23-1 and Table 23-10 for BOR.
VBGAP
0V
TxCK
Tx10 Tx11
Tx15 Tx20
OS60
TMRX
QEB
TQ10 TQ11
TQ15 TQ20
POSCNT
ICX
IC10 IC11
IC15
OCx
(Output Compare
or PWM Mode) OC11 OC10
OC20
OCFA/OCFB
OC15
OCx
MP30
FLTA/B
MP20
PWMx
MP11 MP10
PWMx
TQ36
QEA
(input)
TQ31 TQ30
TQ35
QEB
(input) TQ41 TQ40
TQ31 TQ30
TQ35
QEB
Internal
QEA
(input)
QEB
(input)
Ungated
Index TQ50
TQ51
Index Internal
TQ55
Position
SCKx
(CKP = 0)
SCKx
(CKP = 1)
SP31 SP30
SP40 SP41
SCKX
(CKP = 1)
SP35
SP20 SP21
SP40 SP30,SP31
SP41
Note: Refer to Figure 23-2 for load conditions.
SSX
SP50 SP52
SCKX
(CKP = 0)
SCKX
(CKP = 1)
SP72 SP73
SP35
SP30,SP31 SP51
SP41
SP40 Note: Refer to Figure 23-2 for load conditions.
SP50 SP52
SCKX
(CKP = 0)
SCKX
(CKP = 1)
SP35
SP72 SP73
SP52
SP30,SP31 SP51
SDIX
MSb IN BIT14 - - - -1 LSb IN
SP41
SP40
SCL
IM31 IM34
IM30 IM33
SDA
Start Stop
Condition Condition
SDA
Out
SCL
IS31 IS34
IS30 IS33
SDA
Start Stop
Condition Condition
SDA
Out
AD50
ADCLK
Instruction
Execution SET SAMP CLEAR SAMP
SAMP
ch0_dischrg
ch0_samp
ch1_dischrg
ch1_samp
eoc
AD61
AD60
DONE
ADIF
ADRES(0)
ADRES(1)
1 2 3 4 5 6 7 8 5 6 7 8
AD50
ADCLK
Instruction
Execution SET ADON
SAMP
ch0_dischrg
ch0_samp
ch1_dischrg
ch1_samp
eoc
TSAMP TSAMP
AD55 AD55 TCONV
DONE
ADIF
ADRES(0)
ADRES(1)
1 2 3 4 5 6 7 3 4 5 6 8 3 4
2 — Sampling starts after discharge period. 6 — One TAD for end of conversion.
TSAMP is described in the “dsPIC30F
Family Reference Manual”, (DS70046), 7 — Begin conversion of next channel
Section 17, “10-bit A/D Converter”.
8 — Sample for time specified by SAMC.
3 — Convert bit 9. TSAMP is described in the “dsPIC30F
4 — Convert bit 8. Family Reference Manual”, (DS70046),
Section 17, “10-bit A/D Converter”.
XXXXXXXXXXXXXXXXX dsPIC30F3010
XXXXXXXXXXXXXXXXX 30I/SP e3
YYWWNNN 0710017
XXXXXXXXXXXXXXXXXXXX dsPIC30F3010
XXXXXXXXXXXXXXXXXXXX 30I/SO e3
XXXXXXXXXXXXXXXXXXXX
YYWWNNN 0710017
XXXXXXXXXX dsPIC
XXXXXXXXXX 30F3011
XXXXXXXXXX 30I/ML e3
YYWWNNN 0710017
XXXXXXXXXXXXXXXXXX dsPIC30F3011
XXXXXXXXXXXXXXXXXX 30I/P e3
XXXXXXXXXXXXXXXXXX
YYWWNNN 0710017
Note: In the event the full Microchip part number cannot be marked on one line, it will
be carried over to the next line, thus limiting the number of available
characters for customer-specific information.
XXXXXXXXXX dsPIC
XXXXXXXXXX 30F3011
XXXXXXXXXX 30I/PT e3
YYWWNNN 0710017
XXXXXXXXXX dsPIC
XXXXXXXXXX 30F3011
XXXXXXXXXX 30I/ML e3
YYWWNNN 0710017
28-Lead Skinny Plastic Dual In-Line (SP) – 300 mil Body [SPDIP]
Note: For the most current package drawings, please see the Microchip Packaging Specification located at
http://www.microchip.com/packaging
NOTE 1
E1
1 2 3
A A2
L c
A1 b1
b e eB
Units INCHES
Dimension Limits MIN NOM MAX
Number of Pins N 28
Pitch e .100 BSC
Top to Seating Plane A – – .200
Molded Package Thickness A2 .120 .135 .150
Base to Seating Plane A1 .015 – –
Shoulder to Shoulder Width E .290 .310 .335
Molded Package Width E1 .240 .285 .295
Overall Length D 1.345 1.365 1.400
Tip to Seating Plane L .110 .130 .150
Lead Thickness c .008 .010 .015
Upper Lead Width b1 .040 .050 .070
Lower Lead Width b .014 .018 .022
Overall Row Spacing § eB – – .430
Notes:
1. Pin 1 visual index feature may vary, but must be located within the hatched area.
2. § Significant Characteristic.
3. Dimensions D and E1 do not include mold flash or protrusions. Mold flash or protrusions shall not exceed .010" per side.
4. Dimensioning and tolerancing per ASME Y14.5M.
BSC: Basic Dimension. Theoretically exact value shown without tolerances.
D
N
E
E1
NOTE 1
1 2 3
e
b
h
α
h
φ c
A A2
L
A1 L1 β
Units MILLMETERS
Dimension Limits MIN NOM MAX
Number of Pins N 28
Pitch e 1.27 BSC
Overall Height A – – 2.65
Molded Package Thickness A2 2.05 – –
Standoff § A1 0.10 – 0.30
Overall Width E 10.30 BSC
Molded Package Width E1 7.50 BSC
Overall Length D 17.90 BSC
Chamfer (optional) h 0.25 – 0.75
Foot Length L 0.40 – 1.27
Footprint L1 1.40 REF
Foot Angle Top φ 0° – 8°
Lead Thickness c 0.18 – 0.33
Lead Width b 0.31 – 0.51
Mold Draft Angle Top α 5° – 15°
Mold Draft Angle Bottom β 5° – 15°
Notes:
1. Pin 1 visual index feature may vary, but must be located within the hatched area.
2. § Significant Characteristic.
3. Dimensions D and E1 do not include mold flash or protrusions. Mold flash or protrusions shall not exceed 0.15 mm per side.
4. Dimensioning and tolerancing per ASME Y14.5M.
BSC: Basic Dimension. Theoretically exact value shown without tolerances.
REF: Reference Dimension, usually without tolerance, for information purposes only.
Microchip Technology Drawing C04-052B
NOTE 1
E1
1 2 3
A A2
L c
b1
A1
b e eB
Units INCHES
Dimension Limits MIN NOM MAX
Number of Pins N 40
Pitch e .100 BSC
Top to Seating Plane A – – .250
Molded Package Thickness A2 .125 – .195
Base to Seating Plane A1 .015 – –
Shoulder to Shoulder Width E .590 – .625
Molded Package Width E1 .485 – .580
Overall Length D 1.980 – 2.095
Tip to Seating Plane L .115 – .200
Lead Thickness c .008 – .015
Upper Lead Width b1 .030 – .070
Lower Lead Width b .014 – .023
Overall Row Spacing § eB – – .700
Notes:
1. Pin 1 visual index feature may vary, but must be located within the hatched area.
2. § Significant Characteristic.
3. Dimensions D and E1 do not include mold flash or protrusions. Mold flash or protrusions shall not exceed .010" per side.
4. Dimensioning and tolerancing per ASME Y14.5M.
BSC: Basic Dimension. Theoretically exact value shown without tolerances.
Microchip Technology Drawing C04-016B
44-Lead Plastic Thin Quad Flatpack (PT) – 10x10x1 mm Body, 2.00 mm Footprint [TQFP]
Note: For the most current package drawings, please see the Microchip Packaging Specification located at
http://www.microchip.com/packaging
D
D1
E
e
E1
N
b
NOTE 1 1 2 3
NOTE 2
A α
c φ
β A1 A2
L L1
Units MILLIMETERS
Dimension Limits MIN NOM MAX
Number of Leads N 44
Lead Pitch e 0.80 BSC
Overall Height A – – 1.20
Molded Package Thickness A2 0.95 1.00 1.05
Standoff A1 0.05 – 0.15
Foot Length L 0.45 0.60 0.75
Footprint L1 1.00 REF
Foot Angle φ 0° 3.5° 7°
Overall Width E 12.00 BSC
Overall Length D 12.00 BSC
Molded Package Width E1 10.00 BSC
Molded Package Length D1 10.00 BSC
Lead Thickness c 0.09 – 0.20
Lead Width b 0.30 0.37 0.45
Mold Draft Angle Top α 11° 12° 13°
Mold Draft Angle Bottom β 11° 12° 13°
Notes:
1. Pin 1 visual index feature may vary, but must be located within the hatched area.
2. Chamfers at corners are optional; size may vary.
3. Dimensions D1 and E1 do not include mold flash or protrusions. Mold flash or protrusions shall not exceed 0.25 mm per side.
4. Dimensioning and tolerancing per ASME Y14.5M.
BSC: Basic Dimension. Theoretically exact value shown without tolerances.
REF: Reference Dimension, usually without tolerance, for information purposes only.
Microchip Technology Drawing C04-076B
44-Lead Plastic Quad Flat, No Lead Package (ML) – 8x8 mm Body [QFN]
Note: For the most current package drawings, please see the Microchip Packaging Specification located at
http://www.microchip.com/packaging
D D2
EXPOSED
PAD
E2
b
2 2
1 1
N N K
NOTE 1 L
A3 A1
Units MILLIMETERS
Dimension Limits MIN NOM MAX
Number of Pins N 44
Pitch e 0.65 BSC
Overall Height A 0.80 0.90 1.00
Standoff A1 0.00 0.02 0.05
Contact Thickness A3 0.20 REF
Overall Width E 8.00 BSC
Exposed Pad Width E2 6.30 6.45 6.80
Overall Length D 8.00 BSC
Exposed Pad Length D2 6.30 6.45 6.80
Contact Width b 0.25 0.30 0.38
Contact Length L 0.30 0.40 0.50
Contact-to-Exposed Pad K 0.20 – –
Notes:
1. Pin 1 visual index feature may vary, but must be located within the hatched area.
2. Package is saw singulated.
3. Dimensioning and tolerancing per ASME Y14.5M.
BSC: Basic Dimension. Theoretically exact value shown without tolerances.
REF: Reference Dimension, usually without tolerance, for information purposes only.
A C
A/D C Compilers
1 Msps Configuration Guideline................................ 128 MPLAB C18.............................................................. 158
MPLAB C30.............................................................. 158
600 ksps Configuration Guideline ............................. 129
Conversion Rate Parameters.................................... 127 Center-Aligned PWM .......................................................... 95
Selecting the Conversion Clock ................................ 126 CLKOUT and I/O Timing
Characteristics.......................................................... 174
Voltage Reference Schematic .................................. 128
AC Characteristics ............................................................ 169 Requirements ........................................................... 174
Load Conditions ........................................................ 169 Code Examples
Data EEPROM Block Erase ....................................... 54
AC Temperature and Voltage Specifications .................... 169
ADC Data EEPROM Block Write ........................................ 56
750 ksps Configuration Guideline ............................. 129 Data EEPROM Read.................................................. 53
Data EEPROM Word Erase ....................................... 54
Conversion Speeds................................................... 127
Address Generator Units .................................................... 35 Data EEPROM Word Write ........................................ 55
Erasing a Row of Program Memory ........................... 49
Alternate 16-bit Timer/Counter............................................ 87
Initiating a Programming Sequence ........................... 50
Alternate Vector Table ........................................................ 45
Assembler Loading Write Latches ................................................ 50
MPASM Assembler................................................... 158 Code Protection ................................................................ 135
Complementary PWM Operation........................................ 96
Automatic Clock Stretch.................................................... 110
During 10-bit Addressing (STREN = 1)..................... 110 Configuring Analog Port Pins.............................................. 58
During 7-bit Addressing (STREN = 1)....................... 110 Control Registers ................................................................ 48
NVMADR .................................................................... 48
Receive Mode ........................................................... 110
NVMADRU ................................................................. 48
Transmit Mode .......................................................... 110
NVMCON.................................................................... 48
B NVMKEY .................................................................... 48
Bandgap Start-up Time Core Overview .................................................................... 15
Requirements............................................................ 176 Core Register Map.............................................................. 31
Timing Characteristics .............................................. 176 Customer Change Notification Service............................. 215
Barrel Shifter ....................................................................... 22 Customer Notification Service .......................................... 215
Bit-Reversed Addressing .................................................... 38 Customer Support............................................................. 215
Example ...................................................................... 38 D
Implementation ........................................................... 38
Data Access from Program Memory Using Program
Modifier Values (table) ................................................ 39
Space Visibility ........................................................... 26
Sequence Table (16-Entry)......................................... 39
Data Accumulators and Adder/Subtracter .......................... 20
From: Name
Company
Address
City / State / ZIP / Country
Telephone: (_______) _________ - _________ FAX: (______) _________ - _________
Application (optional):
Would you like a reply? Y N
Questions:
2. How does this document meet your hardware and software development needs?
3. Do you find the organization of this document easy to follow? If not, why?
4. What additions to the document do you think would enhance the structure and subject?
5. What deletions from the document could be made without affecting the overall usefulness?
d s P I C 3 0 F 3 0 1 0 AT - 3 0 I / P F - 0 0 0
Custom ID (3 digits) or
Trademark Engineering Sample (ES)
Architecture
Package
PT = TQFP 10x10
PT = TQFP 12x12
Flash P = DIP
SO = SOIC
SP = SPDIP
Memory Size in Bytes ML = QFN 6x6 or 8x8
0 = ROMless S = Die (Waffle Pack)
1 = 1K to 6K
2 = 7K to 12K
W = Die (Wafers)
3 = 13K to 24K
4 = 25K to 48K Temperature
5 = 49K to 96K I = Industrial -40°C to +85°C
6 = 97K to 192K E = Extended High Temp -40°C to +125°C
7 = 193K to 384K
8 = 385K to 768K Speed
9 = 769K and Up
20 = 20 MIPS
30 = 30 MIPS
Device ID T = Tape and Reel
Example:
dsPIC30F3010AT-30I/PT = 30 MIPS, Industrial temp., TQFP package, Rev. A
12/08/06