Не подскажете, как это удобно написать? Допустим в цикле делаются вычисления, потом отправляются по spi, ждем дырга exti, делаем что-то, заходим на новый круг. Как не срать в 3 разных места? Пока мне приходит в голову только static функция с несколькими точками входа, типа КА И вызываем в каждом прерывании одну и ту же функцию

Комментарии: 9

  1. Vga

    не совсем понимаю что нужно и что значит "срать в три места"

    • Serge

      Ну мне нужно 3 куска кода в три места писать, а по смыслу эту одна функция

      • Vga

        Покажи примером

        • Serge

          1. Установить параметры конверсии 2. Пхнуть во внешний ацп по spi, заодно забрать предыдущие результаты преобразования 3. Дождаться конца преобразования по дыргу ноги

          • Vga

            ну а что мешает собрать логически в одну кучку (один модуль, скажем) функцию и обработчики прерываний?

            • Serge

              Да ничего, так и делаю сейчас. Но некрасиво: по смыслу-то это одна ф-я с несколькими точками следования

              • Vga

                боюсь, в С такой абстракции нету

                • Serge

                  Нашёл, таки это называется continuation в этих ваших computer science. Чуть не изобрел protothreads :)

Не нашли ответ?

Вам также может быть интересно

Господа, есть вот такая машинка для стрижки собак и желание научиться менять микросхемы на дисплеях и тачах Подскажите как... Читать далее