Пост N: 38
Зарегистрирован: 02.10.07
Откуда: Россия, Ульяновск
Рейтинг:
0
Отправлено: 25.07.10 17:45. Заголовок: симуляция в MPLAB IDE 8.10
такая проблема: при симуляции в пошаговом режиме надо , чтобы при "0" на входе RB7 прога зацикливалась, ожидая "1". При получении "1" прога исполняется далее. Что нужно выставить в окне симуляции, чтобы это обеспечить? Если можно поподробнее, в картинках, первый раз решил этим воспользоваться, раньше не надо было
Александр, скажу честно: если речь идёт о работе в симуляторе, то на функции стимула (они ориентированы на моделирование внешних воздействий) я, образно выражаясь, "плевал с высокой колокольни" (сказал по-простому. Так понятнее. Что в голове, то и на языке). Я ими не пользуюсь давно. С тех пор, как отчётливо понял всю их невыгодность (по сравнению с таким "важняком", как эффективная, черепномозговая деятельность). Проще и выгоднее (для серых клеточек. Ради их бурного развития и затеян "сыр-бор") организовать программную "подставу" (программно смоделировать внешнее воздействие). Я это называю "уловками". Например, в симуляторе, рабочая точка обидно и подло "закольцевалась" в какой-то кнопочной проверке и не хочет её покидать. Замените btfsc на btfss (или наоборот. Зависит от конкретики), и все дела (только по окончании работы не забудьте, как поёт группа Любэ, "вернуть всё в зад"). Или просто обойдите её. С помощью врЕменной "подставы" типа goto <туда, куда нужно>. И т.д. (могут быть другие варианты). И функции стимула не нужны. Вместо них, нужно придумать способ программного ("уловки") достижения вожделеемого. По большому счёту, программных "уловок" - "тьма". На мой взгляд, выгоднее ориентироваться на их "освоение/накопление" (толка больше), а не уповать на функции стимула. То, что Вам нужно, выясняется в 2 приёма. Сначала, на входе RB7, программно выставляете 0 ("уловка") и отслеживаете результат, а затем, вместо 0, выставляете 1 и отслеживаете результат. После убеждения в том, что вожделеемое достигнуто, убираете эту программную "уловку". Самое выгодное решение (проверка "в железе") - использование программатора-отладчика (типа PicKit2), но под это дело, нужно организовать соответствующий разъём (наличие программатора-отладчика, его программного обеспечения и умение работать с ним - само собой).
Пост N: 1733
Зарегистрирован: 14.01.07
Откуда: Россия, Лиски
Рейтинг:
2
Фото:
Отправлено: 26.07.10 12:47. Заголовок: akd, если Вы хотите ..
akd, если Вы хотите изменять уровни на портах, то могу посоветовать следующее. В Debugger, выставляете Mplab Sim. Потом опять жмёте Debugger и находите в выпадающем меню Stimulus. Жмёте на него, откроется окно под одноимённым названием. Там можно выбрать на каком порту, какой уровень выставить и на какой его заменить при нажатии соответствующей кнопки. Всё интуитивно понятно. Если не получится, пишите.
Пост N: 39
Зарегистрирован: 02.10.07
Откуда: Россия, Ульяновск
Рейтинг:
0
Отправлено: 27.07.10 17:52. Заголовок: Сначала, на входе RB..
цитата:
Сначала, на входе RB7, программно выставляете 0 ("уловка") и отслеживаете результат, а затем, вместо 0, выставляете 1 и отслеживаете результат. После убеждения в том, что вожделеемое достигнуто, убираете эту программную "уловку". Самое выгодное решение (проверка "в железе") - использование программатора-отладчика (типа PicKit2), но под это дело, нужно организовать соответствующий разъём (наличие программатора-отладчика, его программного обеспечения и умение работать с ним - само собой).
так-то оно так, конечно, и это используется но если в софте есть полезная фича, то она должна работать, а не быть украшением (как выяснилось) PicKit2 в отладочном режиме использовать для 16F628 нельзя (об этом я как-то писал)
цитата:
В Debugger, выставляете Mplab Sim. Потом опять жмёте Debugger и находите в выпадающем меню Stimulus. Жмёте на него, откроется окно под одноимённым названием. Там можно выбрать на каком порту, какой уровень выставить и на какой его заменить при нажатии соответствующей кнопки.
вроде как всё правильно делаю (RB7 выставляю в LOW в начале и в конце) но не работает! видимо действительно всё это- лажа....придётся по старинке а что за соответствующая кнопка, на которую надо нажать?
Общие рассуждения. Я всегда утверждал, утверждаю и буду утверждать, что круче биокомпьютера ничего нет. Главное - заставить его (уговорами/пинками/пряниками/матюками/и т.д.) работать в поте лица (ох и ленив…). Вот тогда и будут результаты типа "ого-го". Тренированный биокомпьютер, в котором процент задействования ресурса головного мозга выше среднего, - главное удобство. А заодно и мощнейший таран (с победитовым, реактивным ударонаносителем). Следующий вопрос - техническая изворотливость и коварство. Я классифицирую их как суперкачества с жирным знаком плюс. Вплоть до высказывания типа "все утверждают, что это сделать нельзя. Пришёл человек, который не знал, что этого сделать нельзя (или знал, но наплевал на это), и сделал" (примеров - тьма). Такого рода качества с неба не падают, а подлежат тренировке. По совокупности причин, лучше всего, ей подвержены интеллектуальные хулиганы (в их среде, национальность не имеет значения). Частенько они задиристы/неудобны/спорят/в пятак могут дать/и т.п., но те из них, кто достиг успехов, и есть техническая элита, причём, не формальная, а фактическая. Обыватели склонны к разъединению, а хулиганы склонны к объединению (рыбак рыбака видит издалека) и поэтому они всегда будут сильны. А по-другому и быть не может. Иначе, все мы бегали бы (за "тем-сем") с каменными топорами и копьями. По своей "сермяжной" сути, сказанное не есть отклонение от темы. Сказанное есть выражение сути прогресса (то есть, поступательного развития). В моём её понимании. Приложить эту суть можно ко многому. И к этой теме тоже.
Пост N: 1735
Зарегистрирован: 14.01.07
Откуда: Россия, Лиски
Рейтинг:
2
Фото:
Отправлено: 27.07.10 19:37. Заголовок: akd пишет: но не ра..
akd пишет:
цитата:
но не работает! видимо действительно всё это- лажа....
Ну зачем же так. Всё прекрасно работает. Только что, проверил на своей программе. У меня прерывание при смене уровня на RB0. Всё отлично сработало. Как только нажал кнопочку, так программа ушла в прерывание. akd пишет:
цитата:
а что за соответствующая кнопка, на которую надо нажать?
Самая левая колонка, под названием Fire. Напротив того порта, с которым работаем в настоящее время.
Все даты в формате GMT
3 час. Хитов сегодня: 8
Права: смайлы да, картинки да, шрифты нет, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет