DSPIC30F6013-30I/PF Microchip Technology, DSPIC30F6013-30I/PF Datasheet - Page 7

no-image

DSPIC30F6013-30I/PF

Manufacturer Part Number
DSPIC30F6013-30I/PF
Description
IC DSPIC MCU/DSP 132K 80TQFP
Manufacturer
Microchip Technology
Series
dsPIC™ 30Fr

Specifications of DSPIC30F6013-30I/PF

Core Processor
dsPIC
Core Size
16-Bit
Speed
30 MIPs
Connectivity
CAN, I²C, SPI, UART/USART
Peripherals
Brown-out Detect/Reset, LVD, POR, PWM, WDT
Number Of I /o
68
Program Memory Size
132KB (44K x 24)
Program Memory Type
FLASH
Eeprom Size
2K x 8
Ram Size
6K x 8
Voltage - Supply (vcc/vdd)
2.5 V ~ 5.5 V
Data Converters
A/D 16x12b
Oscillator Type
Internal
Operating Temperature
-40°C ~ 85°C
Package / Case
80-TQFP, 80-VQFP
Core Frequency
40MHz
Core Supply Voltage
5.5V
Embedded Interface Type
CAN, I2C, SPI, UART
No. Of I/o's
68
Flash Memory Size
132KB
Supply Voltage Range
2.5V To 5.5V
Lead Free Status / RoHS Status
Contains lead / RoHS non-compliant
For Use With
DM300024 - KIT DEMO DSPICDEM 1.1AC164314 - MODULE SKT FOR PM3 80PFAC30F001 - MODULE SOCKET DSPIC30F 80TQFPXLT80PT2 - SOCKET TRANSITION ICE 80TQFPDV164005 - KIT ICD2 SIMPLE SUIT W/USB CABLE
Lead Free Status / RoHS Status
Lead free / RoHS Compliant, Contains lead / RoHS non-compliant
Other names
DSPIC30F601330IPF

Available stocks

Company
Part Number
Manufacturer
Quantity
Price
Part Number:
DSPIC30F6013-30I/PF
Manufacturer:
Microchip Technology
Quantity:
135
Part Number:
DSPIC30F6013-30I/PF
Manufacturer:
Microchip
Quantity:
243
Part Number:
DSPIC30F6013-30I/PF
Manufacturer:
Microchip Technology
Quantity:
10 000
5. Module: PSV Operations
TABLE 3:
EXAMPLE 2:
© 2010 Microchip Technology Inc.
ADDC
SUBB
SUBBR
CPB
RLC
RRC
ADD (Accumulator-based)
LAC
Note 1:
When one of the operands of instructions shown in
Table 3 is fetched from program memory using
Program Space Visibility (PSV), the STATUS
Register, SR and/or the results may be corrupted.
Work arounds
Work around 1: For Assembly Language
Source Code
To work around the erratum in the MPLAB ASM30
assembler, the application may perform a PSV
access to move the source operand from program
memory to RAM or a W register prior to performing
the operations listed in Table 3. The work around
for Example 2 is demonstrated in Example 3.
.include “p30fxxxx.inc”
.......
MOV.B
MOV.B
BSET
....
MOV
ADD
ADDC
2:
3:
4:
Refer to the “dsPIC30F/33F Programmer’s Reference Manual”, (DS70157), for details on the dsPIC30F
Instruction set.
The errata only affects these instructions when a PSV access is performed to fetch one of the source
operands in the instruction. A PSV access is performed when the Effective Address of the source operand
is greater than 0x8000 and the PSV bit (CORCON<2>) is set to ‘1’. In the examples shown, the data
access from program memory is made via the W1 register.
SR<1:0> bits represent Sticky Zero and Carry Status bits respectively.
SR<15:10> bits represent Accumulator Overflow and Saturation Status bits.
Instruction
#0x00, W0
WREG, PSVPAG
CORCON, #PSV;Enable PSV
#0x8200, W1 ;Set up W1 for
W3, [W1++], W5 ;This instruction
W4, [W1++], W6 ;Carry flag and
AFFECTED INSTRUCTIONS
INCORRECT RESULTS
(1)
;Load PSVPAG register
;indirect PSV access
;from 0x000200
;works ok
;W6 gets
;corrupted here!
ADDC W0, [W1++], W2 ;
SUBB.b W0, [++W1], W3 ;
SUBBR.b W0, [++W1], W3 ;
CPB W0, [W1++], W4 ;
RLC [W1], W4 ;
RRC [W1], W2 ;
ADD [W1++], A ;
LAC [W1], A ;
Examples of Incorrect Operation
dsPIC30F6011/6012/6013/6014
EXAMPLE 3:
These instructions are identified in Table 3.
Example 2 demonstrates a scenario where this
occurs.
Also, always use Work around 2 if the C compiler
is used to generate code for dsPIC30F6011/6012/
6013/6014 devices.
Work around 2: For C Language Source Code
For applications using C language, MPLAB C30
versions 1.20.04 or higher provide the following
command-line switch that implements a work
around for the erratum.
Refer to the “readme.txt” file in the MPLAB C30
v1.20.04 toolsuite for further details.
Affected Silicon Revisions
.include “p30fxxxx.inc”
.......
MOV.B
MOV.B
BSET
....
MOV
ADD
MOV
ADDC
A3
X
(2)
B1
X
-merrata=psv
#0x00, w0
WREG, PSVPAG
CORCON, #PSV;Enable PSV
#0x8200, W1 ;Set up W1 for
W3, [W1++], W5;This instruction
[W1++], W2 ;Load W2 with data
W4, W2, W6 ;Carry flag and W4
SR<1:0> bits
SR<1:0> bits
SR<1:0> bits
SR<1:0> bits
SR<1:0> bits
SR<1:0> bits
SR<1:0> bits
SR<15:10> bits
B2
X
CORRECT RESULTS
Data Corruption IN
;Load PSVPAG register
;indirect PSV access
;from 0x000200
;from program memory
;results are ok!
(3)
(3)
(3)
(3)
(3)
(3)
(3)
, Result in W2
, Result in W3
, Result in W3
, Result in W4
, Result in W2
(4)
;works ok
DS80456D-page 7

Related parts for DSPIC30F6013-30I/PF