roboforum.ru

Технический форум по робототехнике.
Текущее время: 01 май 2025, 17:15

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




Начать новую тему Ответить на тему  [ Сообщений: 43 ]  На страницу Пред.  1, 2, 3
Автор Сообщение
 Заголовок сообщения: Re: Про меандр
СообщениеДобавлено: 14 май 2010, 11:55 
Не в сети
Аватара пользователя

Зарегистрирован: 03 авг 2007, 19:43
Сообщения: 1437
Откуда: Екатеринбург
прог. языки: Си, асм со словарем
чувствую себя инквизитором


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Про меандр
СообщениеДобавлено: 14 май 2010, 12:15 
Не в сети
Аватара пользователя

Зарегистрирован: 06 июл 2006, 20:42
Сообщения: 650
Откуда: Москва
прог. языки: C/C++, Python
В общем, видимо, протеус глючит, потому что сейчас запустил программу в отладчике AVR Studio и там всё работало как надо и через 0,5 сек прерывание обрабатывалось.
Спасибо всем за терпение. =)

_________________
[[Использование библиотеки OpenCV]]
Я в LiveJournal


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Про меандр
СообщениеДобавлено: 14 май 2010, 12:32 
Не в сети
Аватара пользователя

Зарегистрирован: 03 авг 2007, 19:43
Сообщения: 1437
Откуда: Екатеринбург
прог. языки: Си, асм со словарем
Ну а в железе?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Про меандр
СообщениеДобавлено: 14 май 2010, 13:25 
Не в сети
Аватара пользователя

Зарегистрирован: 06 июл 2006, 20:42
Сообщения: 650
Откуда: Москва
прог. языки: C/C++, Python
Сегодня вечером попробую и отпишусь, сейчас железо просто не с собой=)

_________________
[[Использование библиотеки OpenCV]]
Я в LiveJournal


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Про меандр
СообщениеДобавлено: 15 май 2010, 11:43 
Не в сети
Аватара пользователя

Зарегистрирован: 03 авг 2007, 19:43
Сообщения: 1437
Откуда: Екатеринбург
прог. языки: Си, асм со словарем
что там по железу, работает?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Про меандр
СообщениеДобавлено: 16 май 2010, 00:12 
Не в сети
Аватара пользователя

Зарегистрирован: 06 июл 2006, 20:42
Сообщения: 650
Откуда: Москва
прог. языки: C/C++, Python
Не заработало =(

Добавлено спустя 1 час 3 минуты 6 секунд:
Странно, но по всей видимости не работает конструкция if {}, потому что я пробовал в прерывании дёргать ногой МК и всё работало
Код:
#pragma vector = TIMER1_OVF_vect
__interrupt void flashing(void)
{
   PORTD ^= (1<<PD0);
}


Но вот если записать так:
Код:
#pragma vector = TIMER1_OVF_vect
__interrupt void flashing(void)
{
  if ((PINC & (1 << PC3)) == 1)
  {
    TCNT1H=0xF0;
    TCNT1L=0x6F;
    PORTD ^= (1<<PD0);
  }
}

То ничего не работает. DDRC настроен на вход.

_________________
[[Использование библиотеки OpenCV]]
Я в LiveJournal


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Про меандр
СообщениеДобавлено: 16 май 2010, 07:54 
Не в сети
Аватара пользователя

Зарегистрирован: 03 авг 2007, 19:43
Сообщения: 1437
Откуда: Екатеринбург
прог. языки: Си, асм со словарем
не в прерывании работает?
давай схему конструкции.

PD0,PC3 где инициализированы?
пробуй заменить на цыфры.

С ножками все впорядке? С первой страницы фигурируют нулевые ножки а тут уже третья вход и нулевая выход


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Про меандр
СообщениеДобавлено: 16 май 2010, 11:10 
Не в сети
Аватара пользователя

Зарегистрирован: 06 июл 2006, 20:42
Сообщения: 650
Откуда: Москва
прог. языки: C/C++, Python
Не в прерывании тоже не работает.

PC3, PD0 описаны в хедере iom8.h
С ножками всё в порядке, пробовал менять и на цифры, причём в кодвижн if работает.

Входные ноги PC3-PC5
Выходные PD0-PD2
Так что не играет роли с чего снимать и на что выводить =)

