lllypyn Опубликовано 19 марта, 2013 Поделиться Опубликовано 19 марта, 2013 Решил сделать светодиодное табло. Плата пришла распаянная, не могу понять, правильно ли я подключил табло. gpio 10(MOSI) --> DIN gpio 11(SCLK) --> CLK gpio 9(CE1) - LOAD Почему на плате он называется CE0(1) а не CS(SS)? Не знаю можно ли вставлять ссылки, удалите если нет, покупал тут - http://www.ebay.com/itm/4x-Blue-8x8-LED-matrix-Max7219-Seamless-Cascadable-Arduino-PIC-Rasberry-Pi-MJKZZ-/281055201039?pt=LH_DefaultDomain_0&hash=item417032070f Когда подключаю табло горит не все, а квадратами 3х3 между ними выключенные диоды. Если табло подключить по другому то не горит совсем. Это нормально? Может кто-нибудь поможет, целый день голову ломаю, спаял вроде нормально. 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Vascom Опубликовано 19 марта, 2013 Поделиться Опубликовано 19 марта, 2013 CS - это видимо Chip Select, а CE - Chip Enable, что по сути одно и то же. Как захотели, так и назвали. Ну так его же надо программировать, чтобы оно работало как надо. 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
20% скидка на весь каталог электронных компонентов в ТМ Электроникс!Акция "Лето ближе - цены ниже", успей сделать выгодные покупки!Плюс весь апрель действует скидка 10% по промокоду APREL24 + 15% кэшбэк и бесплатная доставка!Перейти на страницу акции Реклама: ООО ТМ ЭЛЕКТРОНИКС, ИНН: 7806548420, info@tmelectronics.ru, +7(812)4094849
lllypyn Опубликовано 19 марта, 2013 Автор Поделиться Опубликовано 19 марта, 2013 А вот насчёт того что горит не все? Это нормально? 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Выбираем схему BMS для корректной работы литий-железофосфатных (LiFePO4) аккумуляторов Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ, также как и для других, очень важен контроль процесса заряда и разряда, а специализированных микросхем для этого вида аккумуляторов не так много. Инженеры КОМПЭЛ подготовили список имеющихся микросхем и возможных решений от разных производителей. Подробнее>> Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161
Vascom Опубликовано 19 марта, 2013 Поделиться Опубликовано 19 марта, 2013 Наверное да. Чтобы зажечь всё там же надо прописать по SPI. 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
lllypyn Опубликовано 19 марта, 2013 Автор Поделиться Опубликовано 19 марта, 2013 В SPI данные будут передаваться по MOSI? Или CLK? Я между ними не понимаю разницу. 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Vascom Опубликовано 19 марта, 2013 Поделиться Опубликовано 19 марта, 2013 (изменено) В смысле? В SPI всё просто: Опускаешь чипселект, пускаешь данные и клок синхронно, после передачи поднимаешь чипселект, по его фронту данные защёлкнутся. Вроде всё. А так да, данные на проводе MOSI должны идти. Изменено 19 марта, 2013 пользователем Vascom 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
lllypyn Опубликовано 19 марта, 2013 Автор Поделиться Опубликовано 19 марта, 2013 А т.е. CE --> 0. Отправляю 16 бит, CE --> 1. И все? 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Vascom Опубликовано 19 марта, 2013 Поделиться Опубликовано 19 марта, 2013 Да. Я конечно не уверен сколько бит у тебя в этом девайсе, и что в них должно быть, но в целом так. 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
lllypyn Опубликовано 19 марта, 2013 Автор Поделиться Опубликовано 19 марта, 2013 Блин, что же я не так делаю, не пойму. Может кто-нибудь глянет. Вот библиотека bcm2835 для SPI http://www.open.com.au/mikem/bcm2835/group__spi.html#gac888dc9b78b695f6c13eeeaa813c0d82 Я отправляю биты вот этой функцией uint8_t bcm2835_spi_transfer() это она или нет? Никак не могу перевести описание некоторых 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Vascom Опубликовано 19 марта, 2013 Поделиться Опубликовано 19 марта, 2013 Какая у тебя частота (или период) клока для SPI? Вообще прочитай даташит на max7219. 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
lllypyn Опубликовано 19 марта, 2013 Автор Поделиться Опубликовано 19 марта, 2013 500-1300Гц, оптимальная - 800. 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Vascom Опубликовано 20 марта, 2013 Поделиться Опубликовано 20 марта, 2013 Может напряжения логических сигналов не хватает? Сколько там распи выдаёт логическую единицу? 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
lllypyn Опубликовано 22 марта, 2013 Автор Поделиться Опубликовано 22 марта, 2013 Нет это я калич, неправильный регистр отправлял. Но теперь новая проблема, вывел драйвер и спящего режима, установил предел динамической индикации, включил тест и дисплей полностью загорелся. Перезагрузил я распберри(включил передёрнув питание) дисплей погас потом включился распберри и этот же код ничего не делает, т.е. опять запустить тест не получается, дисплей просто отключен. Что мне делать? Вот даташит https://www.dropbox.com/s/zwcy34vuv6o7aca/MAX7219-MAX7221.pdf 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Vascom Опубликовано 22 марта, 2013 Поделиться Опубликовано 22 марта, 2013 По хорошему тут нужен осциллограф или логический анализатор, чтобы смотреть что реально ты отправляешь на девайс. 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
lllypyn Опубликовано 22 марта, 2013 Автор Поделиться Опубликовано 22 марта, 2013 А что могло случиться с мк идей нет? 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Vascom Опубликовано 22 марта, 2013 Поделиться Опубликовано 22 марта, 2013 Без приборов и измерений ничего сказать нельзя. Может контакт где отошёл. 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
lllypyn Опубликовано 22 марта, 2013 Автор Поделиться Опубликовано 22 марта, 2013 (изменено) Протестил пи, что написанно то и делает. #include <bcm2835.h> #include <stdio.h> int m_push(uint8_t data, uint8_t meta) { bcm2835_spi_setChipSelectPolarity(BCM2835_SPI_CS1, LOW); bcm2835_spi_transfer(data); bcm2835_spi_transfer(meta); bcm2835_spi_setChipSelectPolarity(BCM2835_SPI_CS1, HIGH); } int main() { if (!bcm2835_init()) { printf ("Ошибка загрузки библиотеки\n"); return; } // иницализация библиотек bcm2835_spi_begin(); bcm2835_gpio_fsel(RPI_V2_GPIO_P1_19, BCM2835_GPIO_FSEL_OUTP); bcm2835_gpio_fsel(RPI_V2_GPIO_P1_23, BCM2835_GPIO_FSEL_OUTP); bcm2835_gpio_fsel(RPI_V2_GPIO_P1_26, BCM2835_GPIO_FSEL_OUTP); bcm2835_spi_setBitOrder(BCM2835_SPI_BIT_ORDER_MSBFIRST); bcm2835_spi_setDataMode(BCM2835_SPI_MODE1); bcm2835_spi_setClockDivider(BCM2835_SPI_CLOCK_DIVIDER_32); bcm2835_spi_chipSelect(BCM2835_SPI_CS1); m_push(0x0C, 0x01);// shut down bcm2835_delay(10); m_push(0x0B, 0x07);//scan limit bcm2835_delay(10); m_push(0x0F, 0x0A); //яркость сегментов bcm2835_delay(10); m_push(0x00, 0x09); // установить режим декодирования bcm2835_delay(10); m_push(0x00, 0xF0); // управление светодиодами bcm2835_delay(10); m_push(0x0F, 0x00);//run test mode bcm2835_delay(2000); m_push(0x0F, 0x01);//stop test mode // завершение bcm2835_spi_end(); bcm2835_close(); return; } Изменено 22 марта, 2013 пользователем lllypyn 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы публикуете как гость. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.