|
Баги симуляторов ... |
|
|
|
 |
Ответов
|
Aug 24 2007, 15:45
|

Знающий
   
Группа: Свой
Сообщений: 521
Регистрация: 10-02-05
Пользователь №: 2 544

|
Цитата(Яrik @ Aug 24 2007, 18:06)  Придлагаю скидывать в данную ветку все встричающиеся баги программ симуляторов-эмуляторов (Proteus, Vmlab, AvrStudio).
Сам пока столкнулся только со следующим:
В Proteus 6.9.03 не работает прерывание от Input Capure (могу ошибаться, буду рад если меня исправят, но программа МК ATmega8 рабочая - проверено в Vmlab). А я предлагаю (модераторы, не рвите на части) вообще не пользоваться всякими там протеусами и вмлабами! Здесь сколько раз уже мелькали фразы типа - "В протеусе работает, а на "железе" нет. Поможите!". Да нах такой СИмулятор нужен, если он кроме вопросов ничего не вызывает! Моё мнение - любой проект нужно отлаживать ТОЛЬКО В "ЖЕЛЕЗЕ"! Есть прекрасный инструмент - JTAGICE (Zltigo сейчас взбеленится), с помощью которого можно увидеть, что творится с программой и "железом" реально в данный момент времерни. А фраза "МК ATmega8 рабочая - проверено в Vmlab" меня привела в полный восторг! Нельзя научиться ездить на велосипеде, не имея велосипеда.
|
|
|
|
|
Aug 24 2007, 16:15
|

Гуру
     
Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244

|
Цитата(Igor26 @ Aug 24 2007, 18:45)  Моё мнение - любой проект нужно отлаживать ТОЛЬКО В "ЖЕЛЕЗЕ"! Отчего-же? Большая часть вообще должна писаться и отлаживаться на инструментальной машине и только потом уже в дышащем виде переноситься на целевой контроллер. Про "отладку" простейшего периферийного железа контроллеров общего назначения хоть в симуляторах, хоть нет я просто помолчу, ибо вообще не понимаю, чего там "отлаживать". Цитата Есть прекрасный инструмент - JTAGICE (Zltigo сейчас взбеленится), с помощью которого можно увидеть, что творится с программой и "железом" реально в данный момент времерни. А чего это мне "белениться"  - каждый сам себе Буратино. В конце концов и если кто-то не может прочитать пару сот строк документации, обдумать и после этого написать пару десятков строк без ошибок и при этом принципиально пишет на ASM (которым на самом деле не владеет) то мне до этого просто нет дела. Пусть методом тыка тыкается хоть симуляторах, хоть в эмуляторах, хоть в железе попутно набираясь "уверенности", что все железо, отладчики, эмуляторы, компиляторы и Windows иже с ними крупно покрыты "багами"  . Цитата А фраза "МК ATmega8 рабочая - проверено в Vmlab" меня привела в полный восторг! Это да!
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
Aug 25 2007, 21:27
|
дятел
    
Группа: Свой
Сообщений: 1 681
Регистрация: 13-05-06
Из: Питер
Пользователь №: 17 065

|
Цитата(zltigo @ Aug 24 2007, 20:15)  Отчего-же? Большая часть вообще должна писаться и отлаживаться на инструментальной машине и только потом уже в дышащем виде переноситься на целевой контроллер. Про "отладку" простейшего периферийного железа контроллеров общего назначения хоть в симуляторах, хоть нет я просто помолчу, ибо вообще не понимаю, чего там "отлаживать". В конце концов и если кто-то не может прочитать пару сот строк документации, обдумать и после этого написать пару десятков строк без ошибок и при этом принципиально пишет на ASM (которым на самом деле не владеет) то мне до этого просто нет дела zltigo я Вам задам один простой вопрос, приходилось ли Вам отлаживать работу i2c на чипах AT91SAM7 ? Если не приходилось, то наверное мы друг друга не поймем  А если приходилось, и Вам удалось это сделать(написать пару десятков строк основываясь только на даташите), то извините, я Вам просто не поверю, хотя бы на том основании что IAR, из-за глючности/плохой/ошибочной документации на эти чипы, просто сделала доступ в своих исходниках по i2c, побайтовым! Вопрос, сможете ли Вы, без отладчика, написать пару десятков строк для обслуживания i2c на SAM7 пользуясь только даташитом ?
|
|
|
|
|
Aug 25 2007, 22:40
|

Гуру
     
Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244

