AT90PWM81 Atmel Corporation, AT90PWM81 Datasheet - Page 37

no-image

AT90PWM81

Manufacturer Part Number
AT90PWM81
Description
Manufacturer
Atmel Corporation
Datasheet

Specifications of AT90PWM81

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

Available stocks

Company
Part Number
Manufacturer
Quantity
Price
Part Number:
AT90PWM81-16MF
Manufacturer:
Atmel
Quantity:
3 118
Part Number:
AT90PWM81-16MN
Manufacturer:
Atmel
Quantity:
2 446
Part Number:
AT90PWM81-16SF
Manufacturer:
Atmel
Quantity:
2 428
Part Number:
AT90PWM81-16SN
Manufacturer:
Atmel
Quantity:
1 500
7734P–AVR–08/10
can stop the previous clock source. It will be better to run this sequence once the interrupts disabled. The
user (code) has the responsibility of the clock switching sequence.
Here is a “light” C-code that describes such a sequence of commands.
Warning:
In the AT90PWM81, only one among the external clock sources can be enabled at a given time and it is
not possible to switch from external clock to external oscillator as both sources share one pin.
Also, it is not possible to switch the synchronization source of the PLL when the sytem clock is PLL/4.
See
As they are two CSEL adresses to access the Calibrated internal RC oscillator 8.0/1.0 MHz, the change
between the two frequencies is not allowed by the clock switching features. The CKRC81 bit in MCUCR
register must be used for this purpose.
C Code Example
Table 5-1 on page 28
void ClockSwiching (unsigned char clk-number, unsigned char sut) {
#define CLOCK-RECOVER
#define CLOCK-ENABLE
#define CLOCK-SWITCH
#define CLOCK-DISABLE
unsigned char previous-clk, temp;
}
// Disable interrupts
// “Recover System Clock Source” command
// “Enable Clock Source” command
// Wait for clock availability
// “Clock Source Switching” command
// Wait for effective switching
// “Disable Clock Source” command
// Re-enable interrupts
asm ("cli"); temp = SREG;
CLKCSR = 1 << CLKCCE;
CLKCSR = CLOCK-RECOVER;
previous-clk = CLKSELR & 0x0F;
CLKSELR = ((sut << 4 ) & 0x30) | (clk-number & 0x0F);
CLKCSR = 1 << CLKCCE;
CLKCSR = CLOCK-ENABLE;
while ((CLKCSR & (1 << CLKRDY)) == 0);
CLKCSR = 1 << CLKCCE;
CLKCSR = CLOCK-SWITCH;
while (1){
}
CLKSELR = previous-clk;
CLKCSR = 1 << CLKCCE;
CLKCSR = CLOCK-DISABLE;
SREG = temp; asm ("sei");
CLKCSR = 1 << CLKCCE;
CLKCSR = CLOCK-RECOVER;
if ((CLKSELR & 0x0F) == (clk-number & 0x0F)) break;
to identify these cases.
0x05
0x02
0x04
0x01
AT90PWM81
37

Related parts for AT90PWM81