простые интересные РАДИОСХЕМЫ сделанные своими руками


» СХЕМЫ И СТАТЬИ




Внимание! Форум только для чтения, продолжение на Shemaforum.ru


  • Страница 1 из 27
  • 1
  • 2
  • 3
  • 26
  • 27
  • »
Форум радиолюбителей » СХЕМЫ » МИКРОСХЕМЫ » AVR: порты ввода/вывода
AVR: порты ввода/вывода
Пн, 02.04.2012, 13:11 | Сообщение # 1        
[)еНиС
аватар
  Постов: 5614   Друзья 
Пн, 02.04.2012, 17:38 | Сообщение # 2        
skateman
аватар
  Постов: 4420   Друзья 
оооо, началось....
вечерком напишу

Добавлено (02.04.2012, 17:38)
---------------------------------------------
[)еНиС, у тебя вообще какой контроллер под рукой есть из AVR

Пн, 02.04.2012, 17:41 | Сообщение # 3        
[)еНиС
аватар
  Постов: 5614   Друзья 
Под рукой... Atmega8A-PU
Пн, 02.04.2012, 17:50 | Сообщение # 4        
skateman
аватар
  Постов: 4420   Друзья 
ну ты пока даташит качай с atmel.com, я тут скоро с работой завязываю и домой поеду, там и поговорим
Пн, 02.04.2012, 17:57 | Сообщение # 5        
[)еНиС
аватар
  Постов: 5614   Друзья 
Усе скачал, вернее не скачал, в браузере сразу открыл
Пн, 02.04.2012, 18:06 | Сообщение # 6        
[)еНиС
аватар
  Постов: 5614   Друзья 
Ну щас тогда скачаю
Пн, 02.04.2012, 21:00 | Сообщение # 7        
skateman
аватар
  Постов: 4420   Друзья 
Ну раз мега8, то пусть будет она. Открывай даташит там где цоколевка. Тут 3 порта – это PB, PC и PD. За эти 3 порта отвечают 3 регистра DDRx, PINx и PORTx, где x – буква порта.
Берем к примеру порт С. Данный порт имеет 7 разрядов PC0…PC6.
DDRC – регистр направления передачи данных. Если ты записываешь в разряд этого регистра 1, то разряд порта становится выходом, а если 0, то входом. Например если мы запишем в DDRC двоичное число 01111000, то PC0…PC2 станут входами, а PC3…PC6 – выходами.
PORTC – так называемый регистр состояния порта. Если разряд порта настроен на выход, то записью в этот разряд 1 ты выдаешь на вывод контроллера лог.1, если записываешь 0, то лог.0. При настройке разряда порта на вход и записи в соответствующий разряд PORTC 1 ты подключаешь внутренний подтягивающий резистор, т.е. данный вывод через внутренние цепи МК подключается к +Uпит через внутренний резистор, при записи 0 – вывод отключается от внутрянки МК и переводится в Hi-Z состояние.
PINC – регистр, из которого можно считать состояние порта, т.е. если разряд порта работает как вход, то считывая значение разряда, можно узнать что на входе МК. Ну, например, считывать состояние кнопки: нажата или отпущена.
Ну а теперь немного о командах.
Допустим берем все тот же порт С и хотим настроить разряды 0,4,6 на выходы, а остальные сделать входами – значит надо записать туда число 01010001. Запись 8-ми битного числа в РВВ надо вести через один из РОН, т.е. получаем:
Code

ldi R16, 0b01010001 ;запись константы в РВВ
out DDRC, R16    ;пересылки содержимого РОН в РВВ

Для установки разряда порта в соответствующий логический уровень есть следующие команды:
Code

sbi PORTC,0 ; установка 0 разряда в 1
cbi PORTC,0 ; сброс 0-го разряда

Ну а если выставить группу битов, то делаем через РОН.
Проверка разряда может выполняться через пересылку данных в один из РОН:
Code

in R16, PINC

Либо через команды проверки пропуска:
Code

sbic PINC,0 ; пропуск следующей команды если бит сброшен, т.е. равен 0
sbis PINC,0 ; пропуск следующей команды если бит установлен, т.е. равен 1
Пн, 02.04.2012, 21:37 | Сообщение # 8        
SssaHeKkk
аватар
  Постов: 4131   Друзья 
можно вопрос не по теме? а ты кто по профессии?откуда такие знания программирования
Вт, 03.04.2012, 08:19 | Сообщение # 9        
skateman
аватар
  Постов: 4420   Друзья 
SssaHeKkk, это не знания, а желание себя чем-то занять. А по профессии я инженер, хотя инженерного образования не имею.
Вт, 03.04.2012, 09:44 | Сообщение # 10        
SssaHeKkk
аватар
  Постов: 4131   Друзья 
хм...сильно cool
Форум радиолюбителей » СХЕМЫ » МИКРОСХЕМЫ » AVR: порты ввода/вывода
  • Страница 1 из 27
  • 1
  • 2
  • 3
  • 26
  • 27
  • »
Поиск:

Форум только для чтения, обсуждение на Shemaforum.ru


Группа вконтакте Канал ютуб Группа в фэйсбук © 2010-2021 "Радиосхемы" Все права защищены Почта Моб.версия