|
Цитата(singlskv @ Aug 26 2007, 00:27)  zltigo я Вам задам один простой вопрос, приходилось ли Вам отлаживать работу i2c на чипах AT91SAM7 ? Нет, но приходилось многое, что другое. Цитата Если не приходилось, то наверное мы друг друга не поймем  Зато для меня обыденное дело иметь дело с периферийными чипами для которых документация измеряется многими сотнями-тысячей листов. Причем эта документация скудная  и ввиду много меньшего круга пользователей такими чипами мнооооого худшего качества. Я пока жив. Разбоки и лабораторные работы трудоемки, обращения support неизбежны, но до сих пор все получалось. Кроме того у меня есть приобретенне за многие годы "чувство железа", а оно только путем логических размышлений достигается а не изучения эмуляторов. Цитата Вам просто не поверю, хотя бы на том основании что IAR, из-за глючности/плохой/ошибочной документации на эти чипы, просто сделала доступ в своих исходниках по i2c, побайтовым! А если я скажу, что никогда не пользуюсь халявными хидерами от производителей компиляторов, мои шансы на успех в Ваших глазах возрастут  ? Цитата(rezident @ Aug 25 2007, 22:11)  IAR EW430 4.32A. Полагаю 3.42  Берем вышеозначенный компилятор. Без всякого заумства в виде добвавления каких-либо ключей, хотя я обычно сразу добавляю --warnings_affect_exit_code --warnings_are_errors --remarks компилим: Код if( count = 3 ) { do_dummy(); } count == 7; Получаем: Цитата IAR MSP430 C/C++ Compiler V3.42A/W32 [Evaluation] Copyright 1996-2006 IAR Systems. All rights reserved. Warning[Pe187]: use of "=" where "==" may have been intended .... Warning[Pe174]: expression has no effect .... Вот такой эксперимент. Вопрос зачем было supress на warning ставить можете задать себе. Цитата что-то там не в порядке в этой версии. Иногда возникают ошибки в том месте, где их до этого не было и где я ничего не менял. Вроде помогает Rebuild All или выгрузка/загрузка среды снова. IDE не пользую, точнее пользую, но не чаще, чем отладчик  Цитата есть сообщение о версии 3.42E, которая видимо только в full-версии имеется. Версия Evaluation по-прежнему только 3.42A доступна. Если patch успели скачать до изменения IAR-ом upgrade политики, то прикрутим его и к Evalution..
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
Aug 25 2007, 23:43
|
Гуру
     
Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882

|
Цитата(zltigo @ Aug 26 2007, 04:40)  Полагаю 3.42  Да, описка вышла. 3.42A. Цитата(zltigo @ Aug 26 2007, 04:40)  Берем вышеозначенный компилятор. Без всякого заумства в виде добвавления каких-либо ключей, хотя я обычно сразу добавляю --warnings_affect_exit_code --warnings_are_errors --remarks компилим: Код if( count = 3 ) { do_dummy(); } count == 7; Получаем: Вот такой эксперимент. Вопрос зачем было supress на warning ставить можете задать себе. Ну вот. Опять из вас поперло ЭТО  Ну почему я должен выглядеть глупее вас, только потому что вам так хочется кажется? Да не выключены у меня эти долбанные варнинги! Не имею привычки их выключать. Вам весь проект прислать или скриншотов достаточно? На первом скриншоте результат компиляции всего проекта. Как видите там два варнинга. На втором скриншоте протокол компиляции именно того модуля для которого выданы эти предупреждения. На операцию с переменными volatile ругнулся, а описанную мной ошибку (на третьем скриншоте выделено) в том же модуле спокойно пропустил. Цитата(zltigo @ Aug 26 2007, 04:40)  IDE не пользую, точнее пользую, но не чаще, чем отладчик  Ну это ваши религиозные предрассудки, с которыми вам и жить. А на религиозные темы спорить ИМХО бесполезно. Цитата(zltigo @ Aug 26 2007, 04:40)  Если patch успели скачать до изменения IAR-ом upgrade политики, то прикрутим его и к Evalution.. К сожалению не успел  Для скачивания апдейта просит указать номер валидной лицензии для полнофункциональной версии. Лицензию сгенерированную кейгеном почему-то не берет  P.S. Ну включил еще дополнительно ремарки. Нашел лишнюю запятую в enum-е в одном из хидеров. Других отличий от уже описанного протокола компиляции нет. Ну не обнаруживает в этом конкретном месте компилятор никаких ошибок или недоразумений. А программа-то глючит безбожно  P.P.S. А вот как эта строка компилируется. С ошибкой Код // 100 { GD.cap.flag==CAP_FLAG_NEWSMPL; CMP.B #0x1, &GD + 82 JNE ??fStartTimerCap_1 MOV.B #0x1, R14 JMP ??fStartTimerCap_2 ??fStartTimerCap_1: MOV.B #0x0, R14 ??fStartTimerCap_2: BIT.B #0x1, R14 R14 в данной функции нигде не используется. А вот без ошибки Код // 100 { GD.cap.flag=CAP_FLAG_NEWSMPL; MOV.B #0x1, &GD + 82 что собственно и хотелось в этой операции.
|
|
|
|
|
Aug 26 2007, 07:16
|

