C8051F504-IQ Silicon Laboratories Inc, C8051F504-IQ Datasheet - Page 203

IC 8051 MCU 32K FLASH 48-QFP

C8051F504-IQ

Manufacturer Part Number
C8051F504-IQ
Description
IC 8051 MCU 32K FLASH 48-QFP
Manufacturer
Silicon Laboratories Inc
Series
C8051F50xr
Datasheets

Specifications of C8051F504-IQ

Program Memory Type
FLASH
Program Memory Size
32KB (32K x 8)
Package / Case
48-QFP
Mfg Application Notes
LIN Bootloader AppNote
Core Processor
8051
Core Size
8-Bit
Speed
50MHz
Connectivity
EBI/EMI, SMBus (2-Wire/I²C), CAN, LIN, SPI, UART/USART
Peripherals
POR, PWM, Temp Sensor, WDT
Number Of I /o
40
Ram Size
4.25K x 8
Voltage - Supply (vcc/vdd)
1.8 V ~ 5.25 V
Data Converters
A/D 32x12b
Oscillator Type
Internal
Operating Temperature
-40°C ~ 125°C
Processor Series
C8051F5x
Core
8051
Data Bus Width
8 bit
Data Ram Size
4.25 KB
Interface Type
I2C/SPI/UART
Maximum Clock Frequency
50 MHz
Number Of Programmable I/os
40
Number Of Timers
4
Maximum Operating Temperature
+ 125 C
Mounting Style
SMD/SMT
3rd Party Development Tools
PK51, CA51, A51, ULINK2
Development Tools By Supplier
C8051F500DK
Minimum Operating Temperature
- 40 C
On-chip Adc
32-ch x 12-bit
Lead Free Status / RoHS Status
Lead free / RoHS Compliant
For Use With
336-1527 - KIT DEV FOR C8051F50X
Eeprom Size
-
Lead Free Status / Rohs Status
Lead free / RoHS Compliant
Other names
336-1518

Available stocks

Company
Part Number
Manufacturer
Quantity
Price
Part Number:
C8051F504-IQ
Manufacturer:
Silicon Labs
Quantity:
135
Part Number:
C8051F504-IQ
Manufacturer:
Silicon Laboratories Inc
Quantity:
10 000
Part Number:
C8051F504-IQR
Manufacturer:
Silicon Laboratories Inc
Quantity:
10 000
Use the following equations to calculate the values for the variables for the baud-rate equation:
In all of these equations, the results must be rounded down to the nearest integer.
The following example shows the steps for calculating the baud rate values for a Master node running at
24 MHz and communicating at 19200 bits/sec. First, calculate the multiplier:
Next, calculate the prescaler:
Finally, calculate the divider:
These values lead to the following baud rate:
The following code programs the interface in Master mode, using the Enhanced Checksum and enables
the interface to operate at 19230 bits/sec using a 24 MHz system clock.
LIN0CF
LIN0CF
LIN0ADR
// Initialize the register (prescaler, multiplier and bit 8 of divider)
LIN0DAT
LIN0ADR
LIN0DAT
LIN0ADR
LIN0DAT
LIN0ADR
LIN0DAT
|= 0x40;
= 0x80;
= 0x0D;
= ( 0x01 << 6 ) + ( 0x00 << 1 ) + ( ( 0x138 & 0x0100 ) >> 8 );
|= 0x80;
= 0x0C;
= (unsigned char)_0x138;
= 0x0B;
= 0x08;
= 0x0C;
prescaler
divider
prescaler
divider
baud_rate
=
=
------------------------------------------------------------------------------------------------------------------------------------- -
2
=
multiplier
=
ln
prescaler
ln
---------------------------------------------------------------------- -
2
------------------------------------------------------------------------------------------------
-----------------------------------------------------------
multiplier
multiplier
1
0
=
+
+
--------------------------------------------------------------- -
2
1
1
1
24000000
24000000
=
+
+
1
20000
--------------- - 1
19200
1
19200
0
24000000
Rev. 1.2
+
=
+
SYSCLK
1
----------------------------- 1
baud_rate
// Activate the interface
// Set the node as a Master
// Point to the LIN0MUL register
// Point to the LIN0DIV register
// Initialize LIN0DIV
// Point to the LIN0SIZE register
// Initialize the checksum as Enhanced
// Point to LIN0CTRL register
// Reset any error and the interrupt
1
SYSCLK
0
multiplier
20000
+
baud_rate
200
1
19200
=
0.0417
312
------- - 1
ln2
+
1
=
1
312.5
19230.77
0
200
C8051F50x/F51x
baud_rate
=
1.644
312
------- - 1
ln2
1
1
203

Related parts for C8051F504-IQ