Перейти к содержимому

2 независимых цыкла


Сообщений в теме: 3

#1
Slava143

    Новичок

  • Пользователи
  • 1 сообщений
Здравствуйте!
Работаю на СИ , CodeVisionAVR. Базовые понатия есть.
Подскажите можно ли вкл. два независимых цыкла в ATMEGA8?
Т.е. : при нажатии одной кнопки вкл. постоянное мигание светодиода и мигание на некоторое время.

#2
rgb

    Продвинутый пользователь

  • Разработчик MICROCHIP
  • 865 сообщений
  • ГородКременчуг
Можно и вариантов много. Постояное мигание можно сделать по прерыванию настроеного таймера, а в основном цикле мигать вторым светиком с отсчетом выдержки времени.

#3
Gipsy

    Продвинутый пользователь

  • Разработчик MICROCHIP
  • 626 сообщений
  • ГородСтаниславів
Я ставлю прерывание на 10 мс. Переменные каждой "мигалки" инкрементируются если мигалка включена. По достижению нужного периода сбрасываются в 0.
В основном цикле автомат проверяет переменную, если больше полупериода - значит включить порт, если меньше - выключить. (для меандра, если нужна другая скважность надо просто поменять длину импульса в условии)

#4
rgb

    Продвинутый пользователь

  • Разработчик MICROCHIP
  • 865 сообщений
  • ГородКременчуг
В некоторых проектах приходится решать более двух задач (было больше десяти) в режиме текушего времени, решаемо все, только есть некоторая погрешность.Слава богу по Т.З. проходит.