PIC18F2580-E/SP Microchip Technology, PIC18F2580-E/SP Datasheet - Page 288

IC PIC MCU FLASH 16KX16 28DIP

PIC18F2580-E/SP

Manufacturer Part Number
PIC18F2580-E/SP
Description
IC PIC MCU FLASH 16KX16 28DIP
Manufacturer
Microchip Technology
Series
PIC® 18Fr

Specifications of PIC18F2580-E/SP

Program Memory Type
FLASH
Program Memory Size
32KB (16K x 16)
Package / Case
28-DIP (0.300", 7.62mm)
Core Processor
PIC
Core Size
8-Bit
Speed
25MHz
Connectivity
CAN, I²C, SPI, UART/USART
Peripherals
Brown-out Detect/Reset, HLVD, POR, PWM, WDT
Number Of I /o
25
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 8x10b
Oscillator Type
Internal
Operating Temperature
-40°C ~ 125°C
Processor Series
PIC18F
Core
PIC
Data Bus Width
8 bit
Data Ram Size
1.5 KB
Interface Type
SPI/I2C/MSSP/EUSART
Maximum Clock Frequency
40 MHz
Number Of Programmable I/os
25
Number Of Timers
4
Maximum Operating Temperature
+ 125 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, DM163011, DV164136
Minimum Operating Temperature
- 40 C
On-chip Adc
8-ch x 10-bit
Lead Free Status / RoHS Status
Lead free / RoHS Compliant
For Use With
DVA18XP280 - DEVICE ADAPTER 18F2220 PDIP 28LD
Lead Free Status / Rohs Status
Lead free / RoHS Compliant

Available stocks

Company
Part Number
Manufacturer
Quantity
Price
Part Number:
PIC18F2580-E/SP
Manufacturer:
Microchip Technology
Quantity:
135
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 PIC18F2580-E/SP