PIC24FJ64GA104-I/PT Microchip Technology, PIC24FJ64GA104-I/PT Datasheet - Page 111

IC PIC MCU FLASH 64KB 44-TQFP

PIC24FJ64GA104-I/PT

Manufacturer Part Number
PIC24FJ64GA104-I/PT
Description
IC PIC MCU FLASH 64KB 44-TQFP
Manufacturer
Microchip Technology
Series
PIC® XLP™ 24Fr

Specifications of PIC24FJ64GA104-I/PT

Core Size
16-Bit
Program Memory Size
64KB (22K x 24)
Core Processor
PIC
Speed
32MHz
Connectivity
I²C, IrDA, SPI, UART/USART
Peripherals
Brown-out Detect/Reset, LVD, POR, PWM, WDT
Number Of I /o
35
Program Memory Type
FLASH
Ram Size
8K x 8
Voltage - Supply (vcc/vdd)
2 V ~ 3.6 V
Data Converters
A/D 13x10b
Oscillator Type
Internal
Operating Temperature
-40°C ~ 85°C
Package / Case
44-TQFP, 44-VQFP
Controller Family/series
PIC24
Ram Memory Size
8KB
Cpu Speed
32MHz
No. Of Timers
5
Interface
I2C, LIN, SPI, USART
No. Of Pwm Channels
5
Embedded Interface Type
I2C, LIN, SPI, USART
Rohs Compliant
Yes
Processor Series
PIC24FJ
Core
PIC
Data Bus Width
16 bit
Data Ram Size
8 KB
Interface Type
I2C, IrDA, SPI, UART
Maximum Clock Frequency
32 MHz
Number Of Programmable I/os
35
Number Of Timers
5
Maximum Operating Temperature
+ 85 C
Mounting Style
SMD/SMT
3rd Party Development Tools
52713-733, 52714-737, 53276-922, EWDSPIC
Development Tools By Supplier
PG164130, DV164035, DV244005, DV164005, DM240001, MA240020, DM240002, DM240011, DV164033
Minimum Operating Temperature
- 40 C
On-chip Adc
10 bit, 13 Channel
Lead Free Status / RoHS Status
Lead free / RoHS Compliant
For Use With
876-1004 - PIC24 BREAKOUT BOARD
Eeprom Size
-
Lead Free Status / Rohs Status
 Details

Available stocks

Company
Part Number
Manufacturer
Quantity
Price
Part Number:
PIC24FJ64GA104-I/PT
Manufacturer:
AD
Quantity:
1 296
Part Number:
PIC24FJ64GA104-I/PT
Manufacturer:
Microchip Technology
Quantity:
10 000
Part Number:
PIC24FJ64GA104-I/PT
Manufacturer:
MICROCHIP/微芯
Quantity:
20 000
9.2.4.2
When entering Deep Sleep mode, there are certain
circumstances that require a delay between setting the
DSEN bit and executing the PWRSAV instruction. These
can be generally reduced to three scenarios:
1.
2.
3.
In the first scenario, the application requires a wake-up
from Deep Sleep on the assertion of the INT0 pin or the
RTCC interrupt. In this case, three NOP instructions
must be inserted to properly synchronize the detection
of an asynchronous INT0 interrupt after the device
enters Deep Sleep mode. If the application does not
use wake-up on INT0 or RTCC, the NOP instructions
are optional.
In the second scenario, the application also uses
interrupts which can be briefly ignored. With these
applications, an interrupt event during the execution of
the NOP instructions may cause an ISR to be executed.
This means that more than three instruction cycles will
elapse before returning to the code and that the DSEN
bit will be cleared. To prevent the missed entry into
Deep Sleep, temporarily disable interrupts prior to
entering Deep Sleep mode. Invoking the DISI instruc-
tion for four cycles is sufficient to prevent interrupts
from disrupting Deep Sleep entry.
In the third scenario, interrupts cannot be ignored even
briefly; constant interrupt detection is required, even
during the interval between setting DSEN and execut-
ing the PWRSAV instruction. For these cases, it is possi-
ble to disable interrupts and test for an interrupt
condition, skipping the PWRSAV instruction if necessary.
Testing for interrupts can be accomplished by checking
the status of the CPUIRQ bit (INTTREG<15>); if an
unserviced interrupt is pending, this bit will be set. If
CPUIRQ is set prior to executing the PWRSAV instruc-
tion, the instruction is skipped. At this point, the DISI
instruction has expired (being more than 4 instructions
from when it was executed) and the application vectors
to the appropriate ISR. When the application returns, it
can either attempt to re-enter Deep Sleep mode or per-
form some other system function. In either case, the
application must have some functional code located,
following the PWRSAV instruction, in the event that the
PWRSAV instruction is skipped and the device does not
enter Deep Sleep mode.
© 2009 Microchip Technology Inc.
Scenario (1): use an external wake-up source
(INT0) or the RTCC is used
Scenario (2): with application-level interrupts
that can be temporarily disabled
Scenario (3): with interrupts that must be
monitored
Special Cases when Entering Deep
Sleep Mode
PIC24FJ64GA104 FAMILY
Preliminary
Examples for implementing these cases are shown in
Example 9-2. It is recommended that an assembler, or
in-line C routine be used in these cases, to ensure that
the code executes in the number of cycles required.
EXAMPLE 9-2:
// Case 1: simplest delay scenario
//
asm("bset
asm("nop");
asm("nop");
asm("nop");
asm("pwrsav #0");
//
// Case 2: interrupts disabled
//
asm("disi #4");
asm("bset
asm("nop");
asm("nop");
asm("nop");
asm("pwrsav #0");
//
// Case 3: interrupts disabled with
// interrupt testing
//
asm("disi #4");
asm("bset
asm("nop");
asm("nop");
asm("btss
asm("pwrsav #0");
// continue with application code here
//
DSCON, #15");
DSCON, #15");
DSCON, #15");
INTTREG, #15");
IMPLEMENTING THE
SPECIAL CASES FOR
ENTERING DEEP SLEEP
DS39951B-page 109

Related parts for PIC24FJ64GA104-I/PT