roboforum.ru

Технический форум по робототехнике.

Мультифункциональный Частотомер

Наше хобби — конструировать и программировать.
Демонстрация готовых роботов и устройств построенных своими руками.

Мультифункциональный Частотомер

Сообщение nest » 06 апр 2005, 01:01

собственно сабж ...
критикуйте.

пока собран на макетке.

http://www.konfa.de/robots/F-Meter/index.html
Аватара пользователя
nest
 
Сообщения: 977
Зарегистрирован: 21 янв 2005, 12:16
Откуда: Germany
Предупреждения: -4
прог. языки: asm

Сообщение -= Александр =- » 05 май 2005, 22:15

У меня тут проблема возникла: подключаю акселерометр к контроллеру. На его выходе готовый ШИМ, но все бы хорошо, да этого ШИМа там 2 канала... Взял контроллер, программирую через прерывания, по фронтам. Так вот вопрос: если оба сигнала придут одновременно, будут ли они оба обработаны или одно прерывание будет проигнорировано?
В общем задача - измерить длительность импульсов, идущих вразнобой по двум каналам...
Аватара пользователя
-= Александр =-
Мастер Самоделкин
 
Сообщения: 3678
Зарегистрирован: 11 окт 2004, 19:20
Откуда: Россия, СПб
прог. языки: C/C++, Python, asm
ФИО: Курмис Александр Андреевич

Сообщение nest » 06 май 2005, 16:36

а хз... самому интересно, как будут два ОДНОВРЕМЕННЫх прерывания себя вести, но пока с такой задачей не сталкивался ...
надо спросить у гуру :)

я думаю оно просто по приоритету ... т.е. второе будет обслуженно после первого - т.е. будет ошибка ... имхо
Аватара пользователя
nest
 
Сообщения: 977
Зарегистрирован: 21 янв 2005, 12:16
Откуда: Germany
Предупреждения: -4
прог. языки: asm

Сообщение -= Александр =- » 06 май 2005, 23:53

Такая ошибка - не страшно (при миллионе измерений в секунду не так уж и часто они совпадают), а вот если проигнорируется - это уже плохо, алгоритм взглючит на целый период...
Аватара пользователя
-= Александр =-
Мастер Самоделкин
 
Сообщения: 3678
Зарегистрирован: 11 окт 2004, 19:20
Откуда: Россия, СПб
прог. языки: C/C++, Python, asm
ФИО: Курмис Александр Андреевич

Сообщение ASin » 07 май 2005, 01:11

А что, это загадка, что ли?

Даташит AT90S2313, страница 6.
Приоритет разных прерываний соответствует позиции их векторов прерываний. Чем меньше адрес вектора, тем больше приоритет.

страница 22
Если одно или более условий для прерывания произойдёт при очищенном бите Global Interrupt Enable (0), то соответствующие флаги прерываний будут установлены и запомнены до тех пор, пока бит Global Interrupt Enable не будет установлен (1), после чего они будут обработаны в порядке приоритета.

в даташите меги8 номера страниц немного другие :wink:
ASin
 
Сообщения: 155
Зарегистрирован: 18 дек 2004, 03:14
Откуда: Москва

Сообщение -= Александр =- » 07 май 2005, 03:11

Спасибо огромное! Теперь ясно что все круто!  :D
в следующий раз сначала в даташит полезу...  :oops:
Хотя лениво как-то там ковыряться...  :roll:
Аватара пользователя
-= Александр =-
Мастер Самоделкин
 
Сообщения: 3678
Зарегистрирован: 11 окт 2004, 19:20
Откуда: Россия, СПб
прог. языки: C/C++, Python, asm
ФИО: Курмис Александр Андреевич


Вернуться в Наши проекты

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

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