Мелкие вопросы по МК и ПЛИС.
-
alexey6522
- Встал на лапы
- Сообщения: 149
- Зарегистрирован: Чт июл 28, 2011 18:12:28
Re: Мелкие вопросы по МК и ПЛИС.
я обратил внимание, если убрать сопротивления и подключить напрямую к регистрам, то тот который не горит начинает светиться очень слабо
- Реклама
-
Alkul
- Держит паяльник хвостом
- Сообщения: 933
- Зарегистрирован: Ср апр 13, 2011 11:09:20
- Откуда: Екатеринбург
Re: Мелкие вопросы по МК и ПЛИС.
Вот прямо "заводской" интерфейс передачи данных на 200 м, выполненный по схеме "открытый коллектор"?vitalik_1984 писал(а):я же уже написал,что видел устройства с такой схемой заводские причем.
А, кроме того, на заводах тоже люди работают. А людям свойственно ошибаться. Тем более, что сейчас не советское время, когда над одной темой мог работать целый отдел. А сейчас людей на заводах не хватает, и задачу вполне может решать один человек, поправить его некому. Если он не вполне компетентен в интерфейсах связи, то в таком случае и "рождается" такой "уродец", которого Вы, по-Вашим словам, видели.
Схема с выходом ОК действительно используется и называется еще "монтажное ИЛИ". Только не для передачи данных это предназначено, а для решений, когда к одному проводу подключается несколько устройств для подачи какого-то постоянного сигнала типа "захват сети". Достоинство решения "монтажное ИЛИ" в том, что одновременная подача сигнала несколькими устройствами не приводит к физическому повреждению выходных элементов этих устройств.
Ну, я не знаю, как еще объяснять... да наверное, больше и не буду. Пусть Челюскин решает, какую схемотехнику применять, это его вопрос, в конце концов.
Да есть он на самом деле, это Вам его не видноvitalik_1984 писал(а):по схеме Челюскина и резистора нет.
При таком подключении обычно активируют внутренний pull-up того вывода контроллера, к которому подключен выход ОК.
Алгоритм передачи там самый простейший, если я правильно понял объяснения Челюскина. Он передает количество импульсов, равное номеру того светодиода, который хочет зажечь. И стоит добавиться хоть одному импульсу помехи, как весь обмен сдвигается и логика нарушается.vitalik_1984 писал(а):а то что недолго работает не факт,что из-за того,что интерфейс неправильный вот я о чем.
Последний раз редактировалось Alkul Ср май 23, 2012 19:49:47, всего редактировалось 3 раза.
-
Ann123456789
- Родился
- Сообщения: 4
- Зарегистрирован: Ср май 23, 2012 15:12:39
Re: Мелкие вопросы по МК и ПЛИС.
спасибо, а не подскажите где он находится никак не найду ><Там есть PIC16F84. Его суй.
-
alexey6522
- Встал на лапы
- Сообщения: 149
- Зарегистрирован: Чт июл 28, 2011 18:12:28
Re: Мелкие вопросы по МК и ПЛИС.
уже разобрался, все горят, но зеленый горит слабо, хотя на фото его отчетливо видно
- Вложения
-
- 2012-05-23 22.35.49.JPG
- (202.03 КБ) 370 скачиваний
-
Alkul
- Держит паяльник хвостом
- Сообщения: 933
- Зарегистрирован: Ср апр 13, 2011 11:09:20
- Откуда: Екатеринбург
Re: Мелкие вопросы по МК и ПЛИС.
Это особенность восприятия цвета человеческим глазом. Зеленый светодиод всегда кажется менее ярким, чем красный, хотя по даташиту и яркость у зеленого не меньше, и ток он потребляет такой же, как и горящий рядом красныйalexey6522 писал(а):все горят, но зеленый горит слабо, хотя на фото его отчетливо видно
- Реклама
-
alexey6522
- Встал на лапы
- Сообщения: 149
- Зарегистрирован: Чт июл 28, 2011 18:12:28
Re: Мелкие вопросы по МК и ПЛИС.
но ведь не видно при включенном свете что на дисплее и все же нужно найти способ что бы увеличить напругу, первый эксперимент убрать резисторы, это помогло, но хочется что бы еще ярче, по одному они хорошо горят
Выжал все что мог, если найду еще один красный то заменю, а то один зеленый не смотрится вообще ни как
Выжал все что мог, если найду еще один красный то заменю, а то один зеленый не смотрится вообще ни как
Re: Мелкие вопросы по МК и ПЛИС.
Алгоритм передачи там самый простейший, если я правильно понял объяснения Челюскина. Он передает количество импульсов, равное номеру того светодиода, который хочет зажечь. .
именно так и должно работать.
именно так и должно работать.
Последний раз редактировалось Челюскин Ср май 23, 2012 20:30:19, всего редактировалось 1 раз.
Лень - двигатель прогресса!
- vitalik_1984
- Поставщик валерьянки для Кота
- Сообщения: 2482
- Зарегистрирован: Пт авг 27, 2010 05:57:06
- Откуда: Тюмень
- Контактная информация:
Re: Мелкие вопросы по МК и ПЛИС.
я этого не писал, внимательнее нужно...Челюскин писал(а):именно так и должно работать.vitalik_1984 писал(а):Алгоритм передачи там самый простейший, если я правильно понял объяснения Челюскина. Он передает количество импульсов, равное номеру того светодиода, который хочет зажечь. .
как правило на больших расстояниях этого резистора не хватает, и ставят меньшего сопротивления.Alkul писал(а):При таком подключении обычно активируют внутренний pull-up того вывода контроллера, к которому подключен выход ОК.
А про схему я писал как раз для пульта, расстояние около трех метров, причем искажения могут быть самые разные, но работает.
Алгоритм просто такой, что за секунду раз пять состояние передается правда тактируется это дело приемной стороной.
Последний раз редактировалось vitalik_1984 Ср май 23, 2012 20:46:30, всего редактировалось 2 раза.
В поисках истины человек развивается.
-
Alkul
- Держит паяльник хвостом
- Сообщения: 933
- Зарегистрирован: Ср апр 13, 2011 11:09:20
- Откуда: Екатеринбург
Re: Мелкие вопросы по МК и ПЛИС.
Это я писал, а не vitalik-1984Челюскин писал(а):именно так и должно работать.vitalik_1984 писал(а):Алгоритм передачи там самый простейший, если я правильно понял объяснения Челюскина. Он передает количество импульсов, равное номеру того светодиода, который хочет зажечь. .
Челюскин, это очень плохой протокол
В итоге Вы имеете крайне ненадежный незащищенный интерфейс, плюс незащищенный, да еще и медленный протокол.
Вы пишете, что длительность импульса у Вас 0,25 секунды, а период, скорее всего, 0,5 с. Но пусть будет даже и 0,25 с на один импульс. Это чтобы зажечь 16-тый светодиод Вам нужно 4 секунды? А если нужно зажечь 16-тый, а потом 15-тый? А потом 14-тый? А перед тем, как зажигать 15-тый выяснится, что 16-тый уже нужно погасить?
Вам времени не хватит на обновление светодиодов
Не так нужно реализовывать обмен, совсем не так.
В вашем случае потребуется пакет длиной 5 байт
1-й байт - заголовок (равен 0х01)
2-й байт задает битовое поле для 8-ми светодиодов (бит 0 - состояние светодиода 1, бит 1 - состояние светодиода 2 и т.д.)
3-й байт задает битовое поле для следующих 8-ми светодиодов (бит 0 - состояние светодиода 9, бит 1 - состояние светодиода 10 и т.д.)
4-й байт - младший байт CRC
5-й байт - старший байт CRC
CRC - это циклический избыточный код, в просторечии именуемый "контрольной суммой". Подпрограмму расчета CRC я Вам готов отдать, нет там никакого ноу-хау...
Даже если выбрать неспешную скорость 9600 бит/с, весь Ваш пакет будет передан за 5 с небольшим миллисекунд!
Вы сможете обновлять состояние светодиодов с частотой 100 Гц (100 раз в секунду)! Весь пакет задает новые состояния для всех светодиодов разом.
И сложного там ничего нет.
Последний раз редактировалось Alkul Ср май 23, 2012 20:49:07, всего редактировалось 1 раз.
Re: Мелкие вопросы по МК и ПЛИС.
спасибо за ответ, это согласно Вашей схеме, я так понимаю? Там UART необходим Вы говорили, а как МК с ADM1485 должен общаться?
Лень - двигатель прогресса!
- vitalik_1984
- Поставщик валерьянки для Кота
- Сообщения: 2482
- Зарегистрирован: Пт авг 27, 2010 05:57:06
- Откуда: Тюмень
- Контактная информация:
Re: Мелкие вопросы по МК и ПЛИС.
вот вот о чем я и говорю- простокол не тот!Челюскин, это очень плохой протокол , я уже писал, чем он плох.
Конечно сам разобрался, а людям то рассказать? Интересно же из-за чего не работало.alexey6522 писал(а):уже разобрался, все горят, но зеленый горит слабо, хотя на фото его отчетливо видно
В поисках истины человек развивается.
Re: Мелкие вопросы по МК и ПЛИС.
[quote][/quote]4-й байт - младший байт CRC
5-й байт - старший байт CRC
CRC - это циклический избыточный код, в просторечии именуемый "контрольной суммой". Подпрограмму расчета CRC я Вам готов отдать, нет там никакого ноу-хау...
Буду очень рад)))))
5-й байт - старший байт CRC
CRC - это циклический избыточный код, в просторечии именуемый "контрольной суммой". Подпрограмму расчета CRC я Вам готов отдать, нет там никакого ноу-хау...
Буду очень рад)))))
Лень - двигатель прогресса!
-
Alkul
- Держит паяльник хвостом
- Сообщения: 933
- Зарегистрирован: Ср апр 13, 2011 11:09:20
- Откуда: Екатеринбург
Re: Мелкие вопросы по МК и ПЛИС.
Да, разумеется.Челюскин писал(а):спасибо за ответ, это согласно Вашей схеме, я так понимаю?
UART встроен в микроконтроллерЧелюскин писал(а):Там UART необходим Вы говорили, а как МК с ADM1485 должен общаться?
Посмотрите на схему - я проименовал выводы МК.
RxD - линия входа UART, это альтернативная функция PD0 (линии 0 порта D);
TxD - линия выхода UART, это альтернативная функция PD1 (линии 1 порта D);
На моей схеме у ведущего устройства драйвер интерфейса ADM1485 подключен к выходу UART (к TxD), при этом сам драйвер жестко конфигурирован в режим передачи.
У ведомого устройства драйвер ADM1485 подключен ко входу UART (к RxD), при этом драйвер жестко конфигурирован в режим приема.
Конфигурация драйвера осуществляется подачей лог.уровней на выводы 2 и 3. Вывод RE - разрешение приема, для разрешения приема нужно подать на этот вывод лог.0. Вывод DE - разрешение передачи, для разрешения передачи на этот вывод нужно подать лог.1
Я советую Вам прочитать даташиты на ATtiny2313 и на ADM1485, чтобы мне не объяснять то, что и так написано в даташитах.
Re: Мелкие вопросы по МК и ПЛИС.
Про UART мне понятно, уже посмотрел даташит на ADM1485. Обьясните еще вот такой момент - данные от считанного порта(состояние датчиков) нужно просто на передачу отправить в регистр UART, а как их завязать с программой контрольных сумм, которую я попросил у Вас?Челюскин писал(а):Я советую Вам прочитать даташиты на ATtiny2313 и на ADM1485
Лень - двигатель прогресса!
-
Alkul
- Держит паяльник хвостом
- Сообщения: 933
- Зарегистрирован: Ср апр 13, 2011 11:09:20
- Откуда: Екатеринбург
Re: Мелкие вопросы по МК и ПЛИС.
Дайте мне пару-тройку дней, я Вам полностью напишу программы для обоих контроллеров, и ведущего и ведомого (с опросом контактов и отправкой пакетов у ведущего и приемом пакетов и зажиганием светодиодов у ведомого).Челюскин писал(а):нужно просто на передачу отправить в регистр UART, а как их завязать с программой контрольных сумм, которую я попросил у Вас?
Могу, правда, чуть задержать с выдачей, на работе завал...
Но прежде чем писать программы нужно однозначно определиться со схемотехникой. Вы у ведущего контроллера нарисовали, в частности, что вывод GND через контакт подключен к общему проводу
И типы корпусов почему-то указаны DIL-16...
Re: Мелкие вопросы по МК и ПЛИС.
Alkul, Огромное Вам спасибо за помощь, думаю использую Вашу схему. Если будете писать в АВР Студио, я бы попросил исходники (если на асьме будете писать) чтобы самому разобраться во всем!
Лень - двигатель прогресса!
-
Alkul
- Держит паяльник хвостом
- Сообщения: 933
- Зарегистрирован: Ср апр 13, 2011 11:09:20
- Откуда: Екатеринбург
Re: Мелкие вопросы по МК и ПЛИС.
Да, я пишу на AVR Studio 4.19 на асме. И естественно, я дам Вам все исходники. Не понимаю людей, которые помогают кому-то и жмутся дать исходники.Челюскин писал(а):Alkul, Огромное Вам спасибо за помощь, думаю использую Вашу схему. Если будете писать в АВР Студио, я бы попросил исходники (если на асьме будете писать) чтобы самому разобраться во всем!
Но сначала - схемотехника.
В чем Вы рисуете схемы? Если я Вам их в формате P-CAD 2004 дам? Или же удобней в SPlain 6.0 ?
Последний раз редактировалось Alkul Ср май 23, 2012 21:39:11, всего редактировалось 1 раз.
Re: Мелкие вопросы по МК и ПЛИС.
Во-Во!!! не для нарушения авторских прав, а чтобы понять как и чего - мало ли пригодиться в жизни. буду очень ждатьAlkul писал(а):Да, я пишу на AVR Studio 4.19 на асме. И естественно, я дам Вам все исходники. Не понимаю людей, которые помогают кому-то и жмутся дать исходники.
Лень - двигатель прогресса!
Re: Мелкие вопросы по МК и ПЛИС.
Правильно ли я понимаю, что максимальная скорость модуля TWI, при тактировании контроллера 8мгц, может быть 222,222кгц?
Высчитывал вот по этой формуле. TWPS брал по минимуму = 0. TWBR тоже по минимуму возможного = 10.

Высчитывал вот по этой формуле. TWPS брал по минимуму = 0. TWBR тоже по минимуму возможного = 10.

Последний раз редактировалось O-LED Чт май 24, 2012 18:44:59, всего редактировалось 1 раз.
KIT
Re: Мелкие вопросы по МК и ПЛИС.
По формуле выходит 8 000 000/36=222 222,22222... Гц. Это 222,222 кГц. Подумайте сами: как частота модуля в МК может быть выше тактовой?
Этот пост оказался полезен? Не поленись, нажми
слева!

Куплю индикаторы ИТС-1А, ИТС-1Б, ИГВ1-8х5Л, ИГПС1-222/7, ИГПС1-111/7 и подобные.
слева!Куплю индикаторы ИТС-1А, ИТС-1Б, ИГВ1-8х5Л, ИГПС1-222/7, ИГПС1-111/7 и подобные.