Добавлено спустя 38 минут 48 секунд:
Бред =)

Записал так:
Код:
{
  if ((PINC & (1 << PC3)) != 0)
  {
    TCNT1H=0xF0;
    TCNT1L=0x6F;
    PORTD = (1<<PD0);
  }

и всё заработало. =)

В общем если у кого-то будет похожая проблема, то в IAR нужно проверять не на равенство лог.1, а на НЕ РАВЕНСТВО лог.0

_________________
[[Использование библиотеки OpenCV]]
Я в LiveJournal


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Про меандр
СообщениеДобавлено: 16 май 2010, 13:46 
Не в сети
Аватара пользователя

Зарегистрирован: 15 сен 2007, 13:03
Сообщения: 6338
Откуда: Красноярск
прог. языки: ASM(МК), C(PC)
ФИО: Гагарский Андрей Александрович
а так
Код:
if (!(PINC & (1 << PC3)))
будет работать?

_________________
«Как сердцу выразить себя? … Мысль изреченная есть ложь!»
В этом мире меня подводит доброта и порядочность...
"двое смотрят в лужу, один видит лужу, другой отраженные в ней звезды"


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Про меандр
СообщениеДобавлено: 16 май 2010, 14:11 
Не в сети
Аватара пользователя

Зарегистрирован: 06 июл 2006, 20:42
Сообщения: 650
Откуда: Москва
прог. языки: C/C++, Python
Duhas писал(а):
а так
Код:
if (!(PINC & (1 << PC3)))
будет работать?

Нет, так работать не будет, потому что проверяется на НЕ РАВЕНСТВО лог.1, т.е. твоя строка эквивалентна этому:
Код:
if ((PINC & (1 << PC3)) != 1)

_________________
[[Использование библиотеки OpenCV]]
Я в LiveJournal


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Про меандр
СообщениеДобавлено: 16 май 2010, 14:15 
Не в сети
Аватара пользователя

Зарегистрирован: 15 сен 2007, 13:03
Сообщения: 6338
Откуда: Красноярск
прог. языки: ASM(МК), C(PC)
ФИО: Гагарский Андрей Александрович
тогда просто убрать воскл знак.. иф(выражение) а выражение у тебя без сравнен7ий и так должно давать 0 или 1 ... ух ето си.. его пользовать нада еще научиться...

_________________
«Как сердцу выразить себя? … Мысль изреченная есть ложь!»
В этом мире меня подводит доброта и порядочность...
"двое смотрят в лужу, один видит лужу, другой отраженные в ней звезды"


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Про меандр
СообщениеДобавлено: 16 май 2010, 14:50 
Не в сети
Аватара пользователя

Зарегистрирован: 06 июл 2006, 20:42
Сообщения: 650
Откуда: Москва
прог. языки: C/C++, Python
Duhas писал(а):
тогда просто убрать воскл знак.. иф(выражение) а выражение у тебя без сравнен7ий и так должно давать 0 или 1 ... ух ето си.. его пользовать нада еще научиться...

Ну можно и так =)

_________________
[[Использование библиотеки OpenCV]]
Я в LiveJournal


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Про меандр
СообщениеДобавлено: 17 май 2010, 11:04 
Не в сети
Аватара пользователя

Зарегистрирован: 03 авг 2007, 19:43
Сообщения: 1437
Откуда: Екатеринбург
прог. языки: Си, асм со словарем
если так записать
Код:
if ((PINC & (1 << PC3)) == (1 << PC3))


будет работать?

Добавлено спустя 1 минуту 9 секунд:
подидее должно, тыж работаешь с байтом а сравниваешь
Код:
if ((PINC & (1 << PC3)) != 0)
0b00000100 и !0b00000000


Добавлено спустя 1 минуту 59 секунд:
и такая конструкция тож должна работать
Код:
if (PINC.3  == 1)


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 43 ]  На страницу Пред.  1, 2, 3

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


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

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


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

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