40 lines
1.2 KiB
C
40 lines
1.2 KiB
C
|
|
// This is the command sequence that rotates the ILI9225 driver coordinate frame
|
|
|
|
rotation = m % 4; // Limit the range of values to 0-3
|
|
|
|
switch (rotation) {
|
|
case 0:
|
|
writecommand(ILI9225_DRIVER_OUTPUT_CTRL);
|
|
writedata(0x01);writedata(0x1C);
|
|
writecommand(ILI9225_ENTRY_MODE);
|
|
writedata(TFT_MAD_COLOR_ORDER);writedata(0x30);
|
|
_width = _init_width;
|
|
_height = _init_height;
|
|
break;
|
|
case 1:
|
|
writecommand(ILI9225_DRIVER_OUTPUT_CTRL);
|
|
writedata(0x00);writedata(0x1C);
|
|
writecommand(ILI9225_ENTRY_MODE);
|
|
writedata(TFT_MAD_COLOR_ORDER);writedata(0x38);
|
|
_width = _init_height;
|
|
_height = _init_width;
|
|
break;
|
|
case 2:
|
|
writecommand(ILI9225_DRIVER_OUTPUT_CTRL);
|
|
writedata(0x02);writedata(0x1C);
|
|
writecommand(ILI9225_ENTRY_MODE);
|
|
writedata(TFT_MAD_COLOR_ORDER);writedata(0x30);
|
|
_width = _init_width;
|
|
_height = _init_height;
|
|
break;
|
|
case 3:
|
|
writecommand(ILI9225_DRIVER_OUTPUT_CTRL);
|
|
writedata(0x03);writedata(0x1C);
|
|
writecommand(ILI9225_ENTRY_MODE);
|
|
writedata(TFT_MAD_COLOR_ORDER);writedata(0x38);
|
|
_width = _init_height;
|
|
_height = _init_width;
|
|
break;
|
|
}
|