Микроконтроллеры | Ликбез по программированию PIC |
|
---|---|---|
SAK: Шютка? Воистину правда. |
|
|
А вот и первый, черновой, вариант графа. Будет над чем поразмыслить. А то, смотрю, в Чемберленовской ветке уже нарисовали. А мы что, хуже? Кому что неясно? Прошу задавать вопросы. Честно говоря, я надеялся, что уважаемые участники нарисуют граф сообща. Но вижу, что возникло много неясностей. Поэтому рискну предложить свой черновой вариант для обсуждения. |
|
|
picmaniac, нарисовано красиво! Вопросы конечно есть. Наверное было бы плохо, если бы их не было? Ну и все-таки вопрос связанный с дребезгом и помехами мы здесь оставляем за кадром? Вы так и не ответили. |
|
|
Zandy: Я вот, пока суть да дело с основным заданием, накалякал программочку, работающую по алгоритму Vlad_Petrовича, правда с двумя кнопками. |
|
|
|
||
Вопрос про дребезг и помехи прошу повторить. Как-то он, видимо, ускользнул от моего внимания. Честно говоря, я и сам толком не знаю, как эти самые графы по всем правилам строить. Поэтому нарисовал так, как себе его представляю. Может быть и не по всем "канонам" и "законам жанра". ИМХО всё же лучше так, чем вообще никак. Постепенно будем разбираться далее. круги, я так понимаю, должны символизировать состояния, а они символизируют действия Я пытался по возможности наглядно сделать. Наверное, состояние 2 и соответствующий кружок лучше будет назвать "выдержка времени 100 мс". Как я различаю для себя состояния и действия? Состояние по моему пониманию может длиться достаточно долго. Положение кнопок мы можем раз за разом проверять хоть до посинения. Выдержка времени тоже не один миг длится. А вот повторная проверка - да, это краткое событие, но оно у нас одно из ключевых, имеет много связей - поэтому выделил его. Ну и бегущий огонь - это тоже достаточно продолжительное состояние. Действие - это непродолжительное событие, происходящее при переходе из одного состояния в другое. Ещё раз скажу - так я понимаю это для себя, могу оказаться не совсем прав, или совсем не прав. Посмотрю в литературе ещё. вот стрелочки с 4 кружка на 3 не обозначены, и с 5 на 3 тоже Условие перехода в данном случае - просто окончание определённого состояния по времени. Можно написать - истекло время "бегущего огня". Какие действия при этом переходе происходят? Да вроде никаких не вижу. Коллективный разум рулит! Сообща веселее процесс освоения идёт. И разбираться легче. А вот и подправленный граф: |
|
|
picmaniac, а может все-таки того, на начальном этапе без графов? Ну, будем рисовать хороший красивый графический алгоритм. Ну а в дальнейшем перейдем к графам. А то ведь я в этом програмировании вообще ни бум-бум. Ну хоть представление поиметь, что за штука такая, программирование, ну всякие стандартные или часто повторяющиеся процедуры изучить, ну там работу с памятью, с внешними ус-вами и т. д. Просто понимаешь, сейчас зациклимся на графах, время уйдет. Мне бы хоть на уровне ПТУ представление получить. Я трезво мыслю и знаю, что спецом в любом случае не стану, возраст не тот, а немного разбираться в вопросе хотелось бы. Фундаментальное изучение конечно хорошо, и я это всячески приветствую, но сначала хотелось бы просто немного "въехать". Вот Splav56, решил одну задачку и ему хватило. А мне не хватает. Хочется побольше тренинга. |
|
|
OK. По просьбам трудящихся перейдём к написанию ассемблерного кода. |
|
|
picmaniac: Будем писать код по предложенному графу, или иначе? |
|
|
Да. "Зелёный свет!" ...важно, чтоб устройство правильно работало - если кнопка до 100 мс нажата - не запускать, свыше 100 мс - запускать. Вопрос имелся ввиду этот? Я его, признаться, не совсем понял. Поэтому и попросил повторить более доходчиво. |
|
|
Форум про радио — сайт, посвященный обсуждению электроники, компьютеров и смежных тем. pro-radio.online | Обратная связь |
© 2003—2024 |