_Pasha 0 13 марта, 2009 Опубликовано 13 марта, 2009 · Жалоба Вызываю функцию в обработчике прерывания Вы скорее всего нарушаете эту аксиому. Есть исключение - жесткая синхронизация процесса, когда общение с периферией через циклический буфер невозможно из-за привязки к реалтайму. Даже пример приведу. Допустим, нам надо обновить регистры OCRxxx для выдачи ШИМа. Но значения, которые нужны, зависят от самого последнего отсчета АЦП. И тогда ISR_NOBLOCK и удачи в плане чтоб стека хватило :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
injen-d 0 13 марта, 2009 Опубликовано 13 марта, 2009 · Жалоба может обновить CDT? Index->rebuild пробовали? конечно пробовал - не помогает. К тому же, индексирование работает только в исходниках: *.c, *.cpp попробуйте в исходнике выделить переменную, объявленную в мейк-файле. Эклипса скажет, что не знает где объявлена эта переменная (красным цветом внизу, слева), хотя при компиляции все ОК. Я думаю, она помнит значение с последней компиляции А вот зачем постоянно менять F_CPU я, чесгря, не понимаю :cranky: не с последней компиляции, а с какой угодно! В эклипсе, отображаемое значение этой переменной может совпасть с реальным (которое в мейк-файле) только после изменения реального значения в мейк-файле, а может и остаться предидущим! И хоть ты тресни: перекомпилируй, Index->rebuild, меняй реальное значение на другие величины или пляши вокруг компа с бубном - отображаемое в эклипсе значение может так и не измениться! А может поменяться с первого раза на правильное. :bb-offtopic: Мне не нужно каждый раз менять значение F_CPU, но эта переменная используется у меня для вычисления задержек, и если я захочу использовать этот код в другом проэкте с другй рабочей частотой контроллера, а у меня эклипса не хочет менять когда-то непонятно куда запомненное отображаемое значение этой переменной, это нормально? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
haker_fox 61 13 марта, 2009 Опубликовано 13 марта, 2009 · Жалоба Есть исключение - жесткая синхронизация процесса, когда общение с периферией через циклический буфер невозможно из-за привязки к реалтайму. Даже пример приведу +1 Да и вообще, если удобнее что-то считать в обработчике прерывания, и это не занимает много времени, то почему бы и не считать? Например, при управлении двигателем, варьировать ШИМ можно только по окончанию периода. Так тут как раз удобнее в таймерном прерывании производить эти модификации и даже посчитать ПИДом текущее значение OCRx. :bb-offtopic: _Pasha, похоже Ваш пример тоже от двигателя... или от еще какой силовухи) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_Pasha 0 13 марта, 2009 Опубликовано 13 марта, 2009 · Жалоба _Pasha, похоже Ваш пример тоже от двигателя... или от еще какой силовухи) Да. Трехфазник. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aesok 0 13 марта, 2009 Опубликовано 13 марта, 2009 (изменено) · Жалоба И тогда ISR_NOBLOCK и *удачи* в плане чтоб стека хватило :) Я именно про это. Анатолий. Изменено 13 марта, 2009 пользователем aesok Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
klen 1 15 марта, 2009 Опубликовано 15 марта, 2009 · Жалоба здравствуйте маленькое замечане. раньше когда работал на Европе, использовал CDT плагин Zylin так как еклипс использую для разработок и под армы идля линуха и для винды то имел отдельные эклипсы с соответствующими плагинами. естественно особености возникали только при отладке. пожже, после перехода на ганимед обнаружил что для европы есть родной плагин для отладки через JTAG - поставил проверил - работает также как и Zylin'овский. Стало возможным одной еклипсой компилять и дебажить как проекты для винды так и для армов, был првдо косяг - под ганимед плагин для европы ставится и работает, но роабоет криво в плане что глючит парсинг ошибок. это напрягало. я присал про этот трабл в эту ветку, но тогда устранить ксяг у меня не получилось. вчера обнаружил что для ганимеда появился этот плагин. поставил - парсинг сообщений тулчейна наладился. пазитиф. мож кто тоже такой сосяг словил. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
alx2 0 15 марта, 2009 Опубликовано 15 марта, 2009 · Жалоба Помните пока работает обработчик прерывания, все другие запросы прерываний обрабатываться не могут,Я тоже выскажу свой протест. Не надо таких заявлений. Какой-нибудь начинающий программист может подумать, что это и вправду так. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aesok 0 15 марта, 2009 Опубликовано 15 марта, 2009 · Жалоба Я тоже выскажу свой протест. Не надо таких заявлений. Какой-нибудь начинающий программист может подумать, что это и вправду так. Да, я погорячился и выводы из правила были сделаны очень жесткими. > Никакой обработки данных в прерывании!! Кончо-же если обработать данные соизмеримо по времени, с сохранением их в буфере, их выгоднее обрабатывать в прерывании. (Соизмеримо для меня это быстрее или в несколько раз 2..5..10 дольше). > Помните пока работает обработчик прерывания, все другие запросы прерываний обрабатываться не могут Да, эта фраза относиться только к контроллерам с одноуровневой системой прерываний, В общем случае она должна быть уточнена словами про приоритеты прерываний, и про вложенные прерывания. Я писал ее в контексте контролеров AVR. Что касаеться вложенных прерываний то уже про это писали: "...и удачи в плане чтоб стека хватило", тоесть это только для приложений от которых требуется чтобы они иногда работали ...ну или почти всегда. Да, из любого правила можно найти исключения: В моем приложении только одно прерывание....; Я посчитал время выполнения по тактам и уверен что могу считать синус в моем обработчике прерывания... Но как только количество обработчиков в Вашем приложении приблизиться к десятку, Вы вольно или не вольно будете делать их быстрыми, для того чтобы они друг другу не мешали. Анатолий. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_Pasha 0 15 марта, 2009 Опубликовано 15 марта, 2009 · Жалоба Какой-нибудь начинающий программист может подумать... Нормальный человек воспримет это как вектор, в котором надо располагать свои мысли. Политика, то бишь. А исключения из правил - они, в принципе, видны невооруженным глазом. Кстати, есть еще - прерывания, связанные с обработкой I2C, и хитрожопрукое мультиплексирование по каналам АЦП. Опять же, в контексте AVR. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
forever failure 0 16 марта, 2009 Опубликовано 16 марта, 2009 · Жалоба Ув. гуру, поскажите плиз, если кто видал такое - при попытке просмотра содержимого регистров во время пошаговой отладки в эклипсе - выскакивает сообщение - "Error Label Job" с исключением "java.lang.FormatNumberException". В чём может быть причина и как её победить ? ОС - линух федора 7, эклипса - версии 3.3.2 (Europa). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
xelax 0 17 марта, 2009 Опубликовано 17 марта, 2009 · Жалоба вчера обнаружил что для ганимеда появился этот плагин. поставил - парсинг сообщений тулчейна наладился. пазитиф. мож кто тоже такой сосяг словил. Угумс. Такой же трабл получил. Где плагин обнаружился то? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
klen 1 17 марта, 2009 Опубликовано 17 марта, 2009 · Жалоба Угумс. Такой же трабл получил. Где плагин обнаружился то? http://download.eclipse.org/tools/cdt/releases/ganymede CDT Optional Features Eclipse C/C++ GCD Hardware Debugging ставим этот плагин и наслаждаемся я например в одной эклипсе пишу прошивку для АРМ девайса и хост QT-гуЁвый терминал, отлаживаю в одном флаконе! Красота. На винде и линухе, Ляпота! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mdmitry 0 18 марта, 2009 Опубликовано 18 марта, 2009 · Жалоба Вчера вышел обновленный eclipse-cpp-ganymede-SR2. Список обновлений: org.eclipse.cdt 5.0.2.200902130801 org.eclipse.cdt.mylyn 5.0.2.200902130801 org.eclipse.cdt.platform 5.0.2.200902130801 org.eclipse.cvs 1.1.2.R342_v20090122-7C79E9x9sLM1t6M9YD7_A7 org.eclipse.epp.usagedata.feature 1.0.1.R200809220400 org.eclipse.mylyn.bugzilla_feature 3.0.5.v20090218-1800-e3x org.eclipse.mylyn.context_feature 3.0.5.v20090218-1800-e3x org.eclipse.mylyn.ide_feature 3.0.5.v20090218-1800-e3x org.eclipse.mylyn.team_feature 3.0.5.v20090218-1800-e3x org.eclipse.mylyn_feature 3.0.5.v20090218-1800-e3x org.eclipse.platform 3.4.2.r34x_v20081010-9I96EiLElhh3qWoXHb-Nz-c-45TPOR8EvkPkYu Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
SKarpenko 0 24 апреля, 2009 Опубликовано 24 апреля, 2009 · Жалоба Добрый день, собираюсь отлаживать ПО под LPC2294, настрайваю среду разработки (Linux, OpenSuse 11.1) Помогите, пожалуйста, найти самый свежий (4.2.1 ?) Zylin Embedded CDT, совместимый с Eclipse 3.4.2. Дело в том, что ссылка на офоициальном сайте Zylin на странице http://opensource.zylin.com/embeddedcdt.html недоступна. И поясните, пожалуйста, что еще нужно в довесок к Zylin CDT? Я читал о каком-то embedded CDT, но не понял, зачем он нужен. И еще, нужен все-таки Eclipse C/C++ CDT, или его нужно убивать, прежде чем ставить Zylin, как я прочел на каком-то форуме? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
v_shamaev 0 24 апреля, 2009 Опубликовано 24 апреля, 2009 · Жалоба Добрый день, собираюсь отлаживать ПО под LPC2294, настрайваю среду разработки (Linux, OpenSuse 11.1) Помогите, пожалуйста, найти самый свежий (4.2.1 ?) Zylin Embedded CDT, совместимый с Eclipse 3.4.2. Дело в том, что ссылка на офоициальном сайте Zylin на странице http://opensource.zylin.com/embeddedcdt.html недоступна. И поясните, пожалуйста, что еще нужно в довесок к Zylin CDT? Я читал о каком-то embedded CDT, но не понял, зачем он нужен. И еще, нужен все-таки Eclipse C/C++ CDT, или его нужно убивать, прежде чем ставить Zylin, как я прочел на каком-то форуме? Только что прошел по ссылке - доступна. Там написано - убивать не надо, это довесок (патч) официального CDT. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться