Inhaltsverzeichnis
1  polarity inversion
2  The method of showing layer (qcom)
3 popup menu jitter(抖动; 颤动)
4  overlay process
5  Ghost Shadow
6  DTYPE_DCS_WRITE (long, short)
Heim Datenbank MySQL-Tutorial lcd debug notes 2(qcom and orise)

lcd debug notes 2(qcom and orise)

Jun 07, 2016 pm 03:08 PM
and debug lcd notes

1 polarity inversion 面板极性变换方式 可使用的common电极驱动方式 Frame inversion 固定与变动 Row inversion 固定与变动 Column inversion 只能使用固定的common电极电压 Dot inversion 只能使用固定的common电极电压 面板极性变换方式 Flicker的现象 Cr

1  polarity inversion

面板极性变换方式  可使用的common电极驱动方式 
Frame inversion  固定与变动 
Row inversion  固定与变动 
Column inversion  只能使用固定的common电极电压 
Dot inversion  只能使用固定的common电极电压


面板极性变换方式  Flicker的现象  Crosstalk(串扰; 串音)的现象 
Frame inversion    明显                   垂直与水平方向都易发生 
Row inversion        不明显               水平方向容易发生 
Columninversion  不明显                垂直方向容易发生 
Dot inversion         几乎没有            不易发生 


Current Orise IC is supported for Column Inversion and Dot Inversion (0xC0B4h Panel Driving Mode)


2  The method of showing layer (qcom)

2.1 Insert the following patch

diff --git a/libhwcomposer/hwc.cpp b/libhwcomposer/hwc.cpp
index ae7bb95..3f1a657 100644
--- a/libhwcomposer/hwc.cpp
+++ b/libhwcomposer/hwc.cpp
@@ -331,11 +331,121 @@ static int hwc_query(struct hwc_composer_device_1* dev,
 
 }
 
+inline void getHalPixelFormatStr(int format, char pixelformatstr[])
+{
+    if (!pixelformatstr)
+        return;
+
+    switch(format) {
+        case HAL_PIXEL_FORMAT_RGBA_8888:
+            strcpy(pixelformatstr, "RGBA_8888");
+            break;
+        case HAL_PIXEL_FORMAT_RGBX_8888:
+            strcpy(pixelformatstr, "RGBX_8888");
+            break;
+        case HAL_PIXEL_FORMAT_RGB_888:
+            strcpy(pixelformatstr, "RGB_888");
+            break;
+        case HAL_PIXEL_FORMAT_RGB_565:
+            strcpy(pixelformatstr, "RGB_565");
+            break;
+        case HAL_PIXEL_FORMAT_BGRA_8888:
+            strcpy(pixelformatstr, "BGRA_8888");
+            break;
+        case HAL_PIXEL_FORMAT_RGBA_5551:
+            strcpy(pixelformatstr, "RGBA_5551");
+            break;
+        case HAL_PIXEL_FORMAT_RGBA_4444:
+            strcpy(pixelformatstr, "RGBA_4444");
+            break;
+        case HAL_PIXEL_FORMAT_YV12:
+            strcpy(pixelformatstr, "YV12");
+            break;
+        case HAL_PIXEL_FORMAT_YCbCr_422_SP:
+            strcpy(pixelformatstr, "YCbCr_422_SP_NV16");
+            break;
+        case HAL_PIXEL_FORMAT_YCrCb_420_SP:
+            strcpy(pixelformatstr, "YCrCb_420_SP_NV21");
+            break;
+        case HAL_PIXEL_FORMAT_YCbCr_422_I:
+            strcpy(pixelformatstr, "YCbCr_422_I_YUY2");
+            break;
+        case HAL_PIXEL_FORMAT_NV12_ENCODEABLE:
+            strcpy(pixelformatstr, "NV12_ENCODEABLE");
+            break;
+        case HAL_PIXEL_FORMAT_YCbCr_420_SP_TILED:
+            strcpy(pixelformatstr, "YCbCr_420_SP_TILED_TILE_4x2");
+            break;
+        case HAL_PIXEL_FORMAT_YCbCr_420_SP:
+            strcpy(pixelformatstr, "YCbCr_420_SP");
+            break;
+        case HAL_PIXEL_FORMAT_YCrCb_420_SP_ADRENO:
+            strcpy(pixelformatstr, "YCrCb_420_SP_ADRENO");
+            break;
+        case HAL_PIXEL_FORMAT_YCrCb_422_SP:
+            strcpy(pixelformatstr, "YCrCb_422_SP");
+            break;
+        case HAL_PIXEL_FORMAT_R_8:
+            strcpy(pixelformatstr, "R_8");
+            break;
+        case HAL_PIXEL_FORMAT_RG_88:
+            strcpy(pixelformatstr, "RG_88");
+            break;
+        case HAL_PIXEL_FORMAT_INTERLACE:
+            strcpy(pixelformatstr, "INTERLACE");
+            break;
+        default:
+            sprintf(pixelformatstr, "Unknown0x%X", format);
+            break;
+    }
+}
+
+void dump_layers(int layercount, size_t layerIndex, hwc_layer_1_t hwLayers[])
+{
+    hwc_layer_1_t *layer = &hwLayers[layerIndex];
+    hwc_rect_t sourceCrop = layer->sourceCrop;
+    hwc_rect_t displayFrame = layer->displayFrame;
+    private_handle_t *hnd = (private_handle_t *)layer->handle;
+    char *layer_format=new char[50];
+    getHalPixelFormatStr(hnd->format,layer_format);
+    int composition_type =layer->compositionType;
+    char sfdumpfile_name[256];
+
+    sprintf(sfdumpfile_name, "/data/layerdump/dump%03d_layer%d_%dx%d_%s_comp%d.raw",
+               layercount, layerIndex, hnd->width, hnd->height,
+               layer_format,composition_type);
+    FILE* fp = fopen(sfdumpfile_name, "w+");
+    if (fp != NULL) {
+        fwrite((void*)hnd->base, hnd->size, 1, fp);
+        fclose(fp);
+    }
+    
+}
+
 static int hwc_set_primary(hwc_context_t *ctx, hwc_display_contents_1_t* list) {
     ATRACE_CALL();
     int ret = 0;
     const int dpy = HWC_DISPLAY_PRIMARY;
     if (LIKELY(list) && ctx->dpyAttr[dpy].isActive) {
+
+    char property_fb[PROPERTY_VALUE_MAX];
+    static int layer_count =0;
+    int count_limit=0;
+    if (property_get("debug.sf.dump", property_fb, NULL) > 0) {
+       if(atoi(property_fb) > 0) {
+               count_limit=atoi(property_fb) ;
+               if (0 == mkdir("/data/layerdump", 0777))
+                       layer_count=0;
+               if(layer_count<count_limit for int i="0;i<list-">numHwLayers;i++)
+                               dump_layers(layer_count, i, list->hwLayers);
+                       layer_count ++ ;
+               }
+       }
+    }
+
+
+
         uint32_t last = list->numHwLayers - 1;
         hwc_layer_1_t *fbLayer = &list->hwLayers[last];
         int fd = -1; //FenceFD from the Copybit(valid in async mode)
</count_limit>
Nach dem Login kopieren

2.2 Issue the following command

# setprop debug.sf.dump 100
Nach dem Login kopieren

The dump data is in /data/layerdump folder.


2.3 Issue the following command

# adb pull <remote> <local></local></remote>
Nach dem Login kopieren

2.4 Download the tool: Irfanview and PlugIns

The newest version of Irfanview is 4.36


2.5 Open the corresponding files, such as *.raw

Please notes that the pixels need to be matched to oringinal size. Then the pictures can be shown, as follows:


dump035_layer0_544x960_RGBX_8888_comp1.raw // layer0 means layer 0; RGBX  X means no alpha

dump034_layer1_544x960_RGBA_8888_comp1.raw

dump035_layer2_416x608_RGBA_8888_comp1.raw // layer2 means layer 2; comp1 means mdpcomp

dump033_layer3_544x960_RGBA_8888_comp1.raw

dump035_layer4_544x960_RGBA_8888_comp3.raw // layer4 means layer 4; comp3 means fb_target


According to the methods in div 2, we can capture all layers from hwc.cpp. The root cause is related to the progress of animation. Because of the animation, the actual size of popup menu is variable and the alpha value isn't 0xff until the animation is shown completely. But mdp RGB pipe can't handle this scenario smoothly which causes the edge of popup menu jitter. So if this scenario appears, mdp composition should be disabled.


The animation can be disabled via the following steps:

Settings -> Developer options -> 

Window animation scale  (off, .5x, 1x, 2x, 5x, 10x)

Transition animation scale

Animator duration scale


So the animation progress can be adjusted if you need to do this. Meanwhile we can disable hw overlay via the option of Disable HW overlays.


4  overlay process

4.1 mdp4_overlay_set (key point)
a. Get pipe from request (struct mdp_overlay ), choose corresponding pipe type;
Where the function checks if the request is valid or not, such as width, height, downscale ratio(1/8), upscale ratio(20(mdp version > 4.1, otherwise 8)) and so on.
b. Return pipe index;
c. Calc mdp clock for current frame and bandwidth;
d. Done.

5  Ghost Shadow

This issue is caused by VCOM. For orise 9605, we can adjust 0xD900h(VCOMDC: VCOM voltage setting, 0x39:-1)

影像残留主要是PANEL Pixel上的正负电压值不对称,解决方案是调整VCOM(寄存器D900)。如果改Panel的翻转方式,也可以改善。如果LCM上有GVDD、NGVDD的测试点,可以量一下这两个点的电压,理论上这两个电压值是一致的!

If we adjust the mode of inversion to dot inversion, the power will increase about 10mA, althrough this way  can fix this issue too. I don't think it is a good method.


6  DTYPE_DCS_WRITE (long, short)

#define DTYPE_DCS_LWRITE	0x39	/* long write */
#define DTYPE_DCS_WRITE		0x05	/* short write, 0 parameter */
#define DTYPE_DCS_WRITE1	0x15	/* short write, 1 parameter */
#define DTYPE_DCS_READ		0x06	/* read */
Nach dem Login kopieren

With regard to opening lcd or closing lcd(sleep out/in),  it is proper to use DTYPE_DCS_WRITE. If the commands have one parameter, it is proper to use DTYPE_DCS_WRITE1. If the commands have more than one parameter, it is proper to use DTYPE_DCS_LWRITE.


Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Welche Bildschirme sind LTPs und LCD? Welche Bildschirme sind LTPs und LCD? Sep 01, 2022 pm 04:14 PM

LTPs sind Niedertemperatur-Polysilizium-Bildschirme und LCDs sind ein Zweig der Polysilizium-Technologie. Sie bestehen hauptsächlich aus Leuchtstoffröhren, Lichtleiterplatten und Filtern Es besteht aus Materialien wie Platten, Glassubstraten, Trägerfolien und Flüssigkristallen. Die Anzeige erfolgt durch die Steuerung der Hintergrundbeleuchtung durch Flüssigkristallmoleküle. Es besteht hauptsächlich aus einem LCD-Panel und einem Hintergrundbeleuchtungsmodul und Platine.

So lösen Sie das Problem des ungültigen Debuggens beim Festlegen von Haltepunkten im SpringBoot-Projekt So lösen Sie das Problem des ungültigen Debuggens beim Festlegen von Haltepunkten im SpringBoot-Projekt May 11, 2023 am 10:49 AM

Ich bin neu im Springboot-Projekt. (1) Ich fand das Breakpoint-Debugging sehr deprimiert und suchte online nach Lösungen. Alles, was ich sah, waren einige sehr komplizierte Lösungen, die angeblich Remote-Debugging waren, aber auch zusätzliche Eröffnungsslogans erforderten. Das unterscheidet sich von einem herkömmlichen Projekt, daher halte ich es nicht für notwendig. Nach einiger Erkundung habe ich herausgefunden, dass es einen einfacheren Weg gibt. Die Schritte sind wie folgt: Fügen Sie eine Konfiguration im Plugin-Teil der POM-Datei hinzu: false und es wird in Ordnung sein (2) Bezüglich des im SpringBoot-Projekt gemeldeten Fehlers dass die Datei „web.xml“ fehlt, da für herkömmliche Webprojekte web.xml-Dateien erforderlich sind, für SpringBoot-Projekte jedoch keine web.xml-Dateien.

Es ist bereits das Jahr 2024. Warum gibt es immer noch Benutzer, die von LCD-Bildschirmen besessen sind? Der Grund dafür wird enthüllt Es ist bereits das Jahr 2024. Warum gibt es immer noch Benutzer, die von LCD-Bildschirmen besessen sind? Der Grund dafür wird enthüllt Jul 24, 2024 pm 08:17 PM

Die Iteration der Bildschirmtechnologie ist für Mobiltelefonhersteller der Kernweg zum „Ausrollen“. Der aktuelle OLED-Bildschirm hat ein sehr gutes Niveau in Bezug auf Helligkeit, Stromverbrauch, Farbe und Augenschutz erreicht. Doch auch wenn die OLED-Technologie immer ausgereifter wird, entscheiden sich immer noch viele Benutzer für Mobiltelefone, die mit LCD-Bildschirmen ausgestattet sind. Der Grund dafür ist möglicherweise größtenteils auf die einzigartigen Vorteile von LCD-Bildschirmen beim Augenschutz zurückzuführen. Warum ist LCD augenfreundlicher? Um anschaulich zu erklären, warum viele „LCD“-Menschen beim Anblick von OLED-Bildschirmen wunde Augen haben und Tränen vergießen, müssen wir kurz auf das Prinzip der Bildschirmdarstellung eingehen. Wir können das auf dem Bildschirm angezeigte Bild einfach als ein aus unzähligen Pixeln zusammengesetztes Muster verstehen

LCD ist endlich vorbei: Die weltweiten Auslieferungen von OLED-Panels für Mobiltelefone übertrafen zum ersten Mal die von LCD! LCD ist endlich vorbei: Die weltweiten Auslieferungen von OLED-Panels für Mobiltelefone übertrafen zum ersten Mal die von LCD! Jun 27, 2024 pm 06:46 PM

Laut Nachrichten vom 27. Juni und dem neuesten Bericht der Forschungsorganisation Omdia übertrafen im ersten Quartal 2024 die weltweiten Lieferungen von organischen Leuchtdioden (OLED) für Smartphones erstmals die von Flüssigkristallbildschirmen (LCD). Geschichte. Der Bericht zeigt, dass die jährlichen Auslieferungen von Smartphone-Displays im Jahr 2023 1,45 Milliarden Einheiten erreichen werden, was einem Anstieg von 5 % gegenüber dem Vorjahr entspricht. Bis zum ersten Halbjahr 2024 werden die Auslieferungen voraussichtlich 715 Millionen Einheiten erreichen, was einem Anstieg gegenüber dem Vorjahr entspricht von 9 %. Unter anderem stiegen die Auslieferungen von AMOLED-Bildschirmen (Active Matrix Organic Light Emitting Diode) im ersten Quartal 2024 auf 182 Millionen Einheiten, was einem Anstieg von 39 % gegenüber dem Vorjahr entspricht. Im Gegensatz dazu stiegen die Auslieferungen von Dünnschichttransistor-Flüssigkristallanzeigen (TFTLCD). Die Lieferungen gingen auf 1,72 Milliarden Stück zurück, 10 % weniger als im Vorjahr. Om

Das exponierte iQOO-Flaggschiff-Tablet namens Pad2 Pro mit 13-Zoll-Bildschirm erscheint bald Das exponierte iQOO-Flaggschiff-Tablet namens Pad2 Pro mit 13-Zoll-Bildschirm erscheint bald Apr 03, 2024 am 08:31 AM

Kürzlich hat ein Tablet-Computer „iPA2475“ von vivo die 3C-Qualitätszertifizierung des Landes erfolgreich bestanden und wird voraussichtlich den Namen iQOO Pad2 tragen. Doch in der jüngsten Enthüllungsrunde scheint die Situation eine neue Wendung genommen zu haben. Am 2. April bemerkte CNMO, dass ein digitaler Blogger enthüllte, dass das Flaggschiff-Tablet von iQOO Pad2 Pro und nicht das ursprüngliche iQOO Pad2 heißen wird. Der Blogger verriet außerdem, dass das iQOO Pad 2 Pro bald erscheinen wird. Basierend auf der Analyse des Bloggers wird das iQOO Pad2 Pro mit dem leistungsstarken Dimensity 9300-Prozessor ausgestattet sein, um Benutzern ein hervorragendes Leistungserlebnis zu bieten. Gleichzeitig wird es auch mit einer 3,1K-Auflösung, einer Bildwiederholfrequenz von 144 Hz und einem 13-Zoll-LCD-Großbildschirm ausgestattet sein, unabhängig davon, ob Sie zuschauen

Hochleistungs-LCD-Handy wird zum letzten Song! Die Hersteller entscheiden sich gemeinsam für OLED Hochleistungs-LCD-Handy wird zum letzten Song! Die Hersteller entscheiden sich gemeinsam für OLED Feb 07, 2024 pm 01:06 PM

Laut Nachrichten vom 6. Februar gab der Blogger Digital Chat Station bekannt, dass die nächsten Mobiltelefone der Snapdragon 8-Serie und der Snapdragon 7-Serie über OLED-Bildschirme verfügen werden und die LCD-Bildschirmmodelle mit der Plattform der Snapdragon 6-Serie ausgestattet sein werden Telefone jetzt nichts. Letztes Jahr haben sowohl iQOO als auch Redmi leistungsstarke Mobiltelefone mit LCD-Bildschirm auf den Markt gebracht, nämlich iQOO Z8 bzw. Redmi Note 12T Pro. Die neuesten Nachrichten zeigen, dass iQOO Z9 keinen LCD-Bildschirm mehr verwendet, sondern auf einen 1,5-KOLED-Bildschirm umgestiegen ist. Wie wir alle wissen, liegt der Hauptgrund, warum LCD-Benutzer LCD lieben, darin, dass der LCD-Bildschirm ein globales Gleichstrom-Dimmschema verwendet, das kein Flimmern verursacht und für die Langzeitbetrachtung vergleichsweise komfortabler ist. Doch nach Jahren der iterativen Entwicklung hat OLED nun seine eigenen Mängel überwunden

Was ist besser, LCD- oder OLED-Bildschirm? „Ausführliche Einführung: LCD- und OLED-Kaufberatung' Was ist besser, LCD- oder OLED-Bildschirm? „Ausführliche Einführung: LCD- und OLED-Kaufberatung' Feb 07, 2024 pm 05:36 PM

Im Smartphone-Markt dominierten in den vergangenen Jahren LCD-Displays den Markt. Das liegt möglicherweise daran, dass LCD-Panels günstiger und einfacher zu bedienen sind. Mit dem Streben der Hersteller nach Innovation und der Weiterentwicklung der Technologie stellen die Kosten für AMOLED-Panels für die Hersteller jedoch kein Problem mehr dar. Denn auch wenn die Kosten höher sind, können AMOLED-Panels den Herstellern dennoch einen weiteren Mehrwert bringen. In einem Umfragebericht aus dem Jahr 2019 wurde erwähnt, dass die weltweiten Lieferungen großer LCD-Panels von 2020 bis 2024 mit einer negativen durchschnittlichen jährlichen Wachstumsrate von 0,8 % zurückgehen könnten. Dieser Rückgang ist auf die gesättigte Nachfrage nach Monitoren, Tablets, Laptops und Monitoren ab 9 Zoll zurückzuführen. Bis 2024 werden die Auslieferungen von kleinen und mittelgroßen LCD-Panels 1 erreichen

Das Verschwinden von LCD-Mobiltelefonen hängt ausschließlich vom Erfolg von OLED ab Das Verschwinden von LCD-Mobiltelefonen hängt ausschließlich vom Erfolg von OLED ab May 30, 2024 am 10:26 AM

Erinnern Sie sich an das neue iPad Pro, das vor ein paar Tagen veröffentlicht wurde? Eines der größten Upgrades ist der Wechsel vom LCD-Panel (MiniLED-Hintergrundbeleuchtung) zu OLED. Erst heute hat Xiao Lei auch eine Neuigkeit gesehen, nämlich die Nachrichtenagentur Yonhap, dass LG Display den Verkauf seiner letzten LCD-Panel-Fabrik beschleunigt: die Ankündigung einer vollständigen Umstellung auf OLED. Als Display-Technologie der dritten Generation hat der Trend, dass OLED LCD ersetzt, tatsächlich schon vor langer Zeit begonnen. Einige Leute haben behauptet, dass OLED LCD ersetzen und zum absoluten Mainstream werden wird. Am besten spiegelt sich jedoch die Vergänglichkeit der LCD- und OLED-Technologie auf der ganzen Welt wider, wenn wir auf die Mobiltelefone zurückblicken, die wir am häufigsten verwenden. Ab 2017 waren die Flaggschiff-Telefone des iPhoneX schnell serienmäßig mit OLED-Bildschirmen ausgestattet.

See all articles