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

 
 
> stmf100rb+дисплей lph9135 рисование примитивов
koteika
сообщение Aug 17 2014, 05:02
Сообщение #1





Группа: Новичок
Сообщений: 1
Регистрация: 20-07-14
Пользователь №: 82 290



Всем привет. Подключил я дисплей lph9135 к стм32 по spi. Контроллер дисплея lds183..

Инициализация прошла успешно, появился мусор. Далее закрасил экран цветом, здесь все нормально.

Решил нарисовать линию, линия это же набор пикселей определенного цвета. Вот тут и проблема, не рисуются они...

Код
//инициализация
void LCD_init(void)
{
   CS_Low;
   RESET_Hi;
   RESET_Low;
   RESET_Hi;
   delay_ms(10);
   LCD_CMD(0x01);
   LCD_CMD(0x11);
   LCD_CMD(0x03);
   delay_ms(10);
   LCD_CMD(0x29);
   LCD_CMD(0x13);
   LCD_CMD(0x21);
   LCD_CMD(0x21);
   LCD_CMD(0xba);
   LCD_CMD(0x36);
   LCD_DATA(0x00);
   LCD_CMD(0x3a); //Установка цветовой палитры
   #ifdef _8_BIT_COLOR
   LCD_DATA(0x02); //Байт на пиксель 256 цветов
   #else
   LCD_DATA(0x05); //Два байта на пиксель 65536 цветов
   #endif
   LCD_CMD(0x2a);
   LCD_DATA(0x00);
   LCD_DATA(0x7f);
   LCD_CMD(0xb4);
   LCD_DATA(0x03);
   LCD_DATA(0x08);
   LCD_DATA(0x0b);
   LCD_DATA(0x0e);
   LCD_CMD(0xba);
   LCD_DATA(0x07);
   LCD_DATA(0x0d);
   LCD_CMD(0x2b);
   LCD_DATA(0x00);
   LCD_DATA(0x7f);
}

//выделяем область на экране
void SetArea(uint8_t x1, uint8_t x2, uint8_t y1, uint8_t y2)
{
    LCD_CMD(0x2a);
    LCD_DATA(x1);
    LCD_DATA(x2);
    LCD_CMD(0x2b);
    LCD_DATA(y1);
    LCD_DATA(y2);
    LCD_CMD(0x2c);
}

//заливаем ее цветом
void screen(uint16_t color, uint8_t x_1, uint8_t x_2, uint8_t y_1, uint8_t y_2)
{
    uint8_t x;
    SetArea(x_1,x_2,y_1,y_2);
    RS_Hi;
    for (x = 0; x < 16384; x++)
    {
        LCD_DATA(color);
    }
}

//рисуем пиксель
void pixel(uint32_t color, uint8_t x, uint8_t y)
{
    SetArea(x,x,y,y);
    RS_Hi;
    LCD_DATA(color);
}

//рисуем линию
void line(void)
{
    uint8_t i=0;
    while (i < 50)
    {
        pixel(0xffa6,i,1);
        i++;
        delay_ms(10);
    }
}
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 26th August 2025 - 09:18
Рейтинг@Mail.ru


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