ATmega168P Atmel Corporation, ATmega168P Datasheet - Page 186

no-image

ATmega168P

Manufacturer Part Number
ATmega168P
Description
Manufacturer
Atmel Corporation
Datasheets

Specifications of ATmega168P

Flash (kbytes)
16 Kbytes
Pin Count
32
Max. Operating Frequency
20 MHz
Cpu
8-bit AVR
# Of Touch Channels
16
Hardware Qtouch Acquisition
No
Max I/o Pins
23
Ext Interrupts
24
Usb Speed
No
Usb Interface
No
Spi
2
Twi (i2c)
1
Uart
1
Graphic Lcd
No
Video Decoder
No
Camera Interface
No
Adc Channels
8
Adc Resolution (bits)
10
Adc Speed (ksps)
15
Analog Comparators
1
Resistive Touch Screen
No
Temp. Sensor
Yes
Crypto Engine
No
Sram (kbytes)
1
Eeprom (bytes)
512
Self Program Memory
YES
Dram Memory
No
Nand Interface
No
Picopower
Yes
Temp. Range (deg C)
-40 to 85
I/o Supply Class
1.8 to 5.5
Operating Voltage (vcc)
1.8 to 5.5
Fpu
No
Mpu / Mmu
no / no
Timers
3
Output Compare Channels
6
Input Capture Channels
1
Pwm Channels
6
32khz Rtc
Yes
Calibrated Rc Oscillator
Yes

Available stocks

Company
Part Number
Manufacturer
Quantity
Price
Part Number:
ATmega168P-20AN
Manufacturer:
Atmel
Quantity:
10 000
Part Number:
ATmega168P-20ANR
Manufacturer:
Atmel
Quantity:
10 000
Part Number:
ATmega168P-20AU
Manufacturer:
ATMEL
Quantity:
1 250
Part Number:
ATmega168P-20AU
Manufacturer:
Atmel
Quantity:
10 000
Part Number:
ATmega168P-20AUR
Manufacturer:
Atmel
Quantity:
10 000
Part Number:
ATmega168P-20MU
Manufacturer:
ATMEL
Quantity:
12 000
Part Number:
ATmega168P-20MU
Manufacturer:
ATMEL/爱特梅尔
Quantity:
20 000
Company:
Part Number:
ATmega168P-20PU
Quantity:
1
Part Number:
ATmega168PA-15AZ
Manufacturer:
VAC
Quantity:
120
Part Number:
ATmega168PA-15AZ
Manufacturer:
Atmel
Quantity:
10 000
Part Number:
ATmega168PA-15MZ
Manufacturer:
TOSHIBA
Quantity:
1 000
Part Number:
ATmega168PA-AU
Manufacturer:
Atmel
Quantity:
2 902
Part Number:
ATmega168PA-AU
Manufacturer:
MICROCHIP/微芯
Quantity:
20 000
Company:
Part Number:
ATmega168PA-AU
Quantity:
350
Part Number:
ATmega168PA-MMH
Manufacturer:
ATMEL/爱特梅尔
Quantity:
20 000
186
ATmega48P/88P/168P
Note:
The receive function example reads all the I/O Registers into the Register File before any com-
putation is done. This gives an optimal receive buffer utilization since the buffer location read will
be free to accept new data as early as possible.
Assembly Code Example
C Code Example
USART_Receive:
USART_ReceiveNoError:
unsigned int USART_Receive( void )
{
}
; Wait for data to be received
sbis UCSRnA, RXCn
rjmp USART_Receive
; Get status and 9th bit, then data from buffer
in
in
in
; If error, return -1
andi r18,(1<<FEn)|(1<<DORn)|(1<<UPEn)
breq USART_ReceiveNoError
ldi
ldi
; Filter the 9th bit, then return
lsr
andi r17, 0x01
ret
unsigned char status, resh, resl;
/* Wait for data to be received */
while ( !(UCSRnA & (1<<RXCn)) )
/* Get status and 9th bit, then data */
/* from buffer */
status = UCSRnA;
resh = UCSRnB;
resl = UDRn;
/* If error, return -1 */
if ( status & (1<<FEn)|(1<<DORn)|(1<<UPEn) )
/* Filter the 9th bit, then return */
resh = (resh >> 1) & 0x01;
return ((resh << 8) | resl);
1.
return -1;
See ”About Code Examples” on page 8.
For I/O Registers located in extended I/O map, “IN”, “OUT”, “SBIS”, “SBIC”, “CBI”, and “SBI”
instructions must be replaced with instructions that allow access to extended I/O. Typically
“LDS” and “STS” combined with “SBRS”, “SBRC”, “SBR”, and “CBR”.
r18, UCSRnA
r17, UCSRnB
r16, UDRn
r17, HIGH(-1)
r16, LOW(-1)
r17
;
(1)
(1)
8025M–AVR–6/11

Related parts for ATmega168P