Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции.doc
Скачиваний:
288
Добавлен:
20.06.2014
Размер:
1.06 Mб
Скачать
          1. Директива set

Директива SET присваивает имени некоторое значение. Это имя позднее может быть использовано в выражениях. В отличие от директивы EQU значение имени может быть изменено другой директивой SET.

Пример.

.set io_offset = 0x23

.set porta = io_offset + 2

.cseg

clr r2 ;очистить регистр r2

out porta, r2 ;записать r2 в порт А

      1. Микроконтроллер atmega8535

        1. Характеристики, назначение выводов и структура микроконтроллера aTmega8535

          1. Характеристики микроконтроллера aTmega8535

Рассмотрим архитектуру микроконтроллеров AVR на примере ATmega8535. Как видно из его названия, он относится к линии Mega AVR.

Характеристики ATmega8535 таковы:

  • тактовая частота до 16 МГц (до 8 МГц у ATmega8535L);

  • разрядность 8 бит;

  • RISC-архитектура:

  • 130 команд, большинство из которых выполняется за один такт;

  • 32 8-разрядных регистра общего назначения;

  • производительность до 16 MIPS на частоте 16 MHz;

  • аппаратный двухтактный перемножитель;

  • память:

  • Flash-память 8 Кбайт с возможностью перепрограммирования до 10000 циклов стирания-записи;

  • загрузочная секция с независимыми блокировочными битами (опционально);

  • EEPROM 512 байт с возможностью перепрограммирования до 100000 циклов стирания-записи;

  • SRAM 512 байт;

  • ввод-вывод:

  • 32 линии ввода-вывода;

  • двухпроводный последовательный интерфейс;

  • программируемый универсальный синхронно-асинхронный приемо-передатчик (USART);

  • интерфейс SPI;

  • два 8-разрядных таймера-счетчика;

  • один 16-разрядный таймер-счетчик;

  • программируемый сторожевой таймер (Programmable Watchdog Timer, PWT);

  • счетчик реального времени (Real Time Counter, RTC);

  • 4 канала ШИМ (широтно-импульсная модуляция, Pulse Width Modulation, PWM);

  • 8-канальный 10-битный АЦП (аналого-цифровой преобразователь, Analog to Digital Converter, ADC);

  • аналоговый компаратор (Analog Comparator);

  • специальные характеристики:

  • внутренний калиброванный RC-контур;

  • внешние и внутренние источники прерываний;

  • 6 режимов пониженного энергопотребления: Idle, ADC Noise Reduction, Power-save, Power-down, Standby, Extended Standby.

          1. Назначение выводов микроконтроллера aTmega8535

ATmega8535 выпускается в различных корпусах. Один из них — PDIP-40 (рис.).

Рис. Расположение выводов ATmega8535 в корпусе PDIP-40

Назначение выводов микроконтроллера ATmega8535:

  • PA0-PA7 — порт A;

  • PB0-PB7 — порт B;

  • PC0-PC7 — порт C;

  • PD0-PD7 — порт D;

  • RESET# — сброс;

  • VCC — напряжение питания 4.5-5.5 В (2.7-5.5 В для ATmega8535L);

  • GND — общий провод;

  • XTAL1, XTAL2 — подключение кварцевого резонатора;

  • AVCC — напряжение питания для порта A и АЦП, должен быть подключен к VCC, причем через фильтр нижних частот в случае, если АЦП используется;

  • AREF — внешний источник опорного напряжения для АЦП;

  • XCK (USART External Clock Input/Output) — вход внешних тактовых импульсов интерфейса USART;

  • T0, T1 (Timer/Counter External Counter Input) — входы таймеров T0, T1;

  • INT0, INT1, INT2 — входы внешних прерываний;

  • AIN0, AIN1 (Analog Comparator Negative Input) — входы аналогового компаратора;

  • OC0, OC1A, OC1B, OC2 (Timer/Counter Output Compare Match Output) — выходы таймеров T0, T1, T2;

  • SS# (SPI Slave Select Input) — сетевой режим по интерфейсу SPI;

  • MOSI (SPI Bus Master Output/ Slave Input), MISO (SPI Bus Master Input/ Slave Output) — вход-выход данных интерфейса SPI;

  • SCK (SPI Bus Serial Clock) — вход тактовых импульсов интерфейса SPI в режиме Slave, выход — в режиме Master;

  • RXD (Receive Data), TXD (Transmit Data) — вход и выход данных интерфейса USART — когда передатчик USART разрешен, TXD становится его выходом вне зависимости от значения DDRD1, а RXD — входом вне зависимости от значения DDRD0;

  • ICP1 (Timer/Counter1 Input Capture Pin) — вход захвата таймера T1;

  • SDA (Two-wire Serial Interface Data) и SDL (Two-wire Serial Interface Clock) — линии последовательной передачи данных и тактовых импульсов по шине I2C — если бит TWEN в регистре TWCR установлен, что разрешает интерфейс I2C, то выводы PC1 и PC0 отсоединяются от порта и становятся линиями передачи данных и тактовых импульсов интерфейса I2C;

  • TOSC1, TOSC2 — выводы подключения часового резонатора 32768 Гц;

  • ADC0-ADC7 — каналы АЦП.

Таким образом, тридцать две линии ввода-вывода распределены по четырем двунаправленным 8-битным портам, которые имеют также альтернативные функции. Все линии ввода-вывода могут находиться в трех состояниях: нуля, единицы и высокоомном.