sifun писал(а):Моделирование вообще ненадёжное занятие. В случае с цифровыми устройствами я за полный отказ от моделирования и отладки с эмуляцией. Только логический анализатор, осциллограф и будущая плата. Также нужно сделать нормальный программатор, который будет прошивать не более секунды, чтобы отлаживать программу на ходу не останавливая работу.
Извините за наивность но логический анализатор это что?У меня единственное обеспечение логики это голова(тоже дело тёмное),а у вас?
Ещё раз прошу прощения,но я в самом деле очень сильно отстал от развития цифровой техники.
Голова и глаза. Глазами для электронщика являются приборы. Логический анализатор-прибор ведущий историю изменения цифровых сигналов на нескольких контактах.
Если его нет, то придётся сильнее нагружать голову и придумывать косвенные способы поиска ошибок.
Даташит на контроллер прочитали весь?
sifun писал(а):Голова и глаза. Глазами для электронщика являются приборы. Логический анализатор-прибор ведущий историю изменения цифровых сигналов на нескольких контактах.
Если его нет, то придётся сильнее нагружать голову и придумывать косвенные способы поиска ошибок.
Даташит на контроллер прочитали весь?
Для меня,пока,достаточно осцилографа чтобы понять-то что мной сотворено полная хрень.
Даташит прочитал весь,другое дело понял ли я его до конца...
Вопрос передо мной не в том чтобы зафиксировать ошибку,а проанализировать её.
sifun писал(а):В случае с цифровыми устройствами я за полный отказ от моделирования и отладки с эмуляцией. Только логический анализатор, осциллограф и будущая плата
Очень храброе заявление
Цифровые устройства разные бывают. Есть цифровые устройства, работающие на частотах, скажем в несколько сот мегагерц. Без моделрования никак не получается - пока еще не все гении и ошибки пролазят, будь они неладны!
С серьёзными-да, некуда дется. Но нас это обычно не касается.
А вот атмеги всякие-проще отлаживать на платах. Делаем макет, подключаем программатор-и сидим проверяем режим за режимом, попутно десятки раз перешивая контроллер. Если устройство одно нужно-макет потом тупо отправляется в корпус
Признак увлечённого настоящего электронщика-горы макетов вокруг рабочего места, валяющиеся кучами. В них измеряется духовный путь электронщика.
Кроме того, программирование это такая вещь, где общие подходы работают очень плохо. Пишем программу-создаём свою вселенную, пусть и простую. Что там, где-снаружи не разберёшь. Да и самому потом непросто разобратся. Проще всего писать программу за один подход в несколько часов, чтобы всё в памяти было. Нельзя ответить на ваш общий вопрос про протеус-ибо возможных несоответствий там может быть неогранично много, и не все можно предугадать. Чем больше программа по объёму-тем больше она вещь в себе.
Короче, внимательно читать даташит, понимать что там написано, читать описание к языку, на котором пишем, читать описание к компилятору. Если возникают странности-сформулировать конкретный вопрос и вбить в гугл. Обычно отыскивается. Хотя я наткнулся на невероятную особеность ацп в тини13, неочевидную, про которую нигде ничо не сказано, и не гуглится, а на работу схемы влияет фундаментально. Оказалось что при переключении входа ацп нужно ждать несколько микросекунд перед преобразованием, потому что перед ацп стоит сглаживающий фильтр. В течении этих микросекунд напряжение на самом ацп плавно переходит от напряжения старого входа к напряжению нового. Очевидно, что в этом случае протеус и иже с ним будут работать правильно-а устройство нет. И никто это заранее не предугадает. Вот и думайте какие можно давать советы.
[quote="sifun"]С серьёзными-да, некуда дется. Но нас это обычно не касается.
А вот атмеги всякие-проще отлаживать на платах. Делаем макет, подключаем программатор-и сидим проверяем режим за режимом, попутно десятки раз перешивая контроллер. Если устройство одно нужно-макет потом тупо отправляется в корпус
Признак увлечённого настоящего электронщика-горы макетов вокруг рабочего места, валяющиеся кучами. В них измеряется духовный путь электронщика.
=============
Спасибо,полезное наставление.Скорее основная моя ошибка-заставить сразу работать длинную программу(HEX около 2 кило).Вероятно так нельзя...надо шаг за шагом,разбив программу на кусочки.
А вот с даташитом в самом деле проблемы-мало того что на аглицком-так ещё и терпения не хватает.
Согласен с sifun : из постов с горестным воплем "В Протевусе работает, в жизни - никак" или наоборот - можно составить увесистый том. Тогда спрашивается : на френа такой Пр-ус, сказал бы я ? Но я так не скажу, чтоб не запинали Противу-маны ( -филы ) . Всю жизнь математику отлаживал в Студии, требующее времянок и периферии - на макете, и горя не знал.
То discript : Вы когда редактируете цитату , не удаляйте последний тег [/quote], тогда в ваших постах цитаты будут выглядеть красиво, как у всех. Вот так :
Мне кажется, что Протеус - неизбежный путь всех начинающих...микроконтроллерщиков (?). Если человек развивается, то из шпротеусины он вскоре вырастает. Я вот тоже (в общем-то, не причисляю себя к числу опытных, но тем не менее) вначале все написанное под "меги" прогонял в Протеусе - просто я тогда не понимал, что такое 10 000 циклов "запись-стирание" - это только гарантированные производителем, на деле же их может быть в полтора-два раза больше.
Сейчас могу какую-нибудь аналоговую фигнюшку проверить (да, Протеус у меня стоит - я в ARESe печтаные платы развожу). Но не более.
pavel_cydenov: Вобще я праAVRославный человек. Но и про ислARM слышал много хорошего ) MrYuran: Самые ортодоксальные — это PICудеи ) Katz: Не, 51-ники. )
То discript : Вы когда редактируете цитату , не удаляйте последний тег [/quote], тогда в ваших постах цитаты будут выглядеть красиво, как у всех. Вот так :
[quote]
Спасибо,тренируюсь.Наконец разговор приобрёл какой то смысл.
Тогда ещё один конкретный вопрос-существует ли инструментарий для пошагового анализа "железа"?Допустим,AVRстудии на это способны?
Согласен, не нужно быть столь категоричным. Исправлюсь: Не всех, но, пожалуй, большинства.
pavel_cydenov: Вобще я праAVRославный человек. Но и про ислARM слышал много хорошего ) MrYuran: Самые ортодоксальные — это PICудеи ) Katz: Не, 51-ники. )
Уважаемые,благодаря вашей помощи я нашёл ошибку.Её можно назвать если не грубейшей,то очень грубой.В ПРОГРАММЕ.Но Proteuse её проигнорировал.Поэтому делаю вывод-протеус хорошая программа...если просто рисуешь картинки.
Всем спасибо!
discript писал(а):... я нашёл ошибку.Её можно назвать если не грубейшей,то очень грубой.В ПРОГРАММЕ.Но Proteuse её проигнорировал....
Тут следовало бы привести эту самую ошибку.
Не верю я, что протеус настолько плох, иначе бы у него совсем не было продаж.
Либо срабатывает защита, либо сам смотри в зеркало.
Либо срабатывает защита, либо сам смотри в зеркало.[/quote]
Ошибка при работе(установке)портов.С самого начала я объяснил,не хочу что бы меня лечили-буду осваивать программирование самостоятельно.Единственный вопрос в какой степени можно доверять протеусу.Ответ сформировался-протеус это черновик который либо требует либо не требует корректировки.Всё зависит от опытности программиста.Например,те ошибки что допустил я,вам,полагаю в дурном сне не приснятся.Поэтому я и не показываю программу-знаю что такое взгляд специалиста-вы не одну а стоодну ошибку найдёте,это нормально но мне проку никакого-что же мне так и бегать-дяденька помогите?
И о какой защите может идти речь?На время отладки всю переферию перевёл в высокий импеданс.
discript писал(а):...И о какой защите может идти речь?...
Протеус - программа отнюдь не бесплатная, я бы даже сказал, ОЧЕНЬ платная. Соответственно, в ней предусмотрена защита от использования халявщиками.
Что там наверчено - знают только ее разработчики. От версии к версии защита меняется, и степень успешности ее отламывания тоже. Часто защита срабатывает на особо популярных микроконтроллерах, тогда ее можно обойти, выбрав другой, аналогичный МК, но не столь широко используемый.
Так что, если не работает в протеусе - это может быть и ошибка юзера и работа защиты и ошибка в модели.
А если работает в протеусе, скорее всего будет работать и живьем. Конечно, если модели адекватные.