Реклама
Страница 2 из 6 ПерваяПервая 1234 ... ПоследняяПоследняя
Показано с 11 по 20 из 56

Тема: Написать программку

  1. #11
    Постоянный пользователь

    Регистрация
    09.08.2008
    Сообщений
    589
    Вес репутации
    19
    Цитата Сообщение от vigor53 Посмотреть сообщение
    ОК
    Только сделать работу от внутреннего RC - 4MHz
    И все таки - 5 орудий и 2 канала -- Л - 2Ms b П - 1ms
    Включается пушка - и держит сигнал на выходе пока стик в крайнем положении ( спираль не быстро разогревается) - 1-2 сек
    А где HEX ?
    Программа еще не дописана, вечером дома, если успею допишу. Выложу тогда hex и код на языке Ардуино.

    - - - Добавлено - - -

    В ответ на просьбу в личку выложил код воспринимающий сервосигнал со второго пина платы Ардуины и управляющий светодиодом на 13 пине ( стандартный)

    - - - Добавлено - - -

    Дописал программку и откомпилировал под mega8 c частотой кварца 16 МГц и 4 МГц.
    Но использовать без кварца не советую, с RC генератором не слишком точнчо будет мерять импульсы.
    Не проверял программку полностью в железе. Только модуль анализа импульса канала с приемника.
    Выкладываю исходники и hex.
    Надо тестировать и исправлять если будут ошибки. Подправил , перезалил.
    Вложения Вложения
    • Тип файла: zip TEST.ZIP (702 байт, Просмотров: 46)
    • Тип файла: zip switch.zip (4.1 Кб, Просмотров: 51)

  2. #12
    Постоянный пользователь

    Регистрация
    31.01.2009
    Сообщений
    180
    Вес репутации
    17
    В Протеусе не запускается
    А Адруино у меня нет - исходник просмотреть нечем
    Кварц - это лишние детали.
    RC внутренний имеет достаточную стабильность

  3. #13
    Постоянный пользователь

    Регистрация
    09.08.2008
    Сообщений
    589
    Вес репутации
    19
    Цитата Сообщение от vigor53 Посмотреть сообщение
    В Протеусе не запускается
    А Адруино у меня нет - исходник просмотреть нечем
    Кварц - это лишние детали.
    RC внутренний имеет достаточную стабильность
    В архиве switch есть Hex файлы для megа8 с частотой работы 16 и 4 МГц.
    Код проверял вроде работает, правда на плате c mega328 специально под него скомпилировав. И немного. Будет время, тогда проверю нормально.
    Среда разработки Ардуино свободна доступна для скачивания http://arduino.ru/Arduino_environment и лицензии не требует.
    Уроков и примеров по среде вагон.
    Код скомпилированный в этой среде будет работать не только на платах Ардуино, но и на просто микроконтролерах АТМЕЛ серий MEGA (8,168,328 и др. )
    По сути Ардуино это отладочна плата на Atmel , но с свозможеностью загрузки кода не только через программатор, но и через последовательный интерфейс (COM или US. Правда за счет отбора памяти под загрузчик уменьшаеться объем памяти под программу.
    RC генератор действительно достаточно стабилен, но его значение в каждом конкретном экземпляре чипа отличаеться от номинала в широком диапазоне. Чтобы это компенсировать предусмотрено тестирование на заводе и поправочные константы.
    Как привязать константу к программе не знаю.
    Поэтому работать будет с RC генератором, но импульс длительноcтью 1500 мкс может мерять не точно (заметно хуже чем в схеме с кварцем).
    Проверить схему можно на макетке, вместо ключей с запалами подключить светодиоды с резисторами.
    P.S. Фьюзы на Atmele поменять не забудьте. По умолчанию стоит внутрений RC генератор 1 МГц
    P.P.S Самодельные запалы из резисторов SMD http://myresearch.company/blog/ignitor/ignitor_ru.phtml

  4. #14
    Постоянный пользователь

    Регистрация
    31.01.2009
    Сообщений
    180
    Вес репутации
    17
    Ну если Вы смотрели мое видео - то поняли что я с запалами на ТЫ
    ( мне не надо одноразовые - я использую свои пушки и ракеты - многократно )
    Константы в Меге - как бы ни разу не обсуждались на форумах - то есть все в порядке
    Константы - критичны в PIC и то только в серии 12F
    Извините - но вот еще и изучать Ардуино - уже здоровья нет
    У меня так --- если в Протеусе заработало - то и в реале все будет класс !
    Из-за разницы крайних точек в пультах разных производителей - частота может меняться от 0,8 до 2,1 мс
    Поэтому я в самом начале обозначил ------------
    среднее -- 1450 --1550 мс ( НИЧЕГО НЕ РАБОТАЕТ)
    Край верхний --- 1800 и БОЛЕЕ
    Край нижний 1200 -- и МЕНЕЕ
    С Уважением
    Виктор

  5. #15
    Постоянный пользователь

    Регистрация
    09.08.2008
    Сообщений
    589
    Вес репутации
    19
    Готовой платы под MEga8 или самого чипа нет под рукой чтобы проверить. Изначально забита частота 16 МГц платы с Mega8 в среде разработки Ардуино (под свои отладочные платы). Вроде переделал на 4 МГц .
    Если не спешите, по возможности в течении месяца спаяю и проверю именно на Mega8.
    Может, кто из коллег на форуме имеет возможность и время проверить код и откомпилировать для Вас под нужную частоту, для контроля.
    Вобщем уверен проценто на 90%, что на плате Mega8 c кварцем 16 мгц всебудет работать, на плате без кварца и с другой частотой процент уверености у меня меньше.
    Когда проверю сам, тогда будет 100 %.
    В архиве Switch, есть код под компилятор arduino, возможно кто то из более опытных коллег поможет.
    Алгоритм и значения параметров импульсов стоят по Вашей просьбе.

  6. #16
    Постоянный пользователь

    Регистрация
    31.01.2009
    Сообщений
    180
    Вес репутации
    17
    ОК
    Время - терпит!
    Странно что на форуме как я знаю ( по постам) - есть программисты
    Но - народ молчит

  7. #17
    Постоянный пользователь

    Регистрация
    09.08.2008
    Сообщений
    589
    Вес репутации
    19
    Можно вопрос по Протеус?
    В чем ошибка?
    Не воспринимает код hex или не работает как надо?
    Протеус не изучал.
    Покопался в старых запасах хлама и нашел Mega8 в корпусе TQFP на макетке с распаяным разьемом программирования. Припаял светодиод. Включил внутренний RC генератор. Зашил простейшую программу мигалку и убедился, что код все равно получил под 16 мГц, а не под 1 Мгц . Мигает в 16 раз медленее. Хотя как надо изменил в файле makefile изменил частоту на 1 мгц. Чертовщина.
    А можете промоделировать в Протеусе с кварцем на 16 МГц?

  8. #18
    Постоянный пользователь

    Регистрация
    31.01.2009
    Сообщений
    180
    Вес репутации
    17
    Привет - сдвиги есть ?

  9. #19
    Постоянный пользователь

    Регистрация
    09.08.2008
    Сообщений
    589
    Вес репутации
    19
    Цитата Сообщение от vigor53 Посмотреть сообщение
    Привет - сдвиги есть ?
    Да.
    Переключил внутренний генератор RC на 8 МГц. Исправил в коде ошибки по логике.
    Припаял на макетку светодиоды (правда не 10, а всего 4 , надо откуда выдирать или ехать на рынок покупать).Протестировал , вроде заработало.

    - - - Добавлено - - -

    Вариант прошивки на 10 каналов (2*5) для mega8 c частотой генератора RC 4 МГц.
    100 % работает. Задержка на каждый канал 2 секунды. Запрограммировал так , чтобы быстрей было невозможно.
    После прохода всего борта, повторное нажатие джойстика в сторону вызывает включение последней пушки на борту.
    Проверено на макетке. По результатам проверки для среднего положения диапазон срабатывываания скорректировал на 1400...1600 мкс (вместо 1450...1550 мкс).
    С кварцевым тактированием таких проблем не было , с RC тактированием появилось, устранил.
    По моему мнению, использование в устройствах измеряющих время, частоту, длительность импульсов для тактирования RC генераторов - это "плохой тон", "дурной вкус'. Одним словом плохо и не рекомендую.
    Но, еще раз повторю, все работает.
    Вложения Вложения

  10. #20
    Постоянный пользователь

    Регистрация
    31.01.2009
    Сообщений
    180
    Вес репутации
    17
    Проверил в Протеусе
    Работает - выходы 5/6/11/12/13 - то есть 5 каналов остальное нет
    Действительно, последний работает - постоянно при прохождении всего цикла
    Это не надо - пусть идет с начала
    Работает только по 1мс - - 2мс не реагирует -- при 1,5мс сбрасывается нормально
    Задержку (думаю) надо убрать - просто пока держу стик работает
    Ставил HEX - 10 каналов
    ОПА !
    Извиняюсь - работает и остальные каналы
    Правда поставил не 2мс - а 1,9мс
    Вот теперь - сделать два управляющих выхода на которых будет сигнал при 1мс на одном и 2мс на другом
    Возможность реверс выхода 0/1
    Обьясню зачем дополнительно два выхода
    10 - каналов в этом варианте --- это 10 полевиков ( дорогие )
    5 каналов и 2 управляющих выхода --- 7 полевиков ---
    -- но в этом случае и при 1мс и при 2мс работают одни выходы , а коммутируются управляющими выходами

    Но в принципе - если усложнится - то пусть так
    Да вот еще - для пущей надежности срабатывание от 1,2- и меньше , к примеру до 0,8мс
    и в другую сторону от 1,8 до 2,2мс
    Проверил 1,2мс - не схватывает
    Дапльнейшая проверка показала - работает 1,0 -- 0,8
    ------------------------------------------------------------1,8 -- 1,9Ну скажем --- ПОЛУЧИЛОСЬ ! ))

TEST

Страница 2 из 6 ПерваяПервая 1234 ... ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •  
Информация:
Приветствуем Вас на самом крупном в Украине модельном портале. Советуем Вам зарегистрироваться, после чего вы сможете читать и писать сообщения.
Полезные ссылки
www.modelka.com.ua
www.icar.com.ua
www.magiya.com.ua
Free Photobank torange.biz
Присоединяйтесь