Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей... |
16.03.2011, 09:51
|
|
Гражданин KAZUS.RU
Регистрация: 01.01.2007
Адрес: Таганрог
Сообщений: 571
Сказал спасибо: 26
Сказали Спасибо 213 раз(а) в 91 сообщении(ях)
|
Инициализация дисплея на базе R61505
Господа! У кого есть опыт использования дисплея на базе R61505, будте добры, поделитесь опытом по его инициализации. Мне бы хотябы удедится в работоспособности дисплея. Подключился по 8битному интерфейсу, погуглил, нашел в сети команды инициализации вроде бы для R61505, написал прогу и чет не получается инициализировать. кто может чего предложить
__________________
То, что нас не убивает - делает нас сильнее
Последний раз редактировалось serb-radio; 23.12.2011 в 15:23.
|
|
|
|
16.03.2011, 14:24
|
|
Заблокирован
Регистрация: 26.12.2009
Сообщений: 3,124
Сказал спасибо: 116
Сказали Спасибо 867 раз(а) в 614 сообщении(ях)
|
Re: Инициализация дисплея на базе R61505
Сообщение от serb-radio
|
Подключился по 8битному интерфейсу
|
Ну не знаю... что вы имели под "8битному интерфейсу"...
На моём экране не было возможности выбора, подключал по полной... Да и вы ID читали, откуда такая уверенность в R61505 ? Инициализация похожа на R61505, но более точно по некоторым цифрам могу сказать только вечером.
|
|
|
|
16.03.2011, 14:50
|
|
Гражданин KAZUS.RU
Регистрация: 01.01.2007
Адрес: Таганрог
Сообщений: 571
Сказал спасибо: 26
Сказали Спасибо 213 раз(а) в 91 сообщении(ях)
|
Re: Инициализация дисплея на базе R61505
ID не читал, в даташите увидел, что дисплей с 61505 чипом.
__________________
То, что нас не убивает - делает нас сильнее
Последний раз редактировалось serb-radio; 23.12.2011 в 15:23.
|
|
|
|
17.03.2011, 13:09
|
|
Прописка
Регистрация: 18.04.2005
Сообщений: 101
Сказал спасибо: 1
Сказали Спасибо 2 раз(а) в 2 сообщении(ях)
|
Re: Инициализация дисплея на базе R61505
У меня в режиме последовательного интерфейса инициализация такая была:
Код:
|
LCD_CTRL_PORT &= ~_BV(LCD_RST);
_delay_ms(20);
LCD_CTRL_PORT |= _BV(LCD_RST);
_delay_ms(20);
// Power ON
lcd_send_cmd(DISPLAY_CONTROL_1, 0x0001);
_delay_ms(5);
lcd_send_cmd(POWER_CONTROL_5, 0x0001);
_delay_ms(5);
lcd_send_cmd(POWER_CONTROL_1, 0x17B0);
lcd_send_cmd(POWER_CONTROL_2, 0x0007);
lcd_send_cmd(POWER_CONTROL_3, 0x011A);
lcd_send_cmd(POWER_CONTROL_4, 0x0F00);
lcd_send_cmd(VCOM_HIGH_VOLTAGE_1, 0x0009);
_delay_ms(5);
lcd_send_cmd(POWER_CONTROL_3, 0x013A);
_delay_ms(50);
lcd_send_cmd(DRIVER_OUTPUT_CONTROL_1, 0x0100);
lcd_send_cmd(DRIVING_WAVE_CONTROL, 0x0700);
lcd_send_cmd(ENTRY_MODE, 0x10B8);
lcd_send_cmd(GAMMA_CONTROL_1, 0x0000);
lcd_send_cmd(GAMMA_CONTROL_2, 0x0000);
lcd_send_cmd(GAMMA_CONTROL_3, 0x0000);
lcd_send_cmd(GAMMA_CONTROL_4, 0x0000);
lcd_send_cmd(GAMMA_CONTROL_5, 0x0000);
lcd_send_cmd(GAMMA_CONTROL_6, 0x0000);
lcd_send_cmd(GAMMA_CONTROL_7, 0x0000);
lcd_send_cmd(GAMMA_CONTROL_8, 0x0707);
lcd_send_cmd(GAMMA_CONTROL_9, 0x0707);
lcd_send_cmd(GAMMA_CONTROL_10, 0x0707);
lcd_send_cmd(GAMMA_CONTROL_11, 0x0303);
lcd_send_cmd(GAMMA_CONTROL_12, 0x0303);
lcd_send_cmd(GAMMA_CONTROL_13, 0x0707);
lcd_send_cmd(GAMMA_CONTROL_14, 0x0808);
lcd_send_cmd(WINDOW_HORIZONTAL_ADDRESS_START, 0x0000);
lcd_send_cmd(WINDOW_HORIZONTAL_ADDRESS_END, 0x00EF);
lcd_send_cmd(WINDOW_VERTICAL_ADDRESS_START, 0x0000);
lcd_send_cmd(WINDOW_VERTICAL_ADDRESS_END, 0x013F);
lcd_send_cmd(DRIVER_OUTPUT_CONTROL_2, 0x2700);
lcd_send_cmd(BASE_IMAGE_CONTROL, 0x0001);
lcd_send_cmd(VERTICAL_SCROLL_CONTROL, 0x0000);
lcd_send_cmd(PANEL_INTERFACE_CONTROL_1, 0x0010);
lcd_send_cmd(PANEL_INTERFACE_CONTROL_2, 0x0000);
lcd_send_cmd(PANEL_INTERFACE_CONTROL_3, 0x0000);
// Display ON
lcd_send_cmd(DISPLAY_CONTROL_1, 0x0021);
_delay_ms(1);
lcd_send_cmd(DISPLAY_CONTROL_1, 0x0061);
_delay_ms(50);
lcd_send_cmd(DISPLAY_CONTROL_1, 0x0173);
lcd_send_cmd(HORIZONTAL_ADDRESS_SET, 0x0000);
lcd_send_cmd(VERTICAL_ADDRESS_SET, 0x0000);
lcd_send_cmd(GAMMA_CONTROL_1, 0x0707);
lcd_send_cmd(GAMMA_CONTROL_2, 0x0407);
lcd_send_cmd(GAMMA_CONTROL_3, 0x0203);
lcd_send_cmd(GAMMA_CONTROL_4, 0x0303);
lcd_send_cmd(GAMMA_CONTROL_5, 0x0303);
lcd_send_cmd(GAMMA_CONTROL_6, 0x0202);
lcd_send_cmd(GAMMA_CONTROL_7, 0x001F);
lcd_send_cmd(GAMMA_CONTROL_8, 0x0707);
lcd_send_cmd(GAMMA_CONTROL_9, 0x0407);
lcd_send_cmd(GAMMA_CONTROL_10, 0x0203);
lcd_send_cmd(GAMMA_CONTROL_11, 0x0303);
lcd_send_cmd(GAMMA_CONTROL_12, 0x0303);
lcd_send_cmd(GAMMA_CONTROL_13, 0x0202);
lcd_send_cmd(GAMMA_CONTROL_14, 0x001F); |
|
|
|
Сказали "Спасибо" 011119xx
|
|
|
17.03.2011, 13:52
|
|
Гражданин KAZUS.RU
Регистрация: 01.01.2007
Адрес: Таганрог
Сообщений: 571
Сказал спасибо: 26
Сказали Спасибо 213 раз(а) в 91 сообщении(ях)
|
Re: Инициализация дисплея на базе R61505
Спасибо, будем глядеть. Если скините еще и кусок кода для тестирования буду оч благодарен
__________________
То, что нас не убивает - делает нас сильнее
|
|
|
|
18.03.2011, 14:52
|
|
Гражданин KAZUS.RU
Регистрация: 01.01.2007
Адрес: Таганрог
Сообщений: 571
Сказал спасибо: 26
Сказали Спасибо 213 раз(а) в 91 сообщении(ях)
|
Re: Инициализация дисплея на базе R61505
Люди, подскажите плиз! Вроде проинициализировал дисплей, пытаюсь залить память одним цветом, а получается заливка полосами а не сплошным цветом. Полосы идут по 64 пикселя.
Может что то в ините неправильно или с гаммой. Кто сталкивался с такой проблемой подскажите, плиз
__________________
То, что нас не убивает - делает нас сильнее
|
|
|
|
18.03.2011, 14:58
|
|
Гражданин KAZUS.RU
Регистрация: 01.01.2007
Адрес: Таганрог
Сообщений: 571
Сказал спасибо: 26
Сказали Спасибо 213 раз(а) в 91 сообщении(ях)
|
Re: Инициализация дисплея на базе R61505
или дисплей убил пока экспериментил
__________________
То, что нас не убивает - делает нас сильнее
Последний раз редактировалось serb-radio; 23.12.2011 в 15:24.
|
|
|
|
21.03.2011, 08:23
|
|
Прописка
Регистрация: 18.04.2005
Сообщений: 101
Сказал спасибо: 1
Сказали Спасибо 2 раз(а) в 2 сообщении(ях)
|
Re: Инициализация дисплея на базе R61505
Сообщение от serb-radio
|
сам проектик
|
Для начала вот это:
Код:
|
TFT_Set_Pos(0, 0);
TFT_write_com(0x0022); //16 bit
for(i=0; i‹240; i++)
{
for(j=0; j‹240; j++)
{
TFT_write_dat(0xabcd);
}
} |
надо исправить на это:
Код:
|
TFT_Set_Pos(0, 0);
TFT_write_com(0x0022); //16 bit
for(i=0; i‹320; i++)
{
for(j=0; j‹240; j++)
{
TFT_write_dat(0x0000);
}
} |
Экран должен залиться черным цветом. Если полосы все же останутся, то надо смотреть инит.
|
|
|
|
21.03.2011, 09:15
|
|
Гражданин KAZUS.RU
Регистрация: 01.01.2007
Адрес: Таганрог
Сообщений: 571
Сказал спасибо: 26
Сказали Спасибо 213 раз(а) в 91 сообщении(ях)
|
Re: Инициализация дисплея на базе R61505
Не, не в циклах косяки (я ш не весь дисплей хотел залить), скорее всего гдето в ините слажал. если найду косяк - отпишусь и выложу правильный инит
__________________
То, что нас не убивает - делает нас сильнее
Последний раз редактировалось serb-radio; 21.03.2011 в 09:29.
|
|
|
|
21.03.2011, 09:58
|
|
Гражданин KAZUS.RU
Регистрация: 01.01.2007
Адрес: Таганрог
Сообщений: 571
Сказал спасибо: 26
Сказали Спасибо 213 раз(а) в 91 сообщении(ях)
|
Re: Инициализация дисплея на базе R61505
Сообщение от serb-radio
|
У меня в режиме последовательного интерфейса инициализация такая была
|
А можете, если не сложно прислать и *.h файл с номерами регистров, а то тяжело разобраться
__________________
То, что нас не убивает - делает нас сильнее
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 05:12.
|
|