реклама на сайте
подробности

 
 
> Контроллер LED дисплея STDLED316MTR
Wolfenstein
сообщение Mar 24 2013, 08:39
Сообщение #1





Группа: Участник
Сообщений: 14
Регистрация: 23-03-13
Из: Планета Земля
Пользователь №: 76 167



Привет всем. Вопрос такой: кто-нибудь работал с STLED316MTR? Это контроллер дисплея на 6 циферек с возможностью сканирования матрицы кнопок 2х8, управляется по трёхпроводной последовательной шине (STB, CLK и двунаправленная DIO). Подвязал я к нему AVR-ку, пытаюсь посылать на STLED команды, чтоб он хоть что-то на дисплее зажёг, но пока получилось только зажигать одну из восьмёрок (какую - зависит от адреса цифирьки в передаваемой команде) . Даташит по нему скачал, но понял, судя по всему, не всё.
Суть вопроса - какова правильная последовательность передачи команд на этот контроллер (команды у него делятся на категории: конфигурация дисплея, запись данных в буфер модуля управления дисплеем, считывание данных из буфера, а ещё отдельные 2 команды на включение/выключение дисплея). В 8-битной команде записи данных в нулевом банке памяти содержится адрес цифры, которую надо зажечь. После команды следуют 8 бит данных (соотв. 8 сегментам). Так вот я сначала даю команду на включение дисплея, потом команду на запись в буфер данных по цифре, потом сами данные. Включаю схему - выбранная на дисплее цифра моргает 1 раз. Тогда я зациклил эти три шага - цифра горит. Но, думаю, это не выход. Что-то я делаю не так. У меня не получается в этом цикле зажечь одновременно хотябы 2 цифры посредством посылки команд на запись соответствующих данных после включения дисплея.
Господа! 1111493779.gif Если кто-то знает эту микросхему, дайте знать, пожалуйста, я тогда поконкретнее вопрос задам. Заранее спасибо!
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
toweroff
сообщение Apr 7 2013, 15:13
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 2 957
Регистрация: 19-09-06
Из: Москва
Пользователь №: 20 514



Я сначала инициализирую драйвер, то есть прописываю ему конфигурацию (количество цифр, режим яркости)

Другая функция отправляет данные, которые нужно отображать на индикаторах

Все отправки данных обрамляются выключением/включением

Нет, при отправке данных драйвер не отключается. Данные просто "вгоняются" без всяких 0x0E/0x0D команд

Код
void STLED316S_disp_init()
{
char datas[8];
    
    datas[0] = 0x0E;
    STLED316S_send(datas, 1); // Switch OFF
    
    // Set 4 digits mode
    datas[0] = CHIP_CONFIG_PAGE + CHIP_CONFIG_ADDRESS + INCREMENT_ADDRESS + WRITE_COMMAND;
    datas[1] = 0xE4;
    datas[2] = 0x77;
    datas[3] = 0x77;
    datas[4] = 0x77;
    STLED316S_send(datas, 5);
    
    
    
      datas[0] = LED_BRIGHTNESS_PAGE + LED_BRIGHTNESS_ADDRESS + INCREMENT_ADDRESS + WRITE_COMMAND;
      datas[1] = 0x77;
      datas[2] = 0x77;
      datas[3] = 0x77;
      datas[4] = 0x77;
      STLED316S_send(datas, 5);


    datas[0] = 0x0D;
    STLED316S_send(datas, 1); // Switch ON
    
}
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 2nd September 2025 - 06:43
Рейтинг@Mail.ru


Страница сгенерированна за 0.02014 секунд с 7
ELECTRONIX ©2004-2016