roboforum.ru

Технический форум по робототехнике.
Текущее время: 02 дек 2024, 18:10

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 5 ] 
Автор Сообщение
 Заголовок сообщения: ATmega 8 не читает порт B
СообщениеДобавлено: 14 окт 2009, 18:38 
Не в сети
Аватара пользователя

Зарегистрирован: 25 ноя 2008, 16:46
Сообщения: 33
Откуда: Томск
Написал небольшую прогу, в которой необходимо, чтобы контроллер выполнял определенные действия в зависимости от того, какой код присутствует на ножках PB0-PB3. Но почему-то контроллер на эти команды не реагирует. Не читает этот порт. Вот листинг частичный


.def temp=R16

ldi temp,$0
out DDRB,temp

T:
in Temp,PINB
cpi Temp,8
breq incremindexX

in Temp,PINB
cpi Temp,12
breq Peresilka
rjmp T


Но почему-то не по одной из этих меток он не убегает. Хотя нужный код (8 или 12 ) до ножек доходит. Может быть, этот порт имеет какие то дополнительные функции, которые мешают ему работать как простой порт I/O.

Добавлено спустя 3 минуты 44 секунды:
Забыл. В протеусе он эти выводы успешно читает и делает то что нужно. А вот в реальности нет :cry:


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ATmega 8 не читает порт B
СообщениеДобавлено: 14 окт 2009, 18:42 
Не в сети
Аватара пользователя

Зарегистрирован: 29 апр 2008, 21:15
Сообщения: 4130
Откуда: Хабаровск
прог. языки: C,C++,Assembler,PHP,Javascript,Ruby, SPIN,Java(?)
ФИО: Андрей Юрьевич
Нужно маскировать те биты, которые не интересуют. Вам нужно проверять всего 2 бита - а вы проверяете все 8. А откуда уверенность, что на неиспользуемых ногах лог. 0 ?

_________________
Проект [[Open Robotics]] - универсальные модули для построения роботов
Модули Open Robotics можно приобрести в магазине shop.roboforum.ru

Day OFF? You must be pulling my leg! Stop making humor before someone sees you, fool!



Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ATmega 8 не читает порт B
СообщениеДобавлено: 14 окт 2009, 18:49 
Не в сети
Аватара пользователя

Зарегистрирован: 25 ноя 2008, 16:46
Сообщения: 33
Откуда: Томск
Ой, кстати это еще вопрос. На остальныех ножках (кроме 4 первых ) я не проверял уровни логические.

Там ведь еще кварц подключен к PB6 и PB7.

То есть мне нужно лишь по этим двум битам (PB2 и PB3) проверять. В обчем ясно. Скажите а кроме кварца остальные альтернативные функции не могут влиять на этот порт?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ATmega 8 не читает порт B
СообщениеДобавлено: 15 окт 2009, 13:08 
Не в сети
Аватара пользователя

Зарегистрирован: 20 сен 2007, 11:44
Сообщения: 491
Откуда: Харьков
Skype: Victorovych_FF
прог. языки: ASM
ФИО: Иван ВикторОвич
А ты их включал?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: ATmega 8 не читает порт B
СообщениеДобавлено: 15 окт 2009, 13:36 
Не в сети
отсылающий читать курс
Аватара пользователя

Зарегистрирован: 06 ноя 2005, 04:18
Сообщения: 14195
Откуда: Москва
DK10000 писал(а):
Скажите а кроме кварца остальные альтернативные функции не могут влиять на этот порт?

Я вам советую неспеша и ВНИМАТЕЛЬНО прочитать Устройство микроконтроллера AVR на русском языке - http://avr123.nm.ru/02.htm - и многое станет понятным.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 5 ] 

Часовой пояс: UTC + 4 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 17


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
phpBB SEO