Перейти к содержанию
    

Rostic

Новичок
  • Постов

    4
  • Зарегистрирован

  • Посещение

Весь контент Rostic


  1. uc/USB host + MSC

    Присоединяюсь к вопросу? Гуглю уже несколько дней, ничего доступного так и не нашел. Может у кого есть, поделитесь? (на местном ФТП если и есть то посмотреть не могу...)
  2. Какраз правильная... обратите внимание на то что ето операция обнуления полей (хоть в ней и нет смысла т.к. команда перед ней не выставляет разряды а присваивает сформированное двойное слово). LCD_CTRL &= ~( (1<<7)|(1<<6)|(7<<1));//000 - BPP - use 1 bit per pixel
  3. Сэмитировал работу LCD контроллера портами, дисплей все рисует как положено.. вариант с некорректным подключением или нерабочим дисплеем отпал окончательно. Следовательно все дело в настройках. Может кто настраивал LCD контроллер для SNT-ок? Поделитесь примером если есть :)
  4. LPC2478+STN 4bit проблемма!

    Подключил WO320240A по 4битному интерфейсу. Подключен верно, сигналы смотрели осциллографом. Собственно проблема: После инициализации рисует на экране вертикальные полосы: 1)с включенным grayscaler и 4bpp - независимо от данных в видео памяти. 2)с выключеным grayscaler и 1bpp - рисует с шагом 1 точка через 3. выходит разрешение 80*240.(Притом рисует так что если первый байт в видеопамяти 0xFF появляеться 16 точек с шагом 1 точка через 3!) В чём проблема непонятно... пробовал менять количество бит на писксел с 1bpp на 4bpp с настройкой палитры и включением grayscaler - не помогло. Код инициализаци: //CLKC 72000000 #define STATIC_RAM_BASE 0x80000000 DelayMs(100); PINSEL11 |= 1; //LCD Enable PCONP |= (1<<20); // включаем контроллер LCD PINSEL11 &= ~(7 << 1); //LCDM_4BIT_MONO_STN_SINGLE_PANEL PINSEL4 |= ((3<<0)/*LCDPWR*/ | (3<<2)/*LCDPLE*/ | (3<<4)/*LCDCLK*/ | (3<<6)/*LCDFP*/ | (3<<8)/*LCDM*/ | (3<<10)/*LCDLP*/ |(3<<12)/*LCDVD[0]*/ | (3<<14)/*LCDVD[1]*/ | (3<<16)/*LCDVD[2]*/ | (3<<18)/*LCDVD[3]*/); LCD_CFG = 19;// HCLK div 19+1 = 3.456 MHz ( with PCD = 1+2 = 3 refresh 60hz) LCD_TIMH = ( (0<<24/*HBP*/) | (0<<16/*HFP*/) | (0<<8/*HSW*/) | ((320/16-1)<<2/*PPL*/)); //(320/4)pixles + (0+1)bp + (0+1)fp + (0+1)sw = 83clks per line LCD_TIMV = ( (0<<24/*VBP*/) | (0<<16/*VFP*/) | (0<<10/*VSW*/) | (239 /*240-1*/ <<0 /*LPP*/ ) ); //240lines + 0vp + 0fp + 0bp = 240ln_clks LCD_POL = ( (0<<26) /* Bypass pixel clock div*/ | (((320/4)-1)<<16 /*clocks per line*/ ) | (0<<11 IVS*/ ) | (0<<12 /*IHS*/ ) | (1<<13 /*IPC 1-data load on falling edge*/ ) | (1<<0 /*PCD 1+2 = 3*/ )); LCD_CTRL = ( (0<<6) //LcdMono8 - set 4bit interface | (0<<5) //LcdTft - //0 - set STN use greyScaler | (1<<4)0; //LcdBW - set STN LCD is Monochrome LCD_CTRL &= ~( (1<<7)//0-single panel |(1<<6)//LcdMono8 - 0 - set 4bit interface |(7<<1));//000 - BPP - use 1 bit per pixel LCD_UPBASE = STATIC_RAM_BASE;//0x80000000; LCD_LPBASE = STATIC_RAM_BASE;//0x80000000; LCD_CTRL |= 1; //set LcdEn bit LCD_CTRL |= (1<<11); //set LcdPwr bit
×
×
  • Создать...