PIC18F4580-I/P Microchip Technology, PIC18F4580-I/P Datasheet - Page 288

IC PIC MCU FLASH 16KX16 40DIP

PIC18F4580-I/P

Manufacturer Part Number
PIC18F4580-I/P
Description
IC PIC MCU FLASH 16KX16 40DIP
Manufacturer
Microchip Technology
Series
PIC® 18Fr

Specifications of PIC18F4580-I/P

Program Memory Type
FLASH
Program Memory Size
32KB (16K x 16)
Package / Case
40-DIP (0.600", 15.24mm)
Core Processor
PIC
Core Size
8-Bit
Speed
40MHz
Connectivity
CAN, I²C, SPI, UART/USART
Peripherals
Brown-out Detect/Reset, HLVD, POR, PWM, WDT
Number Of I /o
36
Eeprom Size
256 x 8
Ram Size
1.5K x 8
Voltage - Supply (vcc/vdd)
4.2 V ~ 5.5 V
Data Converters
A/D 11x10b
Oscillator Type
Internal
Operating Temperature
-40°C ~ 85°C
Processor Series
PIC18F
Core
PIC
Data Bus Width
8 bit
Data Ram Size
1.5 KB
Interface Type
SPI/I2C/USART
Maximum Clock Frequency
40 MHz
Number Of Programmable I/os
35
Number Of Timers
4
Maximum Operating Temperature
+ 85 C
Mounting Style
Through Hole
3rd Party Development Tools
52715-96, 52716-328, 52717-734, 52712-325, EWPIC18
Development Tools By Supplier
PG164130, DV164035, DV244005, DV164005, PG164120, ICE2000, ICE4000, DV164136, DM163011
Minimum Operating Temperature
- 40 C
On-chip Adc
13-ch x 10-bit
Package
40PDIP
Device Core
PIC
Family Name
PIC18
Maximum Speed
40 MHz
Operating Supply Voltage
5 V
Lead Free Status / RoHS Status
Lead free / RoHS Compliant
For Use With
DVA18XP400 - DEVICE ADAPTER 18F4220 PDIP 40LD444-1001 - DEMO BOARD FOR PICMICRO MCUACICE0206 - ADAPTER MPLABICE 40P 600 MIL
Lead Free Status / Rohs Status
Lead free / RoHS Compliant

Available stocks

Company
Part Number
Manufacturer
Quantity
Price
Part Number:
PIC18F4580-I/P
Manufacturer:
RENESAS
Quantity:
5 600
Part Number:
PIC18F4580-I/P
Manufacturer:
MICROCHIP/微芯
Quantity:
20 000
Part Number:
PIC18F4580-I/PT
Manufacturer:
MICROCHIP
Quantity:
201
Part Number:
PIC18F4580-I/PT
Manufacturer:
Microchip Technology
Quantity:
10 000
Part Number:
PIC18F4580-I/PT
Manufacturer:
MICROCHI
Quantity:
20 000
Part Number:
PIC18F4580-I/PT
0
PIC18F2480/2580/4480/4580
EXAMPLE 23-3:
EXAMPLE 23-4:
DS39637C-page 286
; Need to transmit Standard Identifier message 123h using TXB0 buffer.
; To successfully transmit, CAN module must be either in Normal or Loopback mode.
; TXB0 buffer is not in access bank. And since we want banked method, we need to make sure
; that correct bank is selected.
BANKSEL TXB0CON
; Now load transmit data into TXB0 buffer.
MOVLW
MOVWF
; Load rest of data bytes - up to 8 bytes into TXB0 buffer.
...
; Load message identifier
MOVLW
MOVWF
MOVLW
MOVWF
; No need to load TXB0EIDL:TXB0EIDH, as we are transmitting Standard Identifier Message only.
; Now that all data bytes are loaded, mark it for transmission.
MOVLW
MOVWF
; If required, wait for message to get transmitted
BTFSC
BRA
; Message is transmitted.
; Need to transmit Standard Identifier message 123h using TXB0 buffer.
; To successfully transmit, CAN module must be either in Normal or Loopback mode.
; TXB0 buffer is not in access bank. Use WIN bits to map it to RXB0 area.
MOVF
ANDLW
IORLW
MOVWF
; Now TXB0 is mapped in place of RXB0. All future access to RXB0 registers will actually
; yield TXB0 register values.
; Load transmit data into TXB0 buffer.
MOVLW
MOVWF
; Load rest of the data bytes - up to 8 bytes into “TXB0” buffer using RXB0 registers.
...
; Load message identifier
MOVLW
MOVWF
MOVLW
MOVWF
; No need to load RXB0EIDL:RXB0EIDH, as we are transmitting Standard Identifier Message only.
; Now that all data bytes are loaded, mark it for transmission.
MOVLW
MOVWF
; If required, wait for message to get transmitted
BTFSC
BRA
; Message is transmitted.
; If required, reset the WIN bits to default state.
CANCON, W
B’11110000’
B’00001000’
CANCON
MY_DATA_BYTE1
RXB0D0
60H
RXB0SIDL
24H
RXB0SIDH
B’00001000’
RXB0CON
RXB0CON, TXREQ
$-2
MY_DATA_BYTE1
TXB0D0
60H
TXB0SIDL
24H
TXB0SIDH
B’00001000’
TXB0CON
TXB0CON, TXREQ
$-2
TRANSMITTING A CAN MESSAGE USING BANKED METHOD
TRANSMITTING A CAN MESSAGE USING WIN BITS
Preliminary
; One BANKSEL in beginning will make sure that we are
; in correct bank for rest of the buffer access.
; Load first data byte into buffer
; Compiler will automatically set “BANKED” bit
; Load SID2:SID0, EXIDE = 0
; Load SID10:SID3
; Normal priority; Request transmission
; Is it transmitted?
; No. Continue to wait...
; WIN bits are in lower 4 bits only. Read CANCON
; register to preserve all other bits. If operation
; mode is already known, there is no need to preserve
; other bits.
; Clear WIN bits.
; Select Transmit Buffer 0
; Apply the changes.
; Load first data byte into buffer
; Access TXB0D0 via RXB0D0 address.
; Load SID2:SID0, EXIDE = 0
; Load SID10:SID3
; Normal priority; Request transmission
; Is it transmitted?
; No. Continue to wait...
© 2007 Microchip Technology Inc.

Related parts for PIC18F4580-I/P