ATMEGA328P-20PU Atmel, ATMEGA328P-20PU Datasheet - Page 221
ATMEGA328P-20PU
Manufacturer Part Number
ATMEGA328P-20PU
Description
Manufacturer
Atmel
Datasheet
1.ATMEGA328P-20PU.pdf
(419 pages)
Specifications of ATMEGA328P-20PU
Cpu Family
ATmega
Device Core
AVR
Device Core Size
8b
Frequency (max)
20MHz
Interface Type
SPI/TWI/USART
Program Memory Type
Flash
Program Memory Size
32KB
Total Internal Ram Size
2KB
# I/os (max)
23
Number Of Timers - General Purpose
3
Operating Supply Voltage (typ)
3.3/5V
Operating Supply Voltage (max)
5.5V
Operating Supply Voltage (min)
2.7V
On-chip Adc
6-chx10-bit
Instruction Set Architecture
RISC
Operating Temp Range
-40C to 85C
Operating Temperature Classification
Industrial
Mounting
Through Hole
Pin Count
28
Package Type
PDIP
Lead Free Status / Rohs Status
Compliant
- Current page: 221 of 419
- Download datasheet (7Mb)
Figure 21-10. Interfacing the Application to the TWI in a Typical Transmission
8025K–AVR–10/09
writes to TWCR to
TWI bus
transmission of
1. Application
START condition sent
Status code indicates
START
initiate
2. TWINT set.
START
TWDR, and loads appropriate control
3. Check TWSR to see if START was
signals into TWCR, makin sure that
sent. Application loads SLA+W into
1. The first step in a TWI transmission is to transmit a START condition. This is done by
2. When the START condition has been transmitted, the TWINT Flag in TWCR is set, and
3. The application software should now examine the value of TWSR, to make sure that the
4. When the address packet has been transmitted, the TWINT Flag in TWCR is set, and
5. The application software should now examine the value of TWSR, to make sure that the
and TWSTA is written to zero.
TWINT is written to one,
writing a specific value into TWCR, instructing the TWI hardware to transmit a START
condition. Which value to write is described later on. However, it is important that the
TWINT bit is set in the value written. Writing a one to TWINT clears the flag. The TWI will
not start any operation as long as the TWINT bit in TWCR is set. Immediately after the
application has cleared TWINT, the TWI will initiate transmission of the START condition.
TWSR is updated with a status code indicating that the START condition has success-
fully been sent.
START condition was successfully transmitted. If TWSR indicates otherwise, the applica-
tion software might take some special action, like calling an error routine. Assuming that
the status code is as expected, the application must load SLA+W into TWDR. Remember
that TWDR is used both for address and data. After TWDR has been loaded with the
desired SLA+W, a specific value must be written to TWCR, instructing the TWI hardware
to transmit the SLA+W present in TWDR. Which value to write is described later on.
However, it is important that the TWINT bit is set in the value written. Writing a one to
TWINT clears the flag. The TWI will not start any operation as long as the TWINT bit in
TWCR is set. Immediately after the application has cleared TWINT, the TWI will initiate
transmission of the address packet.
TWSR is updated with a status code indicating that the address packet has successfully
been sent. The status code will also reflect whether a Slave acknowledged the packet or
not.
address packet was successfully transmitted, and that the value of the ACK bit was as
expected. If TWSR indicates otherwise, the application software might take some special
action, like calling an error routine. Assuming that the status code is as expected, the
application must load a data packet into TWDR. Subsequently, a specific value must be
written to TWCR, instructing the TWI hardware to transmit the data packet present in
TWDR. Which value to write is described later on. However, it is important that the
TWINT bit is set in the value written. Writing a one to TWINT clears the flag. The TWI will
SLA+W
Status code indicates
SLA+W sent, ACK
4. TWINT set.
received
A
Application loads data into TWDR, and
5. Check TWSR to see if SLA+W was
loads appropriate control signals into
TWCR, making sure that TWINT is
sent and ACK received.
written to one
Data
data sent, ACK received
Status code indicates
6. TWINT set.
ATmega48P/88P/168P
A
making sure that TWINT is written to one
7. Check TWSR to see if data was sent
Application loads appropriate control
signals to send STOP into TWCR,
STOP
and ACK received.
TWINT set
Indicates
221
Related parts for ATMEGA328P-20PU
Image
Part Number
Description
Manufacturer
Datasheet
Request
R
Part Number:
Description:
Manufacturer:
Atmel Corporation
Datasheet:
Part Number:
Description:
IC MCU AVR 32K FLASH 32QFN
Manufacturer:
Atmel
Datasheet:
Part Number:
Description:
IC MCU AVR 32K FLASH 32TQFP
Manufacturer:
Atmel
Datasheet:
Part Number:
Description:
IC MCU AVR 32K FLASH 28PDIP
Manufacturer:
Atmel
Datasheet:
Part Number:
Description:
8-bit Microcontrollers - MCU AVR 16KB FL 512B EE 1KB SRAM 20 MHZ GRN
Manufacturer:
Atmel
Part Number:
Description:
IC MCU AVR 32K FLASH 32TQFP
Manufacturer:
Atmel
Datasheet:
Part Number:
Description:
IC MCU AVR 32K FLASH 32QFN
Manufacturer:
Atmel
Datasheet:
Part Number:
Description:
Manufacturer:
Atmel Corporation
Datasheet:
Part Number:
Description:
Manufacturer:
ATMEL Corporation
Datasheet:
Part Number:
Description:
IC AVR MCU 32K 16MHZ 5V 44-QFN
Manufacturer:
Atmel
Datasheet:
Part Number:
Description:
IC AVR MCU 32K 16MHZ 5V 40DIP
Manufacturer:
Atmel
Datasheet:
Part Number:
Description:
IC AVR MCU 32K 16MHZ 5V 44TQFP
Manufacturer:
Atmel
Datasheet:
Part Number:
Description:
IC AVR MCU 32K 16MHZ IND 40-DIP
Manufacturer:
Atmel
Datasheet:
Part Number:
Description:
IC AVR MCU 32K 16MHZ IND 44-TQFP
Manufacturer:
Atmel
Datasheet: