135319 (721861), страница 16
Текст из файла (страница 16)
H = '0'-младший байт, '1'-старший байт; i - вход данных;
x - не использ-ся; 1 - 1-й бит блокировки; 2 - 2-й бит блокировки;
3 - CKSEL0; 4 - CKSEL1; 5 - CKSEL2; 6 - BODEN; 7 - BODLEVEL;
8 - SPIEN;
Максимально допустимые параметры
Рабочая температура ................................. -40±С - +105±С Температура хранения ................................ -65±С - +150±С Напряжение на любом выводе кроме RESET .............. -1.0V - +7.0V Максимальное рабочее напряжение ..................... 6.6V Постоянный ток через вывод порта .................... 40.0 mA Постоянный ток между VCC и GND .......................140.0 mA |
ПРИМЕЧАНИЕ: выход параметров за пределы указанные в таблице может привести к нарушению работоспособности микросхемы. Это предельные значения параметров, рабочие параметры микросхемы приведены ниже. Удержание предельных значений на выводах м/сх в течение длительного времени может привести к потере работоспособности м/сх.
ХАРАКТЕРИСТИКИ ПО ПОСТОЯННОМУ ТОКУ
Ta = -40...+85±C, Vcc=2.7...6.0V (если не указано иначе)
Мин./Тип./Макс.
Входное напряжение '0' - -0.5/_/0.3Vcc V
Входное напряжение '1'(кроме XTAL1 и RESET) - 0.7Vcc/_/Vcc+0.5 V
на XTAL1 и RESET - 0.7Vcc/_/Vcc+0.5 V Выходное напряжение '0'(Порты B,C,D) Il=20mA, Vcc=5V - _/_/0.5 V
Il=10mA, Vcc=3V - _/_/0.5 V Выходное напряжение '1'(Порты B,C,D) I0h=10mA, Vcc=5V - Vcc-0.5/_/_ V
I0h=5mA, Vcc=2.7V - Vcc-0.5/_/_ V Подтягивающий резистор сброса - 100/_/500 кОм
Подтягивающий резистор вывода порта 10/50/100 кОм
Потребляемый ток:
Активный режим, 3V, 4MHz - _/3.0/_ mA
холостой ход (idle mode), 3V, 4MHz - _/750/_ uA
пониженное потребление WDT включен, 3V - _/10/_ uA
WDT выключен, 3V - _/_/1 uA
Напряжение смещения аналогового компаратора Vcc=5V - _/_/20 mV
Входной ток утечки аналогового компаратора - 1/5/10 nA
Время срабатывания аналогового компаратора Vcc=2.7V - _/750/_ nS
Vcc=4.0V - _/500/_ nS
ПРИМЕЧАНИЯ:
1. В рабочем состоянии ток через выводы должен ограничиваться следующими условиями:
- Максимальный ток через вывод - 20 mA
- Максимальный ток через все выводы - 80mA
При превышении выходного тока выше указанных пределов, напряжение на выходе может отличаться от приведенного выше. Поглощение выводами тока больше приведенного не гарантируется.
2. Минимальное напряжение для режима пониженного потребления - 2V
ПАРАМЕТРЫ ВНЕШНЕГО ТАКТОВОГО СИГНАЛА
Параметр | Vcc=2.7...6.0 V | Vcc=4.0...6.0 V | Ед. | ||
min | max | min | max | ||
Частота | 0 | 4 | 0 | 8 | MHz |
Период | 250 | 125 | nS | ||
Длительность '1' | 115 | 58.3 | nS | ||
Длительность '0' | 115 | 58.3 | nS | ||
Длительность фронта | 10 | 4.15 | nS |
Список регистров.
Адрес регистра | название егистра | Bit 7 | Bit 6 | Bit 5 | Bit 4 | Bit 3 | Bit 2 | Bit 1 | Bit 0 |
3Fh (5Fh) | SREG | I | T | H | S | V | N | Z | C |
3Eh (5Eh) | ЗАРЕЗЕРВИРОВАН | ||||||||
3Dh (5Dh) | SP | SP7 | SP6 | SP5 | SP4 | SP3 | SP2 | SP1 | SP0 |
3Ch (5Ch) | ЗАРЕЗЕРВИРОВАН | ||||||||
3Bh (5Bh) | GIMSK | INT1 | INT0 | - | - | - | - | - | - |
3Ah (5Ah) | GIFR | INTF1 | INTF0 | - | - | - | - | - | - |
39h (59h) | TIMSK | TOIE1 | OCIE1 | - | - | TICE1 | - | TOIE0 | - |
38h (58h) | TIFR | TOV1 | OCF1 | - | - | ICF1 | - | TOV0 | - |
37h (57h) | ЗАРЕЗЕРВИРОВАН | ||||||||
36h (56h) | ЗАРЕЗЕРВИРОВАН | ||||||||
35h (55h) | MCUCR | - | - | SE | SM | ISC11 | ISC10 | ISC01 | ISC00 |
34h (54h) | MCUSR | - | - | - | - | WDRF | BORF | EXTRF | PORF |
33h (53h) | TCCR0 | - | - | - | - | - | CS02 | CS01 | CS00 |
32h (52h) | TCNT0 | Таймер / счетчик (8 бит) | |||||||
31h (51h) | ЗАРЕЗЕРВИРОВАН | ||||||||
30h (50h) | ЗАРЕЗЕРВИРОВАН | ||||||||
2Fh (4Fh) | TCCR1A | COM11 | COM10 | - | - | - | - | PWM11 | PWM10 |
2Eh (4Eh) | TCCR1B | ICNC1 | ICES1 | - | - | CTC1 | CS12 | CS11 | CS10 |
2Dh (4Dh) | TCNT1H | Таймер/счетчик1 старший байт | |||||||
2Сh (4Сh) | TCNT1L | Таймер/счетчик1 младший байт | |||||||
2Bh (4Bh) | OCR1AH | Таймер/счетчик1 регистр сравнения старший байт | |||||||
2Ah (4Ah) | OCR1AL | Таймер/счетчик1 регистр сравнения младший байт | |||||||
- | ЗАРЕЗЕРВИРОВАН | ||||||||
27h (47h) | ICR1H | Таймер/счетчик1 регистр захвата старший байт | |||||||
26h (46h) | ICR1L | Таймер/счетчик1 регистр захвата младший байт | |||||||
- | ЗАРЕЗЕРВИРОВАН | ||||||||
21h (41h) | WDTCR | - | - | - | WDTOE | WDE | WDP2 | WDP1 | WDP0 |
20h (40h) | ЗАРЕЗЕРВИРОВАН | ||||||||
1Fh (3Fh) | ЗАРЕЗЕРВИРОВАН | ||||||||
1Eh (3Eh) | EEAR | Регистр адреса энергонезависимой памяти | |||||||
1Dh (3Dh) | EEDR | Регистр данных энергонезависимой памяти | |||||||
1Ch (3Ch) | EECR | - | - | - | - | EERIE | EEMWE | EEWE | EERE |
- | ЗАРЕЗЕРВИРОВАН | ||||||||
18h (38h) | PORTB | - | - | PORTB5 | PORTB4 | PORTB3 | PORTB2 | PORTB1 | PORTB0 |
17h (37h) | DDRB | - | - | DDB5 | DDB4 | DDB3 | DDB2 | DDB1 | DDB0 |
16h (36h) | PINB | - | - | PINB5 | PINB4 | PINB3 | PINB2 | PINB1 | PINB0 |
15h (35h) | PORTC | - | - | PORTC5 | PORTC4 | PORTC3 | PORTC2 | PORTC1 | PORTC0 |
14h (34h) | DDRC | - | - | DDC5 | DDC4 | DDC3 | DDC2 | DDC1 | DDC0 |
13h (33h) | PINC | - | - | PINC5 | PINC4 | PINC3 | PINC2 | PINC1 | PINC0 |
12h (32h) | PORTD | - | - | PORTD5 | PORTD4 | PORTD3 | PORTD2 | PORTD1 | PORTD0 |
11h (31h) | DDRD | - | - | DDD5 | DDD4 | DDD3 | DDD2 | DDD1 | DDD0 |
10h (30h) | PIND | - | - | PIND5 | PIND4 | PIND3 | PIND2 | PIND1 | PIND0 |
0Fh (2Fh) | SPDR | Регистр данных SPI | |||||||
0Eh (2Eh) | SPSR | SPIF | WCOL | - | - | - | - | - | - |
0Dh (2Dh) | SPCR | SPIE | SPE | DORD | MSTR | CPOL | CPHA | SPR1 | SPR0 |
0Ch (2Ch) | UDR | Регистр данных UART | |||||||
0Bh (2Bh) | USR | RXC | TXC | UDRE | FE | OR | - | - | - |
0Ah (2Ah) | UCR | RXCIE | TXCIE | UDRIE | RXEN | TXEN | CHR9 | RXB8 | TXB8 |
09h (29h) | UBRR | Регистр скорости передачи UART | |||||||
08h (28h) | ACSR | ACD | AINBG | ACO | ACI | ACIE | ACIC | ACIS1 | ACIS0 |
07h (27h) | ADMUX | - | ADCBG | - | - | - | MUX2 | MUX1 | MUX0 |
06h (26h) | ADCSR | ADEN | ADSC | ADFR | ADIF | ADIE | ADPS2 | ADPS1 | ADPS0 |
05h (25h) | ADCH | - | - | - | - | - | - | ADC9 | ADC8 |
04h (24h) | ADCL | ADC7 | ADC6 | ADC5 | ADC4 | ADC3 | ADC2 | ADC1 | ADC0 |
03h ( 23h) | UBRRH | Регистр скорости передачи UART (старший) | |||||||
- | - | ЗАРЕЗЕРВИРОВАН | |||||||
00h (20h) | - | ЗАРЕЗЕРВИРОВАН |
Примечание: Для совместимости с другими устройствами, зарезервированные биты при записи необходимо устанавливать в "0". Данные в зарезервированные ячейки памяти записывать нельзя.
Набор команд
Мнемоника | Операнды | Описание | Действие | Флаги | Цкл |
Арифметические команды | |||||
ADD | Rd, Rr | Сложить два регистра | Rd | Z,C,N,V,H | 1 |
ADC | Rd, Rr | Сложить с переносом | Rd | Z,C,N,V,H | 1 |
ADIW | Rdl,K | Сложить слово с константой | Rdh,l | Z,C,N,V,S | 2 |
SUB | Rd, Rr | Вычесть два регистра | Rd | ||
SUBI | Rd, K | Вычесть константу | Rd | ||
SBIW | Rdl,K | Вычесть слово с константой | Rdh,l | ||
SBC | Rd, Rr | Вычесть с переносом | Rd | ||
SBCI | Rd, K | Вычесть с переносом | Rd | ||
AND | Rd, Rr | Логическое И | Rd | ||
ANDI | Rd, K | Логическое И | Rd | ||
OR | Rd, Rr | Логическое ИЛИ | Rd | ||
ORI | Rd, K | Логическое ИЛИ | Rd | Z,N,V | 1 |
EOR | Rd, Rr | Исключающее ИЛИ | Rd | Z,N,V | 1 |
COM | Rd | Дополнение до 1 | Rd<$FF - Rd | Z,C,N,V | 1 |
NEG | Rd | Дополнение до 2 | Rd<$00 - Rd | Z,C,N,V,H | 1 |
SBR | Rd,K | Установ. бита в регистре | Rd | Z,N,V | 1 |
CBR | Rd,K | Сброс. бита в регистре | Rd | Z,N,V | 1 |
INC | Rd | Увеличить на 1 | Rd | Z,N,V | 1 |
DEC | Rd | Уменьшить на 1 | Rd | Z,N,V | 1 |
TST | Rd | Проверить на 0 или 1 | Rd | Z,N,V | 1 |
CLR | Rd | Очистить регистр | Rd | Z,N,V | 1 |
SER | Rd | Установить регистр | Rd<$FF | None | 1 |
КОМАНДЫ ВЕТВЛЕНИЯ | |||||
RJMP | k | Относительный переход | PC | None | 2 |
LJMP | Переход по адресу (Z) | PC | None | 2 | |
RCALL | k | Относительный вызов подпрогрограммы | PC | None | 3 |
ICALL | Вызов подпр по адресу (Z) | PC | None | 3 | |
RET | Выход из подпрограммы | PC | None | 4 | |
RETI | Выход из прерывания | PC | I | 4 | |
CPSE | Rd,Rr | Сравнить , пропуск если Rd=Rr | if(Rd=Rr) PC | None | 1/2 |
CP | Rd,Rr | Сравнить | Rd-Rr | Z,N,V,C,H | 1 |
CPC | Rd,Rr | Сравнить с переносом | Rd-Rr-C | Z,N,V,C,H | 1 |
CPI | Rd,K | Сравнить с константой | Rd-K | ||
SBRC | Rr,b | Пропуск если бит в регистре сброшен | if(Rr(b)=0) | None | 1/2 |
SBRS | Rr,b | Пропуск если бит в регистре установлен | if(Rr(b)=1) | None | 1/2 |
SBIC | P, b | Пропуск если бит в регистре I\O сброшен | if(P(b)=0) | None | 1/2 |
SBIS | P, b | Пропуск если бит в регистре I\O установлен | if(P(b)=1) | None | 1/2 |
BRBS | s, k | Переход если установл флаг s | if(SREG(s)=1) | None | 1/2 |
BRBC | s, k | Переход если сброшен флаг s | if(SREG(s)=0) | None | 1/2 |
BREQ | k | Переход если равно Z=1 | if(Z=1) | None | 1/2 |
BRNE | k | Переход если неравно if(Z=0) | if(Z=0) | None | 1/2 |
BRCS | k | Переход если установл перенос | if(C=1) | None | 1/2 |
BRCC | k | Переход если сброшен перенос | if(C=0) | None | 1/2 |
BRSH | k | Переход если равно или больше | if(C=0) | None | 1/2 |
BRLO | k | Переход если меньше | if(C=1) PC | None | 1/2 |
BRMI | k | Переход если минус | if(N=1) PC | None | 1/2 |
BRPL | k | Переход если плюс | if(N=0) PC | None | 1/2 |
BRGE | k | Переход если больше или равно,со знаком | if(N XOR V=0) PC | None | 1/2 |
BRLT | k | Переход если меньше нуля, со знаком | if(N XOR V=1) PC | None | 1/2 |
BRHS | k | Переход если установл флаг H | if (H=1) PC | None | 1/2 |
BRHC | k | Переход если сброшен флаг H | if (H=0) PC | None | 1/2 |
BRTS | k | Переход если установл флаг T | if (H=1) PC | None | 1/2 |
BRTC | k | Переход если сброшен флаг T | if (H=0) PC | None | 1/2 |
BRVS | k | Переход если установл флаг V | if (H=1) PC | None | 1/2 |
BRVC | k | Переход если сброшен флаг V | if (H=0) PC | None | 1/2 |
BRIE | k | Переход если разрешены прерывания | if(I=1) PC | None | 1/2 |
BRID | k | Переход если запрещены прерывания | if(I=1) PC | None | 1/2 |
КОМАНДЫ ПЕРЕСЫЛКИ | |||||
MOV | Rd,Rr | Пересылка между рег. | Rd | None | 1 |
LDI | Rd,K | Загрузить константу | Rd | None | 1 |
LD | Rd,X | Загрузить регистр непосредственно | Rd<(X) | None | 2 |
LD | Rd,X+ | Загрузить регистр непосредст. c постинкрем | Rd<(X),X | None | 2 |
LD | Rd,-X | Загрузить регистр непоср. с предв.декрем | X | None | 2 |
LD | Rd,Y | Загрузить регистр непосредственно | Rd<(Y) | None | 2 |
LD | Rd,Y+ | Загрузить регистр непоср. c пост инкрем | Rd<(Y),Y | None | 2 |
LD | Rd,-Y | Загрузить регистр непоср. с предв.декрем | Y | None | 2 |
LDD | Rd,Y+q | Загрузить регистр непоср. со смещением | Rd<(Y+q) | None | 2 |
LD | Rd,Z | Загрузить регистр непосредственно | Rd<(Z) | None | 2 |
LD | Rd,Z+ | Загрузить регистр непоср. c пост инкрем | Rd<(Z),Z | None | 2 |
LD | Rd,-Z | Загрузить регистр непоср. с предв.декрем | Z | None | 2 |
LDD | Rd,Z+q | Загрузить регистр непоср. со смещением | Rd<(Z+q) | None | 2 |
LDS | Rd,k | Загрузить из ОЗУ | Rd<(k) | None | 3 |
ST | X,Rr | Записать регистр непосредственно | (X) | None | 2 |
ST | -X,Rr | Записать регистр непоср.c пред.декрем. | X | ||
ST | Y,Rr | Записать регистр непосредственно | (Y) | ||
ST | Y+,Rr | Записать регистр непоср.c пост инкр | (X) | ||
ST | -Y,Rr | Записать регистр непоср.c пред.декрем | Y | None | 2 |
STD | Y+q,Rr | Запис.рег.непоср.сосмещением | (Y+q) | None | 2 |
ST | Z,Rr | Записать регистр непосредственно | (Y) | None | 2 |
ST | Z+,Rr | Записать регистр непоср.c пост инкр | (Y) | None | 2 |
ST | -Z,Rr | Записать регистр непоср.c пред.декрем | Z | None | 2 |
STD | Y+q,Rr | Запис.рег.непоср.сосмещением | (Y+q) | None | 2 |
STS | k,Rr | Записать в ОЗУ | (k) | None | 3 |
LPM | Загр.из памяти программ | R0<(Z) | None | 3 | |
IN | Rd, P | Ввод из порта | Rd
| None | 1 |
OUT | P, Rr | Вывод в порт | P | None | 1 |
PUSH | Rr | Записать в стек | STACK | None | 2 |
POP | Rr | Прочитать из стека | Rr | None | 2 |
КОМАНДЫ РАБОТЫ С БИТАМИ | |||||
SBI | P,b | Установить бит в регистре ввода/вывода | I/O(P,b)<1 | None | 2 |
CBI | P,b | Сбросить бит в регистре ввода/вывода | I/O(P,b)<0 | None | 2 |
LSL | Rd | Логический сдвиг влево | Rd(n+1) | Z,C,N,V | 1 |
LSR | Rd | Логичский сдвиг вправо | Rd(n) | Z,C,N,V | 1 |
ROL | Rd | сдвиг влево через C | Rd(0) | Z,C,N,V | 1 |
ROR | Rd | сдвиг вправо через C | Rd(7) | Z,C,N,V | 1 |
ASR | Rd | Арифметический сдвиг вправо | Rd(n) | Z,C,N,V | 1 |
SWAP | Rd | Обмен тетрад | Rd(3-0) Rd(7-4) | None | 1 |
BSET | s | Установить флаг | SREG(s)<1 | SREG(s) | 1 |
BCLR | s | Сбросить флаг | SREG(s)<0 | SREG(s) | 1 |
BST | Rr,b | Запомнить бит в T | T | T | 1 |
BLD | Rd, b | Прочитать бит из T | Rd(b) | None | 1 |
SEC | Установить перенос | C<1 | C | 1 | |
CLC | Сбросить перенос | C<0 | C | 1 | |
SEN | Установить флаг N | N<1 | N | 1 | |
CLN | Сбросить флаг N | N<0 | N | 1 | |
SEZ | Установить флаг Z | Z<1 | Z | 1 | |
CLZ | Сбросить флаг Z | Z<0 | Z | 1 | |
SEI | Разрешить прерывания | I<1 | I | 1 | |
CLI | Запретить прерывания | I<0 | I | 1 | |
SES | Установить флаг S | S<1 | S | 1 | |
CLS | Сбросить флаг S | S<0 | S | 1 | |
SEV | Установить флаг V | V<1 | V | 1 | |
CLV | Сбросить флаг V | V<0 | V | 1 | |
SET | Установить флаг T | T<1 | T | 1 | |
CLT | Сбросить флаг T | T<0 | T | 1 | |
SEH | Установить флаг H | H<1 | H | 1 | |
CLH | Сбросить флаг H | H<0 | H | 1 | |
NOP | Нет операции | None | 1 | ||
SLEEP | Останов | None | 3 | ||
WDR | Сброс сторожевого таймера | None | 1 |
Подготовил Матвеев Дмитрий
2003
1>1>1>1>1>1>1>1>1>1>0>0>0>0>0>0>0>0>0>0>