DSPIC30F2020-30I/SP Microchip Technology, DSPIC30F2020-30I/SP Datasheet - Page 37

IC DSPIC MCU/DSP 12K 28DIP

DSPIC30F2020-30I/SP

Manufacturer Part Number
DSPIC30F2020-30I/SP
Description
IC DSPIC MCU/DSP 12K 28DIP
Manufacturer
Microchip Technology
Series
dsPIC™ 30Fr

Specifications of DSPIC30F2020-30I/SP

Package / Case
28-DIP (0.300", 7.62mm)
Core Processor
dsPIC
Core Size
16-Bit
Speed
30 MIPs
Connectivity
I²C, IrDA, LIN, SPI, UART/USART
Peripherals
Brown-out Detect/Reset, POR, PWM, WDT
Number Of I /o
21
Program Memory Size
12KB (4K x 24)
Program Memory Type
FLASH
Ram Size
512 x 8
Voltage - Supply (vcc/vdd)
3 V ~ 5.5 V
Data Converters
A/D 8x10b
Oscillator Type
Internal
Operating Temperature
-40°C ~ 85°C
Mounting Style
Through Hole
3rd Party Development Tools
52713-733, 52714-737, 53276-922, EWDSPIC
Development Tools By Supplier
PG164130, DV164035, DV244005, DV164005, PG164120, ICE4000, DM240002, DM300027, DM330011, DM300018, DM183021
Lead Free Status / RoHS Status
Lead free / RoHS Compliant
For Use With
DM300023 - KIT DEMO DSPICDEM SMPS BUCKDV164005 - KIT ICD2 SIMPLE SUIT W/USB CABLE
Eeprom Size
-
Lead Free Status / Rohs Status
Lead free / RoHS Compliant
11.9
Reading from code memory is performed by executing
a series of TBLRD instructions and clocking-out the
data using the REGOUT command. To ensure efficient
execution and facilitate verification on the programmer,
four instruction words are read from the device at a
time.
Table 11-9
reading code memory. In Step 1, the Reset vector is
exited. In Step 2, the 24-bit starting source address for
reading is loaded into the TBLPAG and W6 registers.
The upper byte of the starting source address is stored
to TBLPAG, while the lower 16 bits of the source
address are stored to W6.
TABLE 11-9:
© 2010 Microchip Technology Inc.
Step 1: Exit the Reset vector.
0000
0000
0000
Step 2: Initialize TBLPAG and the read pointer (W6) for TBLRD instruction.
0000
0000
0000
Step 3: Initialize the write pointer (W7) and store the next four locations of code memory to W0:W5.
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
Command
(Binary)
Reading Code Memory
shows the ICSP programming details for
040100
040100
000000
200xx0
880190
2xxxx6
EB0380
BA1B96
000000
000000
BADBB6
000000
000000
BADBD6
000000
000000
BA1BB6
000000
000000
BA1B96
000000
000000
BADBB6
000000
000000
BADBD6
000000
000000
BA0BB6
000000
000000
SERIAL INSTRUCTION EXECUTION FOR READING CODE MEMORY
(Hex)
Data
GOTO 0x100
GOTO 0x100
NOP
MOV
MOV
MOV
CLR
TBLRDL
NOP
NOP
TBLRDH.B
NOP
NOP
TBLRDH.B
NOP
NOP
TBLRDL
NOP
NOP
TBLRDL
NOP
NOP
TBLRDH.B
NOP
NOP
TBLRDH.B
NOP
NOP
TBLRDL
NOP
NOP
#<SourceAddress23:16>, W0
W0, TBLPAG
#<SourceAddress15:0>, W6
W7
[W6], [W7++]
[W6++], [W7++]
[++W6], [W7++]
[W6++], [W7++]
[W6], [W7++]
[W6++], [W7++]
[++W6], [W7++]
[W6++], [W7]
To minimize the reading time, the packed instruction
word format that was utilized for writing is also used for
reading (see
W7 is initialized, and four instruction words are read
from code memory and stored to working registers
W0:W5. In Step 4, the four instruction words are
clocked out of the device from the VISI register using
the REGOUT command. In Step 5, the internal PC is
reset to 0x100, as a precautionary measure, to prevent
the PC from incrementing into unimplemented memory
when large devices are being read. Lastly, in Step 6,
Steps 4-5 are repeated until the desired amount of
code memory is read.
Description
Figure
11-5). In Step 3, the write pointer
DS70284C-page 37

Related parts for DSPIC30F2020-30I/SP