نحوه اتصال LVDS TFT-LCD

در این نوشته به یک بررسی اجمالی از نحوه بکارگیری lvds برای cubieboard می پردازم که البته قابل استفاده برای دیگر برد ها از جمله marsboard هم خواهد بود.

استفاده از یک نمایشگرLVDS TFT-LCD برای cubie کار بسیار ساده ای است.

برای این کار شما نیاز است تا دو کار را انجام دهید:

1-اتصال LVDS به Cubieboard.

2-ویرایش script.bin برای نمایشگر LVDS.

در این مثال از CHI-MEI G070Y2-L01 800×480 LED backlight TFT-LCD استفاده شده است.برای دیگر نمایشگرهای lvds ممکن است نیاز به تغییرات دیگری در منبع تغذیه-نحوه قرارگیری پایه ها و مقادیر script.fex نیز باشد.

lcd وسیله ای است که نیاز به توان زیادی برای کار دارد لذا نیاز به منبع تغذیه اضافی داریم:

1-اولی یک منبع 3.3 ولت برای تغذیه برد اصلی LCD.

2-دومی یک منبع 12 ولت برای تغذیه backlight یا همان نور پس زمینه LCD.

توجه داشته باشید که نمیتوانید از 3.3 ولت خود Cubieboard استفاده کنید چرا که lcd در شروع یک آمپر جریان میکشد که cubie قادر به تامین آن نیست.

نحوه اتصالات سخت افزار:

lcd

تنظیمات نرم افزاری :

اکنون مهم است که بفهمیم تا چگونه تراشه a10 را تنظیم کنیم به گونه ای که با خصوصیات نمایشگر انتخابی ما سازگار شود.

اولین مورد تنظیم رزولوشن است که برای lcd انتخابی داریم:(x/y)

[lcd0_para]
lcd_x = 800
lcd_y = 480

سپس نیاز به وارد کردن تنظیمات پیچیده تر زمان بندی خاص lcd هستیم:(استفاده از دیتاشیت lcd )

lcd timing

با نگاه در جدول بالا در قسمت Clock Frequency مشاهده می شود که که یک مقدار مناسب برای lcd_dclk_freq مقداری بین 29.5 تا 33 مگا هرتز است.

پس انتخاب مقدار 30 خوب خواهد بود.

lcd_dclk_freq = 30

lcd_if = 3
lcd_hbp = 200
lcd_ht = 1055
lcd_vbp = 25
lcd_vt = 1050

این هم فایل script.fex:

 

[disp_init]
disp_init_enable = 1
disp_mode = 0
screen0_output_type = 1
screen0_output_mode = 4
screen1_output_type = 1
screen1_output_mode = 4
fb0_framebuffer_num = 2
fb0_format = 10
fb0_pixel_sequence = 0
fb0_scaler_mode_enable = 1
fb1_framebuffer_num = 2
fb1_format = 10
fb1_pixel_sequence = 0
fb1_scaler_mode_enable = 1
lcd0_bright = 197
lcd1_bright = 197
lcd0_screen_bright = 50
lcd0_screen_contrast = 50
lcd0_screen_saturation = 57
lcd0_screen_hue = 50
lcd1_screen_bright = 50
lcd1_screen_contrast = 50
lcd1_screen_saturation = 57
lcd1_screen_hue = 50

[lcd0_para]
lcd_used = 1
lcd_x = 800
lcd_y = 480
lcd_dclk_freq = 30
lcd_pwm_not_used = 0
lcd_pwm_ch = 0
lcd_pwm_freq = 10000
lcd_pwm_pol = 0
lcd_if = 3
lcd_hbp = 200
lcd_ht = 1055
lcd_vbp = 25
lcd_vt = 1050
lcd_hv_if = 0
lcd_hv_smode = 0
lcd_hv_s888_if = 0
lcd_hv_syuv_if = 0
lcd_hv_vspw = 0
lcd_hv_hspw = 0
lcd_lvds_ch = 0
lcd_lvds_mode = 0
lcd_lvds_bitwidth = 0
lcd_lvds_io_cross = 0
lcd_cpu_if = 0
lcd_frm = 0
lcd_io_cfg0 = 268435456
lcd_gamma_correction_en = 0
lcd_gamma_tbl_0 = 0x0
lcd_gamma_tbl_1 = 0x10101
lcd_gamma_tbl_255 = 0xffffff
lcd_bl_en_used = 0
lcd_bl_en = port:PH07<1><0><default><1>
lcd_power_used = 1
lcd_power = port:PH08<1><0><default><1>
lcd_pwm_used = 1
lcd_pwm = port:PB02<2><0><default><default>
lcd_gpio_0 =
lcd_gpio_1 =
lcd_gpio_2 =
lcd_gpio_3 =
lcdd0 = port:PD00<2><0><default><default>
lcdd1 = port:PD01<2><0><default><default>
lcdd2 = port:PD02<2><0><default><default>
lcdd3 = port:PD03<2><0><default><default>
lcdd4 = port:PD04<2><0><default><default>
lcdd5 = port:PD05<2><0><default><default>
lcdd6 = port:PD06<2><0><default><default>
lcdd7 = port:PD07<2><0><default><default>
lcdd8 = port:PD08<2><0><default><default>
lcdd9 = port:PD09<2><0><default><default>
lcdd10 = port:PD10<2><0><default><default>
lcdd11 = port:PD11<2><0><default><default>
lcdd12 = port:PD12<2><0><default><default>
lcdd13 = port:PD13<2><0><default><default>
lcdd14 = port:PD14<2><0><default><default>
lcdd15 = port:PD15<2><0><default><default>
lcdd16 = port:PD16<2><0><default><default>
lcdd17 = port:PD17<2><0><default><default>
lcdd18 = port:PD18<2><0><default><default>
lcdd19 = port:PD19<2><0><default><default>
lcdd20 = port:PD20<2><0><default><default>
lcdd21 = port:PD21<2><0><default><default>
lcdd22 = port:PD22<2><0><default><default>
lcdd23 = port:PD23<2><0><default><default>
lcdclk = port:PH24<2><0><default><default>
lcdde = port:PH25<2><0><default><default>
lcdhsync = port:PH26<2><0><default><default>
lcdvsync = port:PH27<2><0><default><default>

