[uquote="Родэрик",url="/forum/viewtopic.php?p=4598158#p4598158"]то - наверное самая хорошая искра[/uquote]Хорошо искрить ещё лучше)) ®
[uquote="Родэрик",url="/forum/viewtopic.php?p=4598158#p4598158"](если скажем подключить на столе) будет при каком-то конкретном (или минимальном) времени накопления ... и вот представим, что мы начали в направлении этого стола перемещать двигатель ... насколько близко он должен быть, чтобы эффективность работы бобины стала зависеть от его оборотов?[/uquote]От оборотов стола? Это уже столоверчение)) Стол, двигатель, бобина, искра... Не, стол тут лишний)) А если честно, совсем не понял...
[uquote="Родэрик",url="/forum/viewtopic.php?p=4598158#p4598158"]а сначала получать откуда-то некое 16-ти битное значение, а потом урезать его до 8бит с помощью портянки сдвигов - не особо запаривает?[/uquote]Ну что делать, если нет свободного 16бит таймера, а имеющиеся в наличии PIC-и надо утилизировать.
[uquote="Родэрик",url="/forum/viewtopic.php?p=4598158#p4598158"]Сейчас кроме сохранения контекста, в ПП (подпрограмма прерывания) ничего нет. Это означает, что в твоем кода нет четкой синхронизации по времени, нет аппаратной реакции на внешние асинхронные события, которыми могут быть - спад по int, изменение на portb, изменение на выходе компаратора, по захвату на rb3 ... а это означает, что ты это всё, если и делаешь, то вручную, с помощью лишних опросов/сравнений ... - не запарился так?[/uquote]Я ж честно сказал, это то, что я ПОКА накропал, работы продолжаются, всё будет, и прерывания в том числе. А так да, входы сканирую опросом, нет у этого проца достаточного кол-ва внешних прерываний, и платы уже разведены, и это не только для меня. И в принципе, вся рутина уже сделана, только вычисления остались, но это тоже такая рутина)))
Вроде бы всё продумал, на всяк случай описание алгоритма, словами запаришься, присуьсьвуют некоторые упрощения и умолчания
[uquote="Родэрик",url="/forum/viewtopic.php?p=4598158#p4598158"]Прерывания - это точно такая же подпрограмма, как и любая другая (зашел - вернулся). Участок кода (твоего кода) с фиксированным лишь начальным адресом, не более того. Главное отличие - аппаратный вызов. Именно поэтому необходимо сохранение некоторых регистров - тех, которые могут быть "испорчены" в ходе исполнения ПП.
Короче, если те или иные задачи можешь повесить на аппаратную часть - с этого и начинай. Например, настраиваешь tmr1 и модуль сср на захват ... и вот по каждому фронту(или спаду) от датчика, тебя незамедлительно доставляют по адресу 04, а в регистрах ccpr1h,ccpr1l уже лежит нужное тебе значение ... делай с ним что хочешь ...- ну красота же.[/uquote]Да это я в курсе.
Добавлено after 5 minutes 45 seconds:
[uquote="BOB51",url="/forum/viewtopic.php?p=4598165#p4598165"]Сколько раз уже говорено:
начинать надо с хорошо расписанного простыми словами алгоритма...
А уже под то описание можно и МК с удобной аппаратной начинкой и раскладкой выводов подобрать и программу в любом компиляторе написать.

[/uquote]Алгоритм в голове, слов не хватает)) У меня этих "коммутаторов" 3 штуки, у народа на другом сайте тоже имеется, все должны переделывать? Следующая версия будет на другом железе.