| Автор | Сообщение |
SEREGA82 Новичок Сообщения: 19
|
Доброго времени суток! Помогите, пожалуйста, разобраться начинающему со сторожевым таймером в Atmega16. Написал программу на Си в CVAVR. Симулировал в VMLAB. Симулятор постоянно ругается на сторожевой таймер. Пробовал отключать его, как в Даташите, Результат тот же. Если не учитывать WDT, программа работает как надо. Но терзают сомнения: когда я зашью программу в контроллер, будет ли она работать? Как в реальности решают этот вопрос? Заранее спасибо! |
|
pavel-pervomaysk Your editor Сообщения: 8052
|
Нормальные люди тестируют на железе с логичемкис анализатором, извращенцы на всяких симуляторах. |
|
GarikBaza Новичок Сообщения: 664
|
SEREGA82, Выкинь VMLAB, купи мегу16, поставь на макетку, и симулируй хоть до всира..... |
|
SEREGA82 Новичок Сообщения: 19
|
Спасибо за совет! Дабы не стать извращенцем, сделаю как вы сказали.  |
|
Murka Профессор Сообщения: 2382
|
GarikBaza, VMLAB прав!!!! а вот CVAVR следует выкинуть, ну или как я делаю hex редактором подправляю exe_шник, устраняя инициализацию "собаки".
Однако это надоело и я перешел на IAR. |
|
pavel-pervomaysk Your editor Сообщения: 8052
|
Murka, эмулятор - отстой. И хоть до усира доказывай обротное. |
|
Murka Профессор Сообщения: 2382
|
pavel-pervomaysk, А я и не хвалил его, я сказал что компилятор выполняет инициализацию "собаки" без ведома юзера, а эмулятор, об этом сообщает и в этом он прав. |
|
GarikBaza Новичок Сообщения: 664
|
Murka, CVAVR с натяжкой можно назвать компилятором. В частности его визард. Его можно использовать когда надо срочно глянуть, как надо настроить ту или иную периферию, когда лень даташит открывать.
По IAR могу сказать одно: "Лучше день потерять, чем потом за 5 мин долететь"(c). Это очень сильный инструмент, и я его использую под разные платформы. Что в нем нравится - все в твоих руках.
По симуляторам. "Не верю!" Какой бы небыл хороший симулятор, он не учитывает мелких деталей. Например разводки. Я ВСЕГДА делаю макетки, и на них проверяю. А потом можно и в серию. А с симулятора в серию я б не рискнул. |
|
Murka Профессор Сообщения: 2382
|
| GarikBaza писал: | | Какой бы небыл хороший симулятор, он не учитывает мелких деталей. Например разводки. | Это когда со строба прерывания лезут? Разработчику в глаз!, а ваще эмулятор эмулирует работу ПО, а не трассировки. |
|
GarikBaza Новичок Сообщения: 664
|
Murka, А ПО напрямую зависит от разводки. В эмуляторе работает, а в железе неработает, и трахаешься...
Лучше раз в железе сделать. А ПО я могу и в VS2008 проверить. |
|
Murka Профессор Сообщения: 2382
|
GarikBaza, ПО от разводки не зависит или нужно сменить программиста, чесслово такую фигню пишеш, приведи пример! |
|
GarikBaza Новичок Сообщения: 664
|
А за ПО я ни слова не сказал. Я говорил за факторы, которые не зависят от ПО |
|
Murka Профессор Сообщения: 2382
|
Факторы не зависящие от ПО Vmlab не показывает. |
|
eufs Участник Сообщения: 170
|
Я уже приводил пример. Мега 8 (или тини 26 не помню) и индикатор wh0802 соединен по 4х битной шине. При просадке питания срабатывает супервизор в контроллере(АВР), а в дисплее не срабатывет. И, если контроллер не завершил трансяцию очередного байта (то есть передал только половину и сбросился от супрвизора), то стандартными процедурами инициализации дисплей вгоняется в ступор. Я решил проблему, когда в инициализации начал мерять время обработки посылаемых команд дисплеем, и по этим измерениям определил, надо ли лишнюю половинку байта передавать или нет.
Я очень сомневаюсь что какой либо симулятор вообще мог эту ситуацию предугадать. |
|
Murka Профессор Сообщения: 2382
|
| eufs писал: | | И, если контроллер не завершил трансяцию очередного байта | О как! Примерно тем же самым я и занимаюсь прямо сейчас! только вот
| eufs писал: | | Я очень сомневаюсь что какой либо симулятор вообще мог эту ситуацию предугадать. | симулятор угадывает
busyLCD.PNG 11,3 КБ Скачано: 341 раз(а)
|
|
pavel-pervomaysk Your editor Сообщения: 8052
|
Murka, да на здоровье. Я умею паять и не ленюсь. Помнится как мой проэкт тут обсирали что он не работает на симуляторе, я спросил : А собирали ? Нет ! А вони было . Просто в симуляторе никто не смог додуматься что я на тини13 напишу такой чепухи . А то что с далласами симулятор не работает это факт. Еще примеры нужны ? |
|
eufs Участник Сообщения: 170
|
| Murka писал: | | eufs писал: | | И, если контроллер не завершил трансяцию очередного байта | О как! Примерно тем же самым я и занимаюсь прямо сейчас! только вот
| eufs писал: | | Я очень сомневаюсь что какой либо симулятор вообще мог эту ситуацию предугадать. | симулятор угадывает |
То что симулятор симулирует время обработки команд дисплеем - это понятно. А симулятор засимулирует помеху или просадку по цепям питания, которая сбросит контроллер и не сбросит дисплей?
IMHO, проблемы, лежащие либо в чисто аппаратной части либо на стыке програмной и аппаратной просимулировать достаточно тяжело, а отсюда толк от симуляции резко падает, так как устройство не состоит из одной программы. Невозможно просимулировать реальные условия.
Могу выложить процедуру инициализации, которая определяет хавает дисплей команды или нет и делает так, чтоб хавал. |
|
Murka Профессор Сообщения: 2382
|
pavel-pervomaysk, А схема то, не правильная!!!! Посмотри исходник! Внимательно!| eufs писал: | | помеху или просадку по цепям питания, которая сбросит контроллер и не сбросит дисплей? | Для этого есть в симуляторе кнопочки.| eufs писал: | | Невозможно просимулировать реальные условия. | А реальные условия никто и не симулирует, проверяется работоспособность или выявляются ошибки! Гадать то сложнее.| eufs писал: | | Могу выложить процедуру инициализации, которая определяет хавает дисплей команды или нет и делает так, чтоб хавал. | Вот тута описание в pdf, а в тхт реально работающий кусок кода, правда на ужасном Renesas асме, но читаемый. eufs тут именно то о чём ты говориш, но только без функции определения чего он хочет просто тупая переинициализация. |
|
eufs Участник Сообщения: 170
|
А почему не выявлять ошибки и проверять работоспособность на реальном устройстве? Его ведь все равно делать. И гадать нечего - спаял и вперед.
Я никак не пойму преимуществ симуляции. Что она конкретно дает разработчику? Чето мне не верится, что после отладки на симуляторе в собранном устройстве в железе ничего не приходиться дорабатывать. Косяки в схемотехнике или конструкции которые часто бывают, в симуляторе все равно вряд-ли видны. Я соглашусь, кое-что можно и в симуляторе повыловить. Но не всё. А раз не всё, то накой хрен он нужен. |
|
Murka Профессор Сообщения: 2382
|
eufs, Вышеупомянутый Renesas стоит "миллион денег" и допускает (производитель гарантирует) всего лиш 100 прошивок, ну и скажем стоит задача написать реалтайм СУТП ~1 мсек. Шо будем делать? |
|
eufs Участник Сообщения: 170
|
А ренесас разве не допускает отладку в ОЗУ? Помодульно можно отладить, а для сборки 100 раз наверняка должно хватить. Но соглашусь, в таких случаях симулятор, пожалуй, нужен. |
|