-=MindHunteR=- 0 26 февраля, 2014 Опубликовано 26 февраля, 2014 · Жалоба Доброго времени суток! Появилась надобность управлять несколькими 14-ти сегментными дисплеями. Для реализации задачи я решил воспользоваться драйвером MAX6955 (даташит http://datasheets.maximintegrated.com/en/ds/MAX6955.pdf) Драйвер управляется через I2C. Для установки адреса устройства, используются пины AD0 и AD1, которые можно соединять с питанием, землей или сигнальными линиями. Всего 16 комбинаций, представленных в таблице 5 в даташите. В даташите же сказано, что адрес устройства это 7ми битное число. Плата разрабатывалась в Proteus'е - там же и успешно просимулировал программу для ATMEGA328. На практике, я присоединил обе ноги AD0 и AD1 к питанию, так что адрес девайса получился 0b1100101. Т.е. для записи я обращаюсь по адресу 0b11001010. Но как я не пытался, MAX6955 не отзывается ни на одну комманду. Проверял схему 100 раз, тыкал осциллографом и на входы и на выходы - на входах виден сигнал I2C, на выходах тишина. Код пишу в CodeVisionAVR. По примеру кода из этого поста http://www.edaboard.com/thread288875.html. Кто-то может посоветовать мне, как мне запустить девайс? Спасибо. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Jury093 2 27 февраля, 2014 Опубликовано 27 февраля, 2014 · Жалоба Кто-то может посоветовать мне, как мне запустить девайс? конденсатор и резистор стоят и номиналы правильные? OSC = RC oscillator, RSET = 56kΩ, CSET = 22pF, V+ = 3.3V попробуйте высокомным щупом осцилла ткнуть в соединение между кондеем и пином OSC микросхемы.. или подайте туда внешний клок (1..8МГц) пуллапы на шине i2c присутствуют? микросхема вроде несложная, схема включения типовая - должна работать, если конечно в софте не напахали.. если вы работаете через контроллер i2c меги, то попробуйте написать софтовую реализацию i2c и формируя пинами протокол (пишется за полчаса), отсечь (на время отладки) софтовую составляющую.. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться