Оглавление: Введение | Keypad_IR_to_UART | UART_to_Pin | SDC_Talking
Устройство UART_to_Pin предназначено для управления нагрузками посредством UART команд. В качестве управляющих символов выступают заглавные буквы латиницы от “A” до “P” и цифры от “0” до “3”.
Устройство имеет 16 выходов, которые управляют нагрузками (как подключить к МК нагрузку). Нагрузка включается путем установки на соответствующей ножке МК логической единицы. Изменение состояния на ножках МК происходит по факту приема соответствующего символа по UART. Если пришел символ “A” – включится нагрузка A, пришел символ “B” – нагрузка B и так далее. Для разных вариантов реагирования подготовлено несколько вариантов прошивок с разным функционалом:
uart_to_pin (Базовая прошивка).
Включение нагрузки происходит по факту приема соответствующего символа по UART. Если пришел символ “A” – включится нагрузка A, пришел символ “B” – нагрузка B и так далее. Включение любой из нагрузок автоматически выключает все остальные нагрузки (возможна работа только одной нагрузки).
При приеме символа “0” (ноль) – все нагрузки выключаются.
При приеме символа “1” – все нагрузки включаются.
110-uart_to_pin.zip (2257 Загрузок)
В архиве находится исходник, прошивка, фьзы, дополнительная информация. Читайте info.txt
uart_to_pin_mod1
Включение нагрузки происходит по факту приема соответствующего символа по UART. Если пришел символ “A” – включится нагрузка A, пришел символ “B” – нагрузка B и так далее. Включение новой нагрузки никак не влияет на состояние остальных (одновременно может быть включено любое количество нагрузок).
Выключение нагрузки происходит при повторном приеме символа “A”, “B” и т.д.
При приеме символа “0” (ноль) – все нагрузки выключаются.
При приеме символа “1” – все нагрузки включаются.
110-uart_to_pin_mod1.zip110-uart_to_pin_mod1.zip (2016 Загрузок)
В архиве находится исходник, прошивка, фьзы, дополнительная информация. Читайте info.txt
uart_to_pin_mod2
Включение нагрузки происходит по факту приема соответствующего символа по UART. Если пришел символ “A” – включится нагрузка A, пришел символ “B” – нагрузка B и так далее. Включение новой нагрузки никак не влияет на состояние остальных (одновременно может быть включено любое количество нагрузок).
Выключение нагрузки происходит при приеме соответствующих прописных символов латиницы “a”, “b” и т.д.
При приеме символа “0” (ноль) – все нагрузки выключаются.
При приеме символа “1” – все нагрузки включаются.
110-uart_to_pin_mod2.zip (1996 Загрузок)
В архиве находится исходник, прошивка, фьзы, дополнительная информация. Читайте info.txt
Дополнительно сделаны модификации прошивок с плавным включением-отключением нагрузок при помощи ШИМ. Эти варианты больше подходят для устройств, где в качестве нагрузок используются светодиоды. Такой вариант прошивок нельзя использовать в схемах, где используется реле или необходимо четкое переключение.
uart_to_pin_pwm
Аналогично uart_to_pin, за исключением плавного переключения нагрузки.
110-uart_to_pin_pwm.zip (1727 Загрузок)
В архиве находится исходник, прошивка, фьзы, дополнительная информация. Читайте info.txt
uart_to_pin_pwm_mod1
Аналогично uart_to_pin_mod1, за исключением плавного переключения нагрузки.
110-uart_to_pin_mod1_pwm.zip (1997 Загрузок)
В архиве находится исходник, прошивка, фьзы, дополнительная информация. Читайте info.txt
uart_to_pin_pwm_mod2
Аналогично uart_to_pin_mod2, за исключением плавного переключения нагрузки.
110-uart_to_pin_mod2_pwm.zip (1804 Загрузки)
В архиве находится исходник, прошивка, фьзы, дополнительная информация. Читайте info.txt
uart_to_pin_pwm_mod3
Особняком идет эта модификация. Она позволяет на части выходов (от “A” до “H”) регулировать уровень ШИМ. Остальные нагрузки (от “I” до “P”) просто включаются/отключаются дискретно.
Немного меняется общая логика управления выходами для этой модификации. Это связано с тем, что для управления ШИМ-каналом нужно 2 кнопки, а кейпад имеет всего 16, чего не достаточно для полноценного управления всеми линиями (в случае с ИК-пультом все проще – можно изучить необходимое количество кнопок).
Управление линиями осуществляется следующим образом
ШИМ-выхода
выход А: увеличение уровня ШИМ – символ “A”, уменьшение — “E”
выход B: увеличение уровня ШИМ – символ “B”, уменьшение — “F”
выход C: увеличение уровня ШИМ – символ “C”, уменьшение — “G”
выход D: увеличение уровня ШИМ – символ “D”, уменьшение — “H”
выход E: увеличение уровня ШИМ – символ “2”, уменьшение — “6”
выход F: увеличение уровня ШИМ – символ “3”, уменьшение — “7”
выход G: увеличение уровня ШИМ – символ “4”, уменьшение — “8”
выход H: увеличение уровня ШИМ – символ “5”, уменьшение — “9”
Дискретные выхода
выход I: включение/выключение – символ “I”
выход J: включение/выключение – символ “J”
выход K: включение/выключение – символ “K”
выход L: включение/выключение – символ “L”
выход M: включение/выключение – символ “M”
выход N: включение/выключение – символ “N”
выход O: включение/выключение – символ “O”
выход P: включение/выключение – символ “P”
При приеме символа “0” (ноль) – все нагрузки выключаются.
При приеме символа “1” – все нагрузки включаются.
110-uart_to_pin_mod3_pwm.zip (2165 Загрузок)
В архиве находится исходник, прошивка, фьзы, дополнительная информация. Читайте info.txt
Оглавление: Введение | Keypad_IR_to_UART | UART_to_Pin | SDC_Talking
«По прошивке — прошивать нужно файлом uart_to_pin.hex — он такой для любой модификации»
Вот, а я думал это простая прошивка, не шим.
Я пробовал разные модификации. Сегодня разобрался в чем проблема,
оказывается внутренняя RC цепочка не достаточно точная.
Проверил через таймер зажигая светодиод на 10 сек и засекал параллельно секундомером, при 3 замерах, светодиод горел 9.4 сек. Фьюзы были в порядке, проверял несколько раз.
Поменял на внешний кварц 12Мгц, подправил прошивку под него. И при замере секундомером светодиод горел 10.0 сек. Проверил передачу UART, начала нормально работать. Вот что значит внутренний RC генератор.
Спасибо Вам за отклик, может немного не довольно высказался, но реально запутался с этими прошивками в этом проекте.
А вообще, часто Вашим сайтом пользуюсь, если надо уточнить правильность фьзов на том или ином контроллере, там все, как раз, описано четко и понятно. Спасибо Вам за вашу деятельность! ))
Простите если немного запутано. Варианты прошивок для основного проекта не нужны были, поэтому обкатаны не так детально.
По прошивке — прошивать нужно файлом uart_to_pin.hex — он такой для любой модификации
Возможно в ранних версиях я пытался их переименовывать в uart_to_pin_pwm.hex от этого он там и лежит в исходниках.
В любом случае я старался в корневую папку выкладывать правильный файл — uart_to_pin.hex (который и указывается в info.txt)
ЕЕПРОМ прошивать не нужно (этот файл создается при компиляции автоматически даже если он пустой)
UART 9600 без бита четности и с двумя стопбитами.
Что-то очень все запутано, не в Вашем стиле.
Скачал версию uart_to_pin_mod3_pwm.
Прошил, подрубил все, врубил терминал, не пашет.
Думаю, «Может скорость юарта выставил не ту, ану гляну какая должна быть.»
А инфы никакой нету по этому поводу, не на странице сайта, ни в файлике info.txt.
«Ну ок, поставлю 9600, 8, none, 1, none. » не пашет.
Пробовал загрузить EEPROM, узнал как, из другой статьи.
В этой статье ни слова о том, что еще и EEPROM надо записывать, и как это делать.
Шью uniprof’ом, поставил выбираю файл прошивки, предлагает выбрать eeprom-файл, выбираю EE_uart_to_pin.hex, ничего не появляется колонке eeprom’a, черточки, как и были. eeprom пуст.
И только прошив контроллер прошивкой uart_to_pin.hex, без прошивки eeproma, пашет только команда «1» и «0», плавно все зажигается и гаснет. Никакие каналы отдельно не откликаются на их команды.
Итак, претензии:
1. Нафига в архиве с версией шим3, который я скачал, простая прошивка uart_to_pin.hex ?
2. Нафига еще раз отставлять прошивку uart_to_pin.hex в папке uart_to_pin_mod3_pwm???
Если мне надо простая версия, я скачаю простую, для всех же отдельные архивы. А по факту чуть ли не одно и тоже во всех архивах. Это сбивает с толку, думаешь что под этим именем нужная тебе прошивка, ты ведь скачал версию 3, это наверное она.
3. Раз уж куча всего в архиве, почему не описано в файлике info.txt, нормальный порядок действий, что шить для каких случаев, какой файл для EEPROM выбрать, надо ли вообще это делать. Какие настройки передачи по UART ???
Спасибо Вам большое все работает как надо использовал прошивку из папки uart_to_pin_source_mod1 буду тестить с часами как приедут детали.
Пробуй http://www.forum.getchip.net/viewtopic.php?f=24&t=717
@GetChiper
Ну после отправки символа нагрузка включилась примерно на 1 сек.,а потом отключилась имитируя тем самым кнопку без фиксации.
Без фиксации — это значит на выходах иголки должны появляться в момент прихода символа?
Уважаемый автор,очень полезное устройство получилось а главное простое и универсальное.А можно ли изменить прошивку uart_to_pin_mod1 так чтоб нагрузки от “I” до “P” работали без фиксации как кнопка без фиксации и не управлялись общим вкл/выкл мне это нужно для управления часами.
Программа написана не на СИ. Исходник на Билдере в архиве статьи.
Добрый день!у меня такая проблема, при включении питания все порты включаются.не смогли бы скинуть исходный файл в codevisionavr если такой существует!заранее спасибо!!!
Прошивку базовую я обкатывал и она работала как надо. Все остальные моду делались на функционале базовой и изначально в базовую были заложены возможности этих изменений.
Сейчас я загружен на работе, как появится свободное время я попробую у себя моды и отпишусь.
Сейчас попробовал терминал. Реакция аналогичная. Поведение действительно странное, на базовой прошивке при включении схемы, светодиод зажигается сразу, вообще без отправки каких либо символов на Rx контроллера. (В нагрузку кинул светодиод через резистор 1кОм +на +питания — через резюк на 3-ю ногу). А когда пытаюсь отправлять символы, светодиод просто помигивает в момент передачи.( А ты сам пробовал эти прошивки, у тебя они работают?
Странное поведение.
Как ведут себя другие варианты прошивок (например, базовая)?
Попробуйте отправлять символы из обычного терминала. Какая будет реакция?
Да, для полноты картины… Тип переменной куда загружался символ — А, в своей программе, а использовал ansichar. Среда разработки — RadStudio. Если нужно могу скинуть исходник.
Наконец то дошли руки, написал таки программку на Delphi, чтобы работать с этим девайсом по UART. Прошивку использовал uart_to_pin_mod2. Долго не получалось, потом оказалось что заглавный символ «А» — кириллический, а не латиница). Исправил, все заработало, но… Прикол в другом. Отправляю я эту «А» на контроллер и включаются ВСЕ порты, хотя должна включиться только 3-я нога. Отправляю строчную «a» — все порты отключаются). Более того, для того чтобы отключить все порты годится отправка абсолютно любого по крайней мере строчного символа. Отправка 0 или 1 ни к чему не приводит. Подскажите в чем ошибка, шил на PonyProg фьюзы ставил инверсно. Может че в прошивке не так? Гляньте пожалуйста, а то устройство в душу запало).
Спасибо
Отправил на почту
@GetChiper
Да, без ШИМа
Я так понимаю та модификация что без шима?
Евгений,а можете сделать мод как mod 2 только с инвертированными выходами, то есть управление низким уровнем?
Думаю оптронно-тиристорную сборку ставить на каждый выход, ток около 1 ампера на канал.