Гуру
     
Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244

|
Цитата(rezident @ Aug 26 2007, 02:43)  Ну вот. Опять из вас поперло ЭТО  "ЭТО", это что? Уверенность, что разработчики компиляторов умнее меня и компилятор ошибается много реже, чем я? Да, дело имено так и обстоит. Цитата Вам весь проект прислать или скриншотов достаточно? Проекта не надо, а вот конкретный компилируемый файл и хидеры к нему посмотреть не отказался бы. Цитата Ну это ваши религиозные предрассудки, с которыми вам и жить. А на религиозные темы спорить ИМХО бесполезно. Забавно  Прямо в этой ветке Вы пинали IAR IDE и сетовали на ее глюки, после чего меня, который ее НЕ использует (в том числе и по причине глюков) обвиняете в "предрассудках". Зачем, черт побери, пользоваться явно прохими продуктами, если есть продукты, которые выпускаются производителями для которых это основной кусок хлеба, а не попытка сделать 'как у всех' натягивая дежурную маску дружелюбности? Цитата А программа-то глючит безбожно  Комментировать не буду, ибо имею свое мнение о основных причинах глюков, которое опять несколько не совпадает с доминирующем на форуме  . Цитата(defunct @ Aug 26 2007, 02:04)  Можно и с помощью одного светодиода все отладить, но ведь дольше ж будет. А время, как известно, - деньги. Я просто пытаюсь 'намекнуть', что после маленьких проектов (что абсолютно естественно), у которых буквально все на виду и достаточно просто взглянуть на окно отладчика сразу становится все ясным и понятным. Для которых отладчик реально демонстрирует просто потрясающую (особенно для ассемблерных) воображене эффективность, обычно приходит время проектов посложнее. В них эфективность применения отладчика резко падает. На первое место выходит проблема "кто шил костюм" а отладчик прекрасно помогает только с разборками с "пуговицами", к которым, как известно, "притензий нет". Зато отсутствие навыков (в том числе и провоцируемых отладчиком!) вдумчиво писать и уменя читать (в том числе и чужие исходники, ибо куда без них в больших проектах) начинает со страшной силой пожирать и время, и деньги, и нервы. Подходишь к такому человеку, а он "висит" в отладчике днями, месяцами, неделями. Что-то замучал и произошло самое сташное - отпралено на обьект. Глючит. Любимейшая фраза в таком случае - а у "меня все работает", "как мне это здесь повторить"(дабы припасть к окну отладчика). Все, труба дело  навыки анализа "глюков", вычитывания тектстов, раздумия над алгоритмами минимальны. Уверености в написанном нет. Начинается слепое латание и замена одних проблем на другие. Все это я наблюдал и наблюдаю, удручающе часто  . Повтояюсь - отладчик, как и любой инстумент, полезен, но для определенных условий и ситуаций. В противном случае он похож на детскую соску, которую пихают когда и куда не поподя, добиваясь что-бы дите не плакало, но отнюдь не того, что бы оно было здорово.
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
Сообщений в этой теме
Яrik Баги симуляторов ... Aug 24 2007, 14:06    defunct Цитата(zltigo @ Aug 26 2007, 01:40) компи... Aug 25 2007, 23:04      rezident Цитата(zltigo @ Aug 26 2007, 13:16) ... Aug 26 2007, 10:15       zltigo Цитата(rezident @ Aug 26 2007, 13:15) Я в... Aug 26 2007, 11:09      SasaVitebsk Цитата(zltigo @ Aug 26 2007, 11:16) Я про... Nov 13 2007, 19:25   Т.Достоевский Цитата(singlskv @ Aug 26 2007, 01:27) Воп... Aug 25 2007, 23:03 Яrik ЦитатаА фраза "МК ATmega8 рабочая - проверено... Aug 24 2007, 15:54 =AVR= Лучше сказать более обтекаемо - симуляторами можно... Aug 24 2007, 15:57 vesago Цитата(=AVR= @ Aug 24 2007, 18:57) Лучше ... Aug 25 2007, 08:40 Яrik ЦитатаА фраза "МК ATmega8 рабочая - проверено... Aug 24 2007, 16:43 haker_fox Цитата(Яrik @ Aug 25 2007, 01:43) Сметься... Aug 25 2007, 00:04 defunct Цитата(Яrik @ Aug 24 2007, 19:43) Сметься... Aug 25 2007, 01:31  haker_fox Цитата(defunct @ Aug 25 2007, 10:31) свят... Aug 25 2007, 03:44  zltigo Цитата(defunct @ Aug 25 2007, 04:31) Ибо ... Aug 25 2007, 14:04   vesago Цитата(zltigo @ Aug 25 2007, 17:04) Пробл... Aug 25 2007, 14:44   defunct Цитата(zltigo @ Aug 25 2007, 17:04) Как В... Aug 25 2007, 16:46    zltigo Цитата(defunct @ Aug 25 2007, 19:46) Таки... Aug 25 2007, 17:11     defunct Цитата(zltigo @ Aug 25 2007, 20:11) Такие... Aug 25 2007, 17:27      zltigo Цитата(defunct @ Aug 25 2007, 20:27) Ну з... Aug 25 2007, 18:16 Kirill Trusov камень в огород симуляторов, посморите мою ветку
а... Aug 24 2007, 20:44 rezident Вроде все уже сказали правильно. В симуляторе отла... Aug 25 2007, 13:23 vesago Да, жостка. Я тоже страдаю такого рода описками. П... Aug 25 2007, 13:35 rezident Заметил я, что любите вы, zltigo, банальности изре... Aug 25 2007, 15:59 zltigo Цитата(rezident @ Aug 25 2007, 18:59) Зам... Aug 25 2007, 16:57  defunct Цитата(zltigo @ Aug 25 2007, 19:57) Многи... Aug 25 2007, 17:04   zltigo Цитата(defunct @ Aug 25 2007, 20:04) как ... Aug 25 2007, 17:51   rezident Цитата(defunct @ Aug 25 2007, 23:04) как ... Aug 25 2007, 18:22  rezident Цитата(zltigo @ Aug 25 2007, 22:57) Многи... Aug 25 2007, 17:57   zltigo Цитата(rezident @ Aug 25 2007, 20:57) Дык... Aug 25 2007, 18:31    rezident Цитата(zltigo @ Aug 26 2007, 00:31) Какой... Aug 25 2007, 19:11 rezident Все понятно стало. Под "продуктом IAR" в... Aug 26 2007, 12:02 zltigo Цитата(rezident @ Aug 26 2007, 15:02) Все... Aug 26 2007, 12:06 ReAl Цитата(defunct @ Aug 25 2007, 19:04) как ... Aug 26 2007, 17:45 defunct Цитата(ReAl @ Aug 26 2007, 20:45) С друго... Aug 26 2007, 23:38 Snaky Цитата(defunct @ Aug 25 2007, 23:04) как ... Aug 27 2007, 03:02 _Pasha Avr Studio 4.13 build 528
При работе с UART в меге... Nov 13 2007, 10:41 Igor26 2Zltigo. А теперь представьте такую ситуацию. Прин... Nov 14 2007, 11:12 taranoid В даташите на мегу48 меня сразили на повал примеры... Nov 15 2007, 16:53 _Pasha Цитата(taranoid @ Nov 15 2007, 20:53) В д... Nov 15 2007, 18:27 taranoid Мне по спешке было проще заменить мегу48 на мегу 8... Nov 20 2007, 15:27 Maik-vs AVR Studio 4.13.555
Обычно вечером пишу в програм... Nov 19 2007, 07:41 ae_ Цитата(Maik-vs @ Nov 19 2007, 16:41)... Nov 20 2007, 03:10  Maik-vs Цитата(ae_ @ Nov 20 2007, 07:10) Не вижу ... Nov 20 2007, 10:26 _Pasha Цитата(Maik-vs @ Nov 20 2007, 13:26)... Nov 20 2007, 12:20 Maik-vs Цитата(_Pasha @ Nov 20 2007, 16:20) Небос... Nov 22 2007, 10:47 011119xx в vmlab при просмотре окна периферии для АЦП ATmeg... Dec 4 2007, 04:51 SasaVitebsk вроде работает Sep 24 2008, 11:32 okela В АВРСтудии 4.12сп4 была замечена следующая бага (... Feb 20 2009, 12:52
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|