منبع:

http://linux-sunxi.org/Cubieboard/LVDS

دریافت دیتاشیت G070Y2-L01_Datasheet:(این ال سی دی 7 اینچ است)

G070Y2-L01_Datasheet

Bookmark the پیوند یکتا.

9 Responses to نحوه اتصال LVDS TFT-LCD

  1. میثم رحیمی میگوید :

    با عرض سلام و خسته نباشید.
    می خواستم بدانم از این نوع ال سی دی در فروشگاه موجود می باشد؟
    قیمت آن چقدر است؟
    با تشکر.

  2. داریوش عباسی نژاد میگوید :

    سلام.
    خیر.این lcd فعلا در فروشگاه موجود نیست ولی شما میتوانید از lcd هفت اینچ موجود در فروشگاه که جدیدا وارد فروشگاه شده استفاده کنید.
    در این آموزش هدف نحوه راه اندازی lcd بوده است وlcd ذکر شده به عنوان یک نمونه است. شمامیتوانید از lcd های دیگر از جمله lcd لپ تاپ نیزاستفاده کنید.
    ان شا ا… به زودی lcd هفت اینچ موجود در فروشگاه هم تست و راه اندازی میشود.

  3. tabrizfaculty میگوید :

    سلام آقای عباسی نژاد واقعا خسته نباشی برادر
    می خواستم ببینم امکان اتصال چند نوع ال سی دی (منظور در رزولیشن های مختلف)به همراه تاچ خازنی در script.bin تعریف شده است؟ آیا می توان هر رزولوشنی رو وارد برنامه کرد؟
    آیا برای اتصال تاچ مقاومتی یا خازنی پیش فرض هایی وجود دارد؟ با تشکر

  4. داریوش عباسی نژاد میگوید :

    سلام.
    خیلی ممنون.
    با توجه به:
    ;disp init configuration
    ;
    ;disp_mode (0:screen0 1:screen1 2:two_diff_screen_diff_contents
    ; 3:two_same_screen_diff_contets 4:two_diff_screen_same_contents)
    ;screenx_output_type (0:none; 1:lcd; 2:tv; 3:hdmi; 4:vga)
    ;screenx_output_mode (used for tv/hdmi output, 0:480i 1:576i 2:480p 3:576p 4:720p50 5:720p60 6:1080i50 7:1080i60 8:1080p24 9:1080p50 10:1080p60 11:pal 14:ntsc)
    ;screenx_output_mode (used for vga output, 0:1680*1050 1:1440*900 2:1360*768 3:1280*1024 4:1024*768 5:800*600 6:640*480 10:1920*1080 11:1280*720)
    ;fbx format (4:RGB655 5:RGB565 6:RGB556 7:ARGB1555 8:RGBA5551 9:RGB888 10:ARGB8888 12:ARGB4444)
    ;fbx pixel sequence (0:ARGB 1:BGRA 2:ABGR 3:RGBA) — 0 for linux, 2 for android
    ;lcdx_bright (lcd init backlight brightness, value:0~256, default:197)
    ;lcdx_yy (lcd init screen bright/contrast/saturation/hue, value:0~100, default:50/50/57/50)
    می توان تا دو نمایشگر را به طور همزمان با یک تصویر داشت.و برای مثلا برای vga تا رزولوشن 1920*1080 ساپورت میشه البته شایان ذکر است که این موارد هنوز تست قطعی نشده است.
    در مورد تاچ خازنی اطلاعاتی ندارم.ببخشید.
    موفق باشید.

  5. مجتبی میگوید :

    با سلام
    با این برد میشه ال سی دی 32 اینچ هم را اندازی کرد البته با ال وی دی اس ؟

  6. مصطفی میگوید :

    سلام

    اول کار بگم که من تازه کار روی بورد رو شروع کردم و اطلاعات چندانی ندارم
    روی بورد اول کار اندروید بود و با ال سی دی 7 کویر و LVDS تونستم تصویر بگیرم.
    اما وقتی ایمیج لینوکس رو نصب کردم بورد بالا میاد اما هیچ تصویری ندارم ، اول فکر کردم بورد مشکلی داره اما بعد از نصب دوباره اندروید باز تصویر دارم.
    نیاز به تنظیمات خاصی داره تا تصویر فعال بشه ؟

  7. داریوش عباسی نژاد میگوید :

    سلام.
    ایمج برای السیدی 7 در فروم قرار داده شد.
    نسخه های دیگری هم در آینده نزدیک در تاپیک مربوطه قرار داده خواهد شد.

پاسخی بگذارید

نشانی ایمیل شما منتشر نخواهد شد.