C8051F502-IMR Silicon Laboratories Inc, C8051F502-IMR Datasheet - Page 60

no-image

C8051F502-IMR

Manufacturer Part Number
C8051F502-IMR
Description
MCU 8-Bit C8051F50x 8051 CISC 64KB Flash 2.5V/3.3V/5V 32-Pin QFN EP T/R
Manufacturer
Silicon Laboratories Inc
Datasheet

Specifications of C8051F502-IMR

Package
32QFN EP
Device Core
8051
Family Name
C8051F50x
Maximum Speed
50 MHz
Ram Size
4.25 KB
Program Memory Size
64 KB
Operating Supply Voltage
2.5|3.3|5 V
Data Bus Width
8 Bit
Program Memory Type
Flash
Number Of Programmable I/os
25
Interface Type
I2C/SPI/UART
On-chip Adc
32-chx12-bit
Operating Temperature
-40 to 125 °C
Number Of Timers
4

Available stocks

Company
Part Number
Manufacturer
Quantity
Price
Part Number:
C8051F502-IMR
0
C8051F50x/F51x
6.3.2. Setting the Gain Value
The three programmable gain registers are accessed indirectly using the ADC0H and ADC0L registers
when the GAINEN bit (ADC0CF.0) bit is set. ADC0H acts as the address register, and ADC0L is the data
register. The programmable gain registers can only be written to and cannot be read. See Gain Register
Definition 6.1, Gain Register Definition 6.2, and Gain Register Definition 6.3 for more information.
The gain is programmed using the following steps:
1. Set the GAINEN bit (ADC0CF.0)
2. Load the ADC0H with the ADC0GNH, ADC0GNL, or ADC0GNA address.
3. Load ADC0L with the desired value for the selected gain register.
4. Reset the GAINEN bit (ADC0CF.0) 
Notes:
In code, changing the value to 0.44 gain from the previous example looks like:
// in ‘C’:
ADC0CF |= 0x01;
ADC0H = 0x04;
ADC0L = 0x6C;
ADC0H = 0x07;
ADC0L = 0xA0;
ADC0H = 0x08;
ADC0L = 0x01;
ADC0CF &= ~0x01;
; in assembly
ORL ADC0CF,#01H
MOV ADC0H,#04H
MOV ADC0L,#06CH
MOV ADC0H,#07H
MOV ADC0L,#0A0H
MOV ADC0H,#08H
MOV ADC0L,#01H
ANL ADC0CF,#0FEH
60
1.
2.
An ADC conversion should not be performed while the GAINEN bit is set
Even with gain enabled, the maximum input voltage must be less than V
voltage of the signal after gain must be less than or equal to V
// GAINEN = 1
// Load the ADC0GNH address
// Load the upper byte of 0x6CA to ADC0GNH
// Load the ADC0GNL address
// Load the lower nibble of 0x6CA to ADC0GNL
// Load the ADC0GNA address
// Set the GAINADD bit
// GAINEN = 0
; GAINEN = 1
; Load the ADC0GNH address
; Load the upper byte of 0x6CA to ADC0GNH
; Load the ADC0GNL address
; Load the lower nibble of 0x6CA to ADC0GNL
; Load the ADC0GNA address
; Set the GAINADD bit
; GAINEN = 0
Rev. 1.2
REF
.
REGIN
.
and the maximum

Related parts for C8051F502-IMR