TW8836字型OSD 第一節LUT

2021-08-16 22:36:34 字數 3132 閱讀 7982

特徵:

框圖:

1、lut(查詢表,調色盤)

tw8836 font lut有16位64**,16位顏色有5位msb紅色值、6位msb綠色值和5位msb藍色值組成。1bpp字使用第乙個16位lut區域,它是固定的,使用者不能更改1bpp的起始位置。但是,2/3/4bpp font可以將起始lut位置分配給4個邊界(使用r308[3:0]),它也可以使用前16個lut區域。

前16個lut具有預設的rgb值,並且這些預設的16個lut值在16,32,48位置被複製。

從0到31的lut具有9個等級(0-8)的alpha混合效果,8個fosd 視窗可以分配不同的alpha混合值。

1.1、預設顏色值

tw8836有乙個預設顏色值。

表1.1預設調色盤顏色值

注1:不準確的值,需要更新

注2:tw8836使用新的顏色順序,它與tw8832不同

注3:如果使用者覆蓋它,tw8835將無法恢復預設調色盤顏色值

使用者可以替換預設的顏色值,使用一下功能更改調色盤的顏色值

#define page3_fosd  3

void fontosdsetpalettecolor(int8u index ,int16u color)

writetw88page(page3_fosd);

writetw88(0x0c,index | ((readtw88(0x0c)&0xc0)));    //寫index索引值

writetw88(0x0d,(int8u)(color>>8));

writetw88(0x0e,(int8u)color);

1.2、選擇調色盤索引

1bpp字型的前景/背景可以使用位於調色盤0-15上的16中顏色之一進行索引,因此,1bpp字型使用16中顏色組。

2/3/4bpp字型使用4/8/16色,可以在調色盤表上重新對映。

1.2.1/1bpp對映

1bpp字型只有兩個值,乙個用於前景色,另乙個用於背景色。在調色盤中黑色的真實含義是值0,白色是值1,為了清除器件,本文件使用黑色作為背景,白色作為前景。

使用者可以分配前16個lut顏色的背景和前景的索引值。r308用於字型屬性,高半位元組用於背景索引值(值0b),d低半位元組用於前景色(值1b)。

1.2.2、多bpp

tw8836不僅支援1bpp(bitperpixel),還支援2/3/4bpp字型。2bpp使用4中顏色,3bpp使用8中顏色,4bpp使用16中顏色。2/3/4bpp調色盤分組為4/8/16中顏色,tw8836可以在具有63個索引的調色盤中分配該顏色組的開始。

如果firmware(fw)具有2bpp字型並且將組顏色索引的開始分配為56並且調色盤56具有白色值,則調色盤57具有紅色值,調板58具有綠色並且調色盤59具有藍色,字型影象在以下例項中,led面板上顯示的內容將更改為右邊的內容。

要使用多bpp字型,tw8836必須分配multi_bpp索引的開始。

例如,如果fw的字型設定為96個1bpp字型,10個3bpp字型,2個4bpp字型,則暫存器值為r305[3:1]=000b,r305[7:0]=0x60,r393[7:0]=0x60,r394[7:0]=0x7e。

此外,必須為每個視窗啟用multi_bpp啟用標誌才能使用multi_bpp.

當使用者分配osdram資料(osdram位址和屬性)時,根據multi_bpp暫存器的開始,tw8836將屬性資料解析為兩種不同的含義。

如果osdram位址用於multi_bpp,則它將使用低半位元組作為multi_bpp字型的調色盤組索引的開始。

多bpp的r308上的lut偏移值將乘以4用於只是調色盤表上的位置,如果使用者想要索引16-23作為3bpp字型,則r308中的偏移值將為4。

// osdfont.c header

//---------------------------------

void waitvblank(int8u cnt);

void fosdonoff(int8u fonoff, int8u vdelay);

void fosdsetfontwidthheight(int8u width, int8u height );

void fosdsetdevalue(void);

void fosdsetaccessmode(int8u mode);

//---------------------------------

// fontosd palette

//---------------------------------

void fosdsetpalettecolor(int8u index, int16u color, int8u vdelay);

void fosdsetpalettecolorarray(int8u index, int16u *array, int8u size, int8u vdelay);

void fosdsetdefpalettecolor(int8u mode);

void fosdinitbpp3alphatable(int8u fcalculate);

void fosddefaultlut( void );

void fosddumppalette(int8u winno);

TW8836字型OSD 第二節FontRAM

2.1 字型索引值 2.3 多bpp影象 為了支援multi bpp字型,tw8836具有多bpp開始暫存器 start of multi bpp registers 2bpp r305 1 1 r30b 7 0 3bpp r305 2 2 r393 7 0 4bpp r305 3 3 r394 7...

05 字型標籤

粗體粗體creation of webpage creation of webpage creation of webpage creation of webpage creation of webpage creation of webpage creation of webpage creati...

HTML教程 2 字型

超文字中的標籤 剛剛接觸超文字,遇到的最大的障礙就是一些用 和 括起來的句子,我們稱它為標籤,是用來分割和標記文字的元素,以形成文字的布局 文字的格式及五彩繽紛的畫面。單標籤 某些標記稱為 單標籤 因為它只需單獨使用就能完整地表達意思,這類標記的語法是 標籤名稱 最常用的單標籤是 它表示換行。雙標籤...