16 Bit MCU 40MIPS 64KB FLASH 100 TQFP 14x14x1mm TRAY

PIC24HJ64GP510A-E/PF

Manufacturer Part NumberPIC24HJ64GP510A-E/PF
Description16 Bit MCU 40MIPS 64KB FLASH 100 TQFP 14x14x1mm TRAY
ManufacturerMicrochip Technology
SeriesPIC® 24H
PIC24HJ64GP510A-E/PF datasheets
 


Specifications of PIC24HJ64GP510A-E/PF

Core ProcessorPICCore Size16-Bit
Speed40 MIPsConnectivityCAN, I²C, IrDA, LIN, SPI, UART/USART
PeripheralsBrown-out Detect/Reset, DMA, POR, PWM, WDTNumber Of I /o85
Program Memory Size64KB (22K x 24)Program Memory TypeFLASH
Ram Size8K x 8Voltage - Supply (vcc/vdd)3 V ~ 3.6 V
Data ConvertersA/D 32x10b/12bOscillator TypeInternal
Operating Temperature-40°C ~ 125°CPackage / Case100-TQFP, 100-VQFP
Lead Free Status / RoHS StatusLead free / RoHS CompliantEeprom Size-
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
Page 41
42
Page 42
43
Page 43
44
Page 44
45
Page 45
46
Page 46
47
Page 47
48
Page 48
49
Page 49
50
Page 50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
Page 45/84

Download datasheet (2Mb)Embed
PrevNext
5.8
Reading Code Memory
Reading from code memory is performed by executing
a series of TBLRD instructions and clocking out the data
using the REGOUT command.
Table 5-8
shows the ICSP programming details for
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 register and W6
register. The upper byte of the starting source address
is stored in TBLPAG and the lower 16 bits of the source
address are stored in W6.
TABLE 5-8:
SERIAL INSTRUCTION EXECUTION FOR READING CODE MEMORY
Command
Data
(Binary)
(Hex)
Step 1: Exit the Reset vector.
0000
040200
GOTO
0000
040200
GOTO
0000
000000
NOP
Step 2: Initialize TBLPAG and the read pointer (W6) for TBLRD instruction.
0000
200xx0
MOV
0000
880190
MOV
0000
2xxxx6
MOV
Step 3: Initialize the write pointer (W7) and store the next four locations of code memory to W0:W5.
0000
EB0380
CLR
0000
000000
NOP
0000
BA1B96
TBLRDL
0000
000000
NOP
0000
000000
NOP
0000
BADBB6
TBLRDH.B
0000
000000
NOP
0000
000000
NOP
0000
BADBD6
TBLRDH.B
0000
000000
NOP
0000
000000
NOP
0000
BA1BB6
TBLRDL
0000
000000
NOP
0000
000000
NOP
0000
BA1B96
TBLRDL
0000
000000
NOP
0000
000000
NOP
0000
BADBB6
TBLRDH.B
0000
000000
NOP
0000
000000
NOP
0000
BADBD6
TBLRDH.B
0000
000000
NOP
0000
000000
NOP
0000
BA0BB6
TBLRDL
0000
000000
NOP
0000
000000
NOP
© 2010 Microchip Technology Inc.
To minimize the reading time, the packed instruction
word format that was utilized for writing is also used for
reading (see
Figure
W7, is initialized. In Step 4, two instruction words are
read from code memory and clocked out of the device,
through the VISI register, using the REGOUT command.
Step 4 is repeated until the desired amount of code
memory is read.
Description
0x200
0x200
#<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]
5-7). In Step 3, the write pointer,
DS70152H-page 45