PIC18LF4458-I/P Microchip Technology, PIC18LF4458-I/P Datasheet - Page 3

24KB Flash, 2KB RAM, 256 Bytes EEPROM, 35 I/O, USB, 12bit ADC 40 PDIP .600in TUB

PIC18LF4458-I/P

Manufacturer Part Number
PIC18LF4458-I/P
Description
24KB Flash, 2KB RAM, 256 Bytes EEPROM, 35 I/O, USB, 12bit ADC 40 PDIP .600in TUB
Manufacturer
Microchip Technology
Series
PIC® 18Fr

Specifications of PIC18LF4458-I/P

Core Processor
PIC
Core Size
8-Bit
Speed
48MHz
Connectivity
I²C, SPI, UART/USART, USB
Peripherals
Brown-out Detect/Reset, HLVD, POR, PWM, WDT
Number Of I /o
35
Program Memory Size
24KB (12K x 16)
Program Memory Type
FLASH
Eeprom Size
256 x 8
Ram Size
2K x 8
Voltage - Supply (vcc/vdd)
2 V ~ 5.5 V
Data Converters
A/D 13x12b
Oscillator Type
Internal
Operating Temperature
-40°C ~ 85°C
Package / Case
40-DIP (0.600", 15.24mm)
Lead Free Status / RoHS Status
Lead free / RoHS Compliant

Available stocks

Company
Part Number
Manufacturer
Quantity
Price
Part Number:
PIC18LF4458-I/PT
Manufacturer:
Microchip Technology
Quantity:
10 000
5. Module: MSSP
EXAMPLE 1:
EXAMPLE 2:
© 2008 Microchip Technology Inc.
WriteSPI:
BCF
MOVF
MOVLW 0xA5
MOVWF SSPBUF
WaitXmitComplete:
BTFSS PIR1, SSPIF
BRA
MOVF
unsigned char WriteSPI(unsigned char ByteToSend)
{
}
If the application firmware is expecting to receive
valid data – in either SPI Slave or Master mode –
the firmware must read from the SSPBUF register
before writing the next byte to transmit to SSPBUF.
If the firmware does not read from SSPBUF, the
BF bit (SSPSTAT<0>) can still be set from the pre-
vious transaction. If the BF bit is set, the incoming
data byte is blocked from transferring from the
SSPSR Shift register to the SSPBUF register. If
the firmware then reads from SSPBUF, the data
read will not match the data most recently received
on the SDI pin.
In the earlier silicon revision (B5), incoming data
bytes received on the SDI pin are always trans-
ferred from SSPSR to SSPBUF, regardless of the
state of the BF bit.
unsigned char TempVariable;
PIR1bits.SSPIF = 0;
TempVariable = SSPBUF;
SSPBUF = ByteToSend;
while(!PIR1bits.SSPIF);
return SSPBUF;
PIR1, SSPIF
SSPBUF, w
WaitXmitComplete
SSPBUF, w
SAMPLE ASSEMBLY CODE FOR TRANSFERRING SPI DATA
SAMPLE C CODE FOR TRANSFERRING SPI DATA
;Perform read, even if the data in SSPBUF is not important
;In this example, let’s send “0xA5” to the other SPI device.
;The data received should be valid.
// Reads from SSPBUF, ensures BF bit is clear before
// sending the next byte.
// Wait until the transmission is complete.
// The data received should be valid.
PIC18F2458/2553/4458/4553
Work around
If the firmware expects to receive valid data,
always clear the BF bit by reading from SSPBUF
prior to writing to SSPBUF, even when the current
data in SSPBUF is not important. Sample work
around code, suitable for all silicon revisions, is
given in Example 1 (Assembly language) and
Example 2 (C language).
Date Codes that pertain to this issue:
All engineering and production devices.
DS80387A-page 3

Related parts for PIC18LF4458-I/P