Вертикальный скролинг для tft дисплея (ili9341) в альбомной ориентации

aleksey_qwert

✩✩✩✩✩✩✩
25 Сен 2022
2
0
Привет, народ пытаюсь написать прогу для вертикальной ориентации дисплея в альбомном расположении дисплея, но увы изображение на дисплее всегда прокручивается только в одном напровлении, в лево и право, но никак ни вверх и низ код патаюсь использовать такой. Может прокрутка по вертикали в альбомном режиме просто невозможна?

C++:
 setupScrollArea(TOP_FIXED_AREA, BOT_FIXED_AREA);
    while (1){
        hardware_scroll(10, 100);
    }
//--------------------
void hardware_scroll(int16_t lines, uint16_t wait) {
  static int16_t yStart = TOP_FIXED_AREA;

  int16_t yDelta = 1;
  if (lines < 0) {
    yDelta = -1;
    lines = -lines;
  }

  while(lines--) {
    yStart += yDelta;
    if (yStart > BOT_FIXED_AREA) yStart -= FIXED_AREA;
    if (yStart < TOP_FIXED_AREA) yStart += FIXED_AREA;
    scrollAddress(yStart);
    __delay_ms(50);
  }
  return;
}

void setupScrollArea(uint16_t tfa, uint16_t bfa) {
    TFT_CS = 0;
    
  
  writeCommand(ILI9341_VSCRDEF);
 
  
  ILI9341_SPI_DATA(tfa >> 8);
  ILI9341_SPI_DATA(tfa);
 
  ILI9341_SPI_DATA((TFT_HEIGHT - tfa - bfa) >> 8);
  ILI9341_SPI_DATA(TFT_HEIGHT - tfa - bfa);
 
  ILI9341_SPI_DATA(bfa >> 8);
  ILI9341_SPI_DATA(bfa);
 
 
  TFT_CS = 1;
  return;
}
 

aleksey_qwert

✩✩✩✩✩✩✩
25 Сен 2022
2
0
Нужно чтобы в альбомной развертке изоброжение смещалось вверх и низ, а не влево и право.