Реклама ⓘ
Главная » Микроконтроллеры
Призовой фонд
на апрель 2024 г.
1. 100 руб.
От пользователей

Похожие статьи:


Реклама ⓘ

Урок 4. Порты вывода в микроконтроллере ATtiny13

Каждый микроконтроллер содержит порты ввода-вывода, к которым, можно подключить какое либо устройство, будь это светодиод или кнопка. В некоторых AVR микроконтроллерах некоторые порты ввода-вывода можно сконфигурировать как аналоговые порты ввода-вывода, например АЦП (Аналого-цифровой преобразователь ), ШИМ (Широтно-импульсная модуляция).
Порты ввода-вывода AVR микроконтроллера ATtiny13:

Порты  ввода-вывода AVR микроконтроллера Attiny13

Как мы видим на картинке выше, у микроконтроллера ATtiny13, 6 портов ввода-вывода (PB0 – PB5) и 2 ножки по питанию (VCC, GND). Но, первая ножка микроконтроллера Attiny13 (порт PB5), по умолчанию не порт ввода-вывода, а сброс (Reset) микроконтроллера. Его можно переключить в порт ввода-вывода специальным фьюз битом (RSTDISBL), но тогда микроконтроллер не будет поддерживать внутрисхемное программирование (по SPI интерфейсу).

Внимание! Не устанавливаете без надобности фьюз бит RSTDISBL, в противном случае ваш микроконтроллер перестанет программироваться по SPI интерфейсу (внутрисхемное программирование).

В цифровой порт вывода можно записать два значения: логический "0" (низкий уровень) и логическую "1" (высокий уровень).

Но для начала надо сконфигурировать ножку микроконтроллера как порт вывода командой:
Config Port(Порт) = Output
Где "порт" необходимо указать имя порта, например:
Config PORTB.2 = Output
Так мы сконфигурируем 7 ножку (PB2) микроконтроллера Attiny13 как порт вывода.

Также мы можем, сконфигурировать целую группу портов A, B или C (и.д.). Обычно в одной группе портов, несколько портов ввода-вывода. Пример конфигурирования группы портов как порты вывода:
Config Port(Группа портов) = Output
Где "группа портов" необходимо указать букву группы, например:
Config PORTB = Output
Так мы сконфигурируем группу портов B как порты вывода.

Теперь, когда порт сконфигурирован как порт вывода, можно записать в него два значения (логический "0" и логическую "1"), например:
Port(Имя порта) = (Значение)
Где "Имя порта" необходимо указать имя порта, а где "значение" 1 или 0, например:
PortB.2 = 1
В группу портов можно записать значение 1 или 255, например:
PortB = 255

Теги:

Яковлев Александр Вячеславович Опубликована: 2012 г. 0 0
Я собрал 0 0
x

Оценить статью

  • Техническая грамотность
  • Актуальность материала
  • Изложение материала
  • Полезность устройства
  • Повторяемость устройства
  • Орфография
0

Средний балл статьи: 0 Проголосовало: 0 чел.

Комментарии (2) | Я собрал (0) | Подписаться

0
Алексей #
Как-то все размазано и непонятно. Если быть точнее, то у МК есть три регистра, DDRx, PORTx и PINx. В первый пишем либо 0хFF, либо 0x00. Соотведственно ввод или вывод, где х это имя порта. Можно конечно по разрядно 1 или 0 писать, если надо одновременно читать и писать. PORTx для вывода, а PINx для чтения. И все. А уж в каком компилятор писать прогу, ну тут каму как нравится.
Ответить
0
Lavad #
Значит, Вам пора пройти круг по-новой: ясли, детский сад, школа,...
И еще, наверно, открыть свои широко закрытые глаза - уроки писаны под конкретную прогу - Bascom-AVR!
Ответить
Добавить комментарий
Имя:
E-mail:
не публикуется
Текст:
Защита от спама:
В чем измеряется электрическое сопротивление?
Файлы:
 
Для выбора нескольких файлов использйте CTRL

AVR-программатор USB ASP
AVR-программатор USB ASP
Модуль измерения тока на ACS712 (30А) FM-модуль RDA5807M
вверх