Не совсем бегущая строка...
Не совсем бегущая строка...
Здравствуй, прошу помощи в написании проекта на atmega 16.
На семь светодиодов выходит слово. светодиоды вращаются на планке. скорость вращения планки считывается с энкодера. Хоть набросок в каком направлении идти. Спасибо (Атмегу взял потому как их купил штук 20 по доступной цене в свое время)
На семь светодиодов выходит слово. светодиоды вращаются на планке. скорость вращения планки считывается с энкодера. Хоть набросок в каком направлении идти. Спасибо (Атмегу взял потому как их купил штук 20 по доступной цене в свое время)
Re: Не совсем бегущая строка...
abodin писал(а):Здравствуй, прошу помощи в написании проекта на atmega 16.
На семь светодиодов выходит слово. светодиоды вращаются на планке. скорость вращения планки считывается с энкодера. Хоть набросок в каком направлении идти. Спасибо (Атмегу взял потому как их купил штук 20 по доступной цене в свое время)
Смотрите журнал Схемотехника, там был аналогичный прект с прошивками.
Re: Не совсем бегущая строка...
woroba писал(а):abodin писал(а):Здравствуй, прошу помощи в написании проекта на atmega 16.
На семь светодиодов выходит слово. светодиоды вращаются на планке. скорость вращения планки считывается с энкодера. Хоть набросок в каком направлении идти. Спасибо (Атмегу взял потому как их купил штук 20 по доступной цене в свое время)
Смотрите журнал Схемотехника, там был аналогичный прект с прошивками.
сейчас поищу, а как устройство назвать?
Re: Не совсем бегущая строка...
abodin писал(а):Здравствуй, прошу помощи в написании проекта на atmega 16.
На семь светодиодов выходит слово. светодиоды вращаются на планке. скорость вращения планки считывается с энкодера. Хоть набросок в каком направлении идти.
Может сначала зайти сюда?
http://radiokot.ru/circuit/digital/home/13/
- SeamaNCOS
- Встал на лапы
- Сообщения: 107
- Зарегистрирован: Ср дек 10, 2008 15:10:59
- Откуда: KPACHO9PCK
- Контактная информация:
Тоже самое что и рисунок на колесе.http://radiokot.ru/forum/viewtopic.php?t=14736
тлько у тебя будет частота вращения одинаковая. Хотя можно просто прошивку переписать под мегу ну и добавить несколько матриц с буквами (высота 14 светиков)
тлько у тебя будет частота вращения одинаковая. Хотя можно просто прошивку переписать под мегу ну и добавить несколько матриц с буквами (высота 14 светиков)
Чем больше думаеш, тем дольше уснуть не можеш...
- Аксель
- Опытный кот
- Сообщения: 800
- Зарегистрирован: Ср апр 25, 2007 09:50:43
- Откуда: Киев
- Контактная информация:
Есть тут ещё для наброска направления:
http://radiokot.ru/forum/viewtopic.php?t=12864
Propeller clock
Скелет колобка состоит из черепа.
Спасибо буду разбираться только проблема в использовании энкодера (есть в наличии на 2500 импульсов) вход в 8кГц получится обработать?
Можно чтобы я сам разобрался кинуть кусок кода в CodeVisionAVR с таким примером: включение выходов синхронно поступающим сигналам по определенному входу. т.е. пришел сигнал на вход 1 включились выходы с 1 по 7, пришел следующий импульс на вход 1 включили выходы 1,7 тока написать все это в Си могу, но скорости думаю не хватит и программа раздуется на 200 и более строк. Можно как то описать все варианты включения выходов в какой то массив и потом только вызывать от туда нужный вариант включения, но опять повторюсь все сдвиги делать по входу к которому подключен энкодер. Спасибо.
Можно чтобы я сам разобрался кинуть кусок кода в CodeVisionAVR с таким примером: включение выходов синхронно поступающим сигналам по определенному входу. т.е. пришел сигнал на вход 1 включились выходы с 1 по 7, пришел следующий импульс на вход 1 включили выходы 1,7 тока написать все это в Си могу, но скорости думаю не хватит и программа раздуется на 200 и более строк. Можно как то описать все варианты включения выходов в какой то массив и потом только вызывать от туда нужный вариант включения, но опять повторюсь все сдвиги делать по входу к которому подключен энкодер. Спасибо.
- 1995kenny
- Вымогатель припоя
- Сообщения: 524
- Зарегистрирован: Ср авг 27, 2008 10:13:19
- Откуда: Украина, Харьков
- Контактная информация:
Есть такая вещь MiniPov. http://www.ladyada.net/make/minipov3/index.html Сам в прошлом году сделал такую-же.там токо 8 светодиодов, вроде функция для определения скорости предусмотрена.
Также могу дать почти законченные исходники на си для такой штуки с 24 светодиодами, под atmega8, с регистрами 74HC164,без определения скорости,передача по SPI.
Также могу дать почти законченные исходники на си для такой штуки с 24 светодиодами, под atmega8, с регистрами 74HC164,без определения скорости,передача по SPI.
- Вложения
-
- makezine.c
- Вот образец для MiniPov
- (3.09 КБ) 361 скачивание
- Аксель
- Опытный кот
- Сообщения: 800
- Зарегистрирован: Ср апр 25, 2007 09:50:43
- Откуда: Киев
- Контактная информация:
"скорость вращения" - ну нафиг не надо при энкодере
Ну есть у человека энкодер, хули ему пропадать (энкодеру). (Ну или нет энкодера, но есть архисложная задача.)
Энкодер из вышесказанного выходит что инкрементный - т.е. повернули его на 2500 часть круга - он нам импульс.
(Если не так - сам автор виноват за постановку своего вопроса
т.е. об чём спрашивали то и получили)
Просит код, ну.... ежели хто дасть
А на пальцах:
Допустим в кругу будет 250 столбцов.
Объявляем массив с данными, данные байтовые, 250 байтов по одному на столбец.
Одна ячейка массива - 1 байт, данные об одном столбце из 7-ми светодиодов.
Задаём переменную S как байт - будем считать ей шаги энкодера.
Задаём переменную M как байт - будем считать элементы массива
s=0
m=0
Делаем внешнее прерыванине (например по возрастанию).
Начало цикла.
По внешнему прерыванию делаем
----------
s=s+1
Проверяем:
.........Если s = 10 (отсчитали 10 шагов, а каждые 10 шагов энкодера в нашем кругу начинается новый столбец) то:
s=0
м=м+1
....если м=251 то м=1 (если достигли и вывели последний элемент массива (250), то выводить начинать с первого).
и передать на светодиоды данные из ячейки массива за номером м
........Конец Если (перврго)
----------
Вернутся в начало цикла.
Да, возможны варианты, но вот на этот алгоритм автор, я надеюсь, сможет написать свой код?
А потом можно дальше пообсуждать...
Удачи.
Ну есть у человека энкодер, хули ему пропадать (энкодеру). (Ну или нет энкодера, но есть архисложная задача.)
Энкодер из вышесказанного выходит что инкрементный - т.е. повернули его на 2500 часть круга - он нам импульс.
(Если не так - сам автор виноват за постановку своего вопроса
Просит код, ну.... ежели хто дасть
А на пальцах:
Допустим в кругу будет 250 столбцов.
Объявляем массив с данными, данные байтовые, 250 байтов по одному на столбец.
Одна ячейка массива - 1 байт, данные об одном столбце из 7-ми светодиодов.
Задаём переменную S как байт - будем считать ей шаги энкодера.
Задаём переменную M как байт - будем считать элементы массива
s=0
m=0
Делаем внешнее прерыванине (например по возрастанию).
Начало цикла.
По внешнему прерыванию делаем
----------
s=s+1
Проверяем:
.........Если s = 10 (отсчитали 10 шагов, а каждые 10 шагов энкодера в нашем кругу начинается новый столбец) то:
s=0
м=м+1
....если м=251 то м=1 (если достигли и вывели последний элемент массива (250), то выводить начинать с первого).
и передать на светодиоды данные из ячейки массива за номером м
........Конец Если (перврго)
----------
Вернутся в начало цикла.
Да, возможны варианты, но вот на этот алгоритм автор, я надеюсь, сможет написать свой код?
А потом можно дальше пообсуждать...
Удачи.
Скелет колобка состоит из черепа.