ATMEGA164P-20MUR Atmel, ATMEGA164P-20MUR Datasheet - Page 284
![MCU AVR 16KB FLASH 20MHZ 44-VQFN](/photos/12/13/121316/313-44-qfn_sml.jpg)
ATMEGA164P-20MUR
Manufacturer Part Number
ATMEGA164P-20MUR
Description
MCU AVR 16KB FLASH 20MHZ 44-VQFN
Manufacturer
Atmel
Series
AVR® ATmegar
Specifications of ATMEGA164P-20MUR
Core Processor
AVR
Core Size
8-Bit
Speed
20MHz
Connectivity
I²C, SPI, UART/USART
Peripherals
Brown-out Detect/Reset, POR, PWM, WDT
Number Of I /o
32
Program Memory Size
16KB (8K x 16)
Program Memory Type
FLASH
Eeprom Size
512 x 8
Ram Size
1K x 8
Voltage - Supply (vcc/vdd)
2.7 V ~ 5.5 V
Data Converters
A/D 8x10b
Oscillator Type
Internal
Operating Temperature
-40°C ~ 85°C
Package / Case
44-VQFN Exposed Pad
For Use With
ATSTK600-TQFP44 - STK600 SOCKET/ADAPTER 44-TQFP
Lead Free Status / RoHS Status
Lead free / RoHS Compliant
- Current page: 284 of 439
- Download datasheet (10Mb)
23.8.9
23.8.10
8011O–AVR–07/10
Reading the Fuse and Lock Bits from Software
Reading the Signature Row from Software
is recommended that the user checks the status bit (EEPE) in the EECR Register and verifies
that the bit is cleared before writing to the SPMCSR Register.
It is possible to read both the Fuse and Lock bits from software. To read the Lock bits, load the
Z-pointer with 0x0001 and set the BLBSET and SPMEN bits in SPMCSR. When an (E)LPM
instruction is executed within three CPU cycles after the BLBSET and SPMEN bits are set in
SPMCSR, the value of the Lock bits will be loaded in the destination register. The BLBSET and
SPMEN bits will auto-clear upon completion of reading the Lock bits or if no (E)LPM instruction
is executed within three CPU cycles or no SPM instruction is executed within four CPU cycles.
When BLBSET and SPMEN are cleared, (E)LPM will work as described in the Instruction set
Manual.
The algorithm for reading the Fuse Low byte is similar to the one described above for reading
the Lock bits. To read the Fuse Low byte, load the Z-pointer with 0x0000 and set the BLBSET
and SPMEN bits in SPMCSR. When an (E)LPM instruction is executed within three cycles after
the BLBSET and SPMEN bits are set in the SPMCSR, the value of the Fuse Low byte (FLB) will
be loaded in the destination register as shown below. Refer to
detailed description and mapping of the Fuse Low byte.
Similarly, when reading the Fuse High byte, load 0x0003 in the Z-pointer. When an (E)LPM
instruction is executed within three cycles after the BLBSET and SPMEN bits are set in the
SPMCSR, the value of the Fuse High byte (FHB) will be loaded in the destination register as
shown below. Refer to
High byte.
When reading the Extended Fuse byte, load 0x0002 in the Z-pointer. When an (E)LPM instruc-
tion is executed within three cycles after the BLBSET and SPMEN bits are set in the SPMCSR,
the value of the Extended Fuse byte (EFB) will be loaded in the destination register as shown
below. Refer to
Fuse byte.
Fuse and Lock bits that are programmed, will be read as zero. Fuse and Lock bits that are
unprogrammed, will be read as one.
To read the Signature Row from software, load the Z-pointer with the signature byte address
given in
LPM instruction is executed within three CPU cycles after the SIGRD and SPMEN bits are set in
SPMCSR, the signature byte value will be loaded in the destination register. The SIGRD and
SPMEN bits will auto-clear upon completion of reading the Signature Row Lock bits or if no LPM
Bit
Rd
Bit
Rd
Bit
Rd
Bit
Rd
Table 23-5 on page 285
FHB7
FLB7
Table 24-3 on page 294
7
7
7
–
7
–
Table 24-4 on page 295
FLB6
FHB6
6
6
6
–
6
–
BLB12
FLB5
FHB5
and set the SIGRD and SPMEN bits in SPMCSR. When an
5
5
5
–
5
for detailed description and mapping of the Extended
BLB11
FLB4
FHB4
4
4
–
4
4
for detailed description and mapping of the Fuse
ATmega164P/324P/644P
BLB02
FLB3
FHB3
3
3
3
–
3
BLB01
FLB2
EFB2
FHB2
2
2
2
2
Table 24-5 on page 295
FLB1
EFB1
FHB1
LB2
1
1
1
1
FLB0
FHB0
EFB0
LB1
0
0
0
0
for a
284
Related parts for ATMEGA164P-20MUR
Image
Part Number
Description
Manufacturer
Datasheet
Request
R
![ATmega164P](/images/manufacturer_photos/0/0/79/atmel_corporation_tmb.jpg)
Part Number:
Description:
Manufacturer:
Atmel Corporation
Datasheet:
![ATmega164P Automotive](/images/manufacturer_photos/0/0/79/atmel_corporation_tmb.jpg)
Part Number:
Description:
Manufacturer:
Atmel Corporation
Datasheet:
![ATMEGA164P-20AU](/photos/6/70/67042/313-44-tqfp_tmb.jpg)
Part Number:
Description:
IC MCU AVR 16K FLASH 44-TQFP
Manufacturer:
Atmel
Datasheet:
![ATMEGA164P-20MU](/photos/12/13/121316/313-44-qfn_tmb.jpg)
Part Number:
Description:
IC MCU AVR 16K FLASH 44-QFN
Manufacturer:
Atmel
Datasheet:
![ATMEGA164P-20AQ](/photos/6/70/67042/313-44-tqfp_tmb.jpg)
Part Number:
Description:
MCU AVR 16K FLASH 20MHZ 44-TQFP
Manufacturer:
Atmel
Datasheet:
![ATMEGA164P-A15MZ](/photos/6/70/67042/313-44-tqfp_tmb.jpg)
Part Number:
Description:
MCU AVR 16KB FLASH 15MHZ 44TQFP
Manufacturer:
Atmel
Datasheet:
![ATMEGA164P-20PU](/photos/6/70/67049/453-40-dip_tmb.jpg)
Part Number:
Description:
IC MCU AVR 16K FLASH 40-DIP
Manufacturer:
Atmel
Datasheet:
![ATMEGA164P-20AUR](/photos/6/70/67042/313-44-tqfp_tmb.jpg)
Part Number:
Description:
MCU AVR 16KB FLASH 20MHZ 44TQFP
Manufacturer:
Atmel
Datasheet:
![ATMEGA164P-20MQ](/photos/12/13/121316/313-44-qfn_tmb.jpg)
Part Number:
Description:
MCU AVR 16K FLASH 20MHZ 44-QFN
Manufacturer:
Atmel
Datasheet:
![ATMEGA164P-20PQ](/photos/6/70/67049/453-40-dip_tmb.jpg)
Part Number:
Description:
MCU AVR 16K FLASH 20MHZ 40-PDIP
Manufacturer:
Atmel
Datasheet:
![ATMEGA164P-A15AZ](/photos/6/70/67042/313-44-tqfp_tmb.jpg)
Part Number:
Description:
MCU AVR 16KB FLASH 15MHZ 44TQFP
Manufacturer:
Atmel
Datasheet:
![ATMEGA164P-15AT](/images/manufacturer_photos/0/0/78/atmel_tmb.jpg)
Part Number:
Description:
MCU AVR 16K FLASH 15MHZ 44-TQFP
Manufacturer:
Atmel
Datasheet: