Проблема с сигналами

Volkidze
Offline
Зарегистрирован: 11.12.2015

Добрый день. Проблема вот в чём. Собираю RGB куб 8*8*8. Конструкцию проверил 5 раз, схема с 25 регистрами рабочая, написал скетч для проверки массива регистров, всё работает. Но когда я загружаю скетч с эффектами куб работает как попало. Вопрос вот в чём, длинна проводов от ардуинки до платы с регистрами около 1 метра, и провода скрученные между собой. Может ли это влиять на прхождение сигнала от ардуинки до регистров и давать помехи из за скрученных проводов???

Ворота
Ворота аватар
Онлайн
Зарегистрирован: 10.01.2016

А что говорит осциллограф? Можешь выложить?

Volkidze
Offline
Зарегистрирован: 11.12.2015

У меня нет такого осцилографа. Там передача идёт на 16МГц, мой столько не видит...

qwone
qwone аватар
Offline
Зарегистрирован: 03.07.2016

Volkidze пишет:

У меня нет такого осцилографа. Там передача идёт на 16МГц, мой столько не видит...

А вы уверены что куб видит!!! Может куб такой же как и ваш осцилограф.

SLKH
Offline
Зарегистрирован: 17.08.2015

Volkidze пишет:

У меня нет такого осцилографа. Там передача идёт на 16МГц, мой столько не видит...

а кто/что на этой частоте передает?

ЕвгенийП
ЕвгенийП аватар
Онлайн
Зарегистрирован: 25.05.2015

SLKH пишет:
а кто/что на этой частоте передает?
И ещё вопрос вдогонку, а кто/что на такой частоте принимает на стороне куба?

Volkidze
Offline
Зарегистрирован: 11.12.2015

Передаёт ардуино мега на частоте 16мГц. Принимает на стороне куба регистры 74HC595 цепочка из 25 штук.

Volkidze
Offline
Зарегистрирован: 11.12.2015

Принимает цепочка регистров из 25 штук 74НС595

Volkidze
Offline
Зарегистрирован: 11.12.2015

Куб видит, но такое ощущение что сигналы пока дойдут от ардуины меги до цепочки регистров, они как то искажаются. Скетч правильный и ровный 100%, но куб выдает не правильные аннимации. Светодиоды подключенны правильно согластно схеме. Но срабатывают они как попало, общая картина эффектов есть, но вспыхивают при этом лишние светодиоды, как будто сигнал искажён...

ЕвгенийП
ЕвгенийП аватар
Онлайн
Зарегистрирован: 25.05.2015

Volkidze пишет:

Передаёт ардуино мега на частоте 16мГц. Принимает на стороне куба регистры 74HC595 цепочка из 25 штук.

Вы что-то перепутали. ардуино мега не может передавать на такой частоте. Максимальная частота часов SPI - Fclk/2

Volkidze
Offline
Зарегистрирован: 11.12.2015

Может и перепутал, извиняюсь, но даже на 8МГц мой осцилограф не видит. Так вопрос не в этом. Влияет ли как то длинна провода и то что он скручен на передачу сигнала?

sadman41
Offline
Зарегистрирован: 19.10.2016

На передачу сигнала влияет всё, даже концентрация метана в месте расположения шины данных. Вопрос только в том - насколько.

ЕвгенийП
ЕвгенийП аватар
Онлайн
Зарегистрирован: 25.05.2015

Самый простой способ - сделайте короткий провод и испытайте с ним.

Хотя, может всё-таки купить за 400 рублей пройстейший логический анализатор? По частоте он вполне потянет. Он Вам заодно и расскажет что там по SPI идёт, а не просто сигнал покажет. Или это дорого?

a5021
Offline
Зарегистрирован: 07.07.2013

Частоту SPI можно понизить простым способом до 125кгц:

// SPI initialization
// SPI Type: Master
// SPI Clock Rate: 125,000 kHz
// SPI Clock Phase: Cycle Start
// SPI Clock Polarity: Low
// SPI Data Order: MSB First
SPCR=(0<<SPIE) | (1<<SPE) | (0<<DORD) | (1<<MSTR) | (0<<CPOL) | (0<<CPHA) | (1<<SPR1) | (1<<SPR0);

Если и это осциллограф "не увидит", то можно  изобразить SPI софтом на такой скорости, что увидит даже мультиметр. Было бы желание.

SLKH
Offline
Зарегистрирован: 17.08.2015

Volkidze пишет:

Добрый день. Проблема вот в чём. Собираю RGB куб 8*8*8. Конструкцию проверил 5 раз, схема с 25 регистрами рабочая, написал скетч для проверки массива регистров, всё работает. Но когда я загружаю скетч с эффектами куб работает как попало. Вопрос вот в чём, длинна проводов от ардуинки до платы с регистрами около 1 метра, и провода скрученные между собой. Может ли это влиять на прхождение сигнала от ардуинки до регистров и давать помехи из за скрученных проводов???

а подключить (временно) кабелем 10 см очень сложно?

 

SLKH
Offline
Зарегистрирован: 17.08.2015

ЕвгенийП пишет:

Самый простой способ - сделайте короткий провод и испытайте с ним.

вот и я про тож...

 

 

 

Цитата:
Хотя, может всё-таки купить за 400 рублей пройстейший логический анализатор? По частоте он вполне потянет. Он Вам заодно и расскажет что там по SPI идёт, а не просто сигнал покажет. Или это дорого?

способ неоднозначный: входы анализатора и регистра могут по-разному преобразовывать в 1/0 реальный сигнал с искаженными фронтами, звоном и т.п. 

Volkidze
Offline
Зарегистрирован: 11.12.2015

Спасибо парни за советы!

b707
Offline
Зарегистрирован: 26.05.2017

ставлю на то, что нет никакого "искажения данных при передаче".

варианта два - ошибка монтажа или неправильный код

SLKH
Offline
Зарегистрирован: 17.08.2015

b707 пишет:

ставлю на то, что нет никакого "искажения данных при передаче".

варианта два - ошибка монтажа или неправильный код

третий (искажения) не исключен. 

на конце линии нагрузка - 25 входов. к тому же мы не знаем, что означают "провода скрученные между собой".

не уверен, что это 3 витых пары с правильной распайкой.

ну и четвертый (хотя его следует рассматривать первым) вариант - хреновое питание и/или земля.

 

 

 

Volkidze
Offline
Зарегистрирован: 11.12.2015

 

Монтаж весь проверил на несколько раз, всё впорядке. Код выложен на офф сайте с подробной инструкцией по сборке.  http://www.kevindarrah.com/?cat=99

 

Volkidze
Offline
Зарегистрирован: 11.12.2015

Скрученные провода это 4 обычных одножильных провода с сетевого кабеля скрученны между собой чтобы не болтались. Питания от компьютерного блока питания, тока хватает с лихвой. 

bwn
Offline
Зарегистрирован: 25.08.2014

Volkidze пишет:

Скрученные провода это 4 обычных одножильных провода с сетевого кабеля скрученны между собой чтобы не болтались. Питания от компьютерного блока питания, тока хватает с лихвой. 

Питания хватает на выходе БП или там где его начинают использовать?

Volkidze
Offline
Зарегистрирован: 11.12.2015

Хороший вопрос! Я замерял питание, на каждой микросхеме было 5.15в. От БП до плат провода толстые. Мне не понятно почему при воспроизведении эффектов немного мерчают те светодиоды которые мерцать в этот момент не должны. На каждой микросхеме попитанию стоит конденсатор 0.1мкф, и на входе питания на каждую плату стоит кандёр 100мкф. Подключал осцилограф по питанию скачков нет, линия вся ровная без помех.

SLKH
Offline
Зарегистрирован: 17.08.2015

bwn пишет:

Volkidze пишет:

Скрученные провода это 4 обычных одножильных провода с сетевого кабеля скрученны между собой чтобы не болтались. Питания от компьютерного блока питания, тока хватает с лихвой. 

Питания хватает на выходе БП или там где его начинают использовать?

да хотя бы и хватало по номиналу.

всё равно просматривается совершенно безобразная сигнальная земля, действительно возможны непредсказуемые эффекты.

SLKH
Offline
Зарегистрирован: 17.08.2015

Volkidze пишет:

Скрученные провода это 4 обычных одножильных провода с сетевого кабеля скрученны между собой чтобы не болтались. 

так делать нельзя. совсем.

для конкретного обсуждаемого устройства желательно впихнуть микроконтроллер рядом с регистрами.

 

 

а если необходима передача цифрового сигнала по кабелю - загуглить эту формулировку. можно узнать много нового и интересного....

Volkidze
Offline
Зарегистрирован: 11.12.2015

Вот ссылки на ютуб. Там видео работы куба и видео теста регистров. Посмотри, может что подскажешь... И вот схема подключения регистров к драйверам.

 

SLKH
Offline
Зарегистрирован: 17.08.2015

Volkidze пишет:

Вот ссылки на ютуб. Там видео работы куба и видео теста регистров. Посмотри, может что подскажешь... И вот схема подключения регистров к драйверам.

 

да те же соображения и рекомендации, что и в #24.

для развлечения попробуй в тестовом скетче заменить shiftout() на spi.transfer(), с теми же настройками spi, что и в рабочем скетче.