Difference between pages "About Mini-Box.com" and "Linux LCD timing handling and interfacing"

From Low cost, low power, android ARM system board by Mini-Box.com - pico WiKi
(Difference between pages)
Jump to navigation Jump to search
m (Protected "About Mini-Box.com" ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite)))
 
(Created page with "==Linux LCD Timing Handling and Interfacing== Linux framebuffer drivers timing information is explained in detail at Documentation/fb/framebuffer.txt under Linux source tree....")
 
Line 1: Line 1:
<div style="display: block; width:70%;">
+
==Linux LCD Timing Handling and Interfacing==
<div style="display: block; float: right; width: 200px; border: 1px solid #ccc; padding: 10px; margin-left: 10px; margin-top: 10px;"><p>Our manufacturing runs are usually cargo sized loads ranging from 5,000 to 50,000 unit runs, with lead times ranging from 4 to 12 weeks, depending on product type. The main warehouse is located in Fremont, CA and we also have an international network of distributors.<br><br>For small to medium orders, you can buy directly from our web site at [https://www.mini-box.com Mini-box.com].<br><br><br><br><br>For larger orders please contact our sales staff or our [https://www.mini-box.com/site/resellers.html international distributors].</p></div>
+
 
<p>[https://www.mini-box.com Mini-box.com], a subsidiary of [http://www.ituner.com Ituner Networks Corp.], is a design and manufacturing company specialized in embedded computers and peripherals. Founded in 1996, [https://www.ituner.com Ituner Networks Corp.] is a privately owned Corporation located in Silicon Valley.<br>Inspired by the unprecedented success of the small form factor mainboards, [https://www.mini-box.com Mini-box.com] has since directed its focus on designing and developing smaller, more compact mini-ITX PC peripherals.</p>
+
Linux framebuffer drivers timing information is explained in detail at Documentation/fb/framebuffer.txt under Linux source tree. We will try to summarize this information here a bit.
<p>Our engineers have led the market in the miniaturization of the power supply, with the introduction of the first mini-itx power supply. Our PSUs plug directly into the ATX connector thus eliminating the need for the ATX extension cable harness.<br><br>These miniaturized power supplies are ideal for small PCs where space utilization is paramount for good industrial designs. Since then, [https://www.mini-box.com Mini-box.com] has led the market by designing, developing and manufacturing a wide range of of Patent Pending, high efficiency plug-in small PC [https://www.mini-box.com/s.nl/sc.8/category.13/.f power supplies] modules with a variety of power outputs, footprints and input voltage ranges.</p>
+
 
<p>[http://www.ituner.com Ituner Networks Corp.] is manufacturing a series of versatile small mini-ITX and small formfactor enclosures. Among them are the M350 Universal mini-ITX enclosure, M300, M200-LCD, M-200 line of [https://www.mini-box.com/s.nl/sc.8/category.87/.fmini-ITX enclosures] and the [https://www.mini-box.com/ALIX WRAP-boxes]. Our enclosures are designed for general purpose computing, WIFI applications, medical, and industrial applications. For automotive applications, the innovating work of our design team has resulted in the award winning [https://www.mini-box.com/Car-PC-Automotive-Computing-Solutions VoomPC series of enclosures and barebone systems].</p>
+
Following diagram shows which timing value from your LCD datasheet corresponds to which framebuffer settings.
  <p>[https://www.mini-box.com Mini-box.com] is also the manufacturer of the [https://www.mini-box.com/picoLCD PicoLCD] - a family of Intelligent USB LCD displays with resolutions ranging alphanumeric to TFT color in QVGA, HQVGA, VGA and beyond.<br>
+
 
  <span style="display: block; border-bottom:1px dotted #DDDDDD; height: 10px;">&nbsp;</span></p>
+
[[File:lcd_datasheet_to_linux.jpg]]
  <p class="footer"><span style="display: block; float: left; width: 190px; margin-left: 10px; border-right: 1px dotted #DDDDDD;"><b>Corporate Address</b><br><br>
+
 
              Ituner Networks Corp<br>
+
LCD datasheets generally mention about back porch, front porch and so on whereas Linux uses notation of margins instead.
              44244 Fremont Blvd.
+
 
Fremont, CA 94538<br><br>
+
===HSYNC and VSYNC Controlled LCD Displays===
</span>
+
 
  <span style="display: block; float: left; width: 290px; padding-left: 10px; padding-right: 10px;"><b>Contact Information</b><br><br>
+
If your LCD uses hsync and vsync then you can easly convert LCD timing values to Linux display driver values using the diagram above.
             Sales: [[File:sales.gif]]<br>
+
 
            Technical Support: [[File:Support.gif]]<br>
+
===DE Controller LCD Displays===
            OEM Inquiries: [[File:Oem.gif]]</span>
+
 
<span style="display: block; float: left; width: 130px; padding-left: 10px; border-left: 1px dotted #DDDDDD;"><b>Telephone</b><br><br>
+
In this type of displays, there are no such signals named hsync, vsync or back/front porch. Instead, they use horizontal/vertical period, valid and blank definitions. In this case you should refer to the timing diagram in LCD datasheet and convert these values to Linux framebuffer definitions by hand. Again you can refer to the above picture for conversion. In general following equations can be used:
U.S. and Intl callers.:<br>1-510-573-0783<br>
+
 
Fax:<br>1-510-573-6981</span></p>
+
xres = horizontal valid
<div style="clear: both;"></div>
+
  left margin = horizontal period - horizontal valid
</div>
+
  right margin = 0
 +
  hsync_len = 0
 +
 
 +
yres = vertical valid
 +
upper margin = vertical period - vertical valid
 +
lower margin = 0
 +
vsync_len = 0
 +
 
 +
You may need to interchange left-right margin and/or lower-upper margin values if your LCD datasheet diagrams shows otherwise.  
 +
 
 +
To calculate pixclock you can use this formula:
 +
  pixclock = KHZ2PICOS(
 +
            (xres + left_margin + right_margin + hsync_len)*
 +
            (yres + upper_margin + lower_margin + vsync_len) *
 +
              refresh / 1000
 +
             )
 +
<br><br>
 +
parts &copy; [http://processors.wiki.ti.com/index.php/LCD_RGB_640x480_VGA_Addition http://processors.wiki.ti.com/index.php/LCD_RGB_640x480_VGA_Addition]

Latest revision as of 08:28, 20 October 2020

Linux LCD Timing Handling and Interfacing

Linux framebuffer drivers timing information is explained in detail at Documentation/fb/framebuffer.txt under Linux source tree. We will try to summarize this information here a bit.

Following diagram shows which timing value from your LCD datasheet corresponds to which framebuffer settings.

Lcd datasheet to linux.jpg

LCD datasheets generally mention about back porch, front porch and so on whereas Linux uses notation of margins instead.

HSYNC and VSYNC Controlled LCD Displays

If your LCD uses hsync and vsync then you can easly convert LCD timing values to Linux display driver values using the diagram above.

DE Controller LCD Displays

In this type of displays, there are no such signals named hsync, vsync or back/front porch. Instead, they use horizontal/vertical period, valid and blank definitions. In this case you should refer to the timing diagram in LCD datasheet and convert these values to Linux framebuffer definitions by hand. Again you can refer to the above picture for conversion. In general following equations can be used:

xres = horizontal valid
left margin = horizontal period - horizontal valid
right margin = 0
hsync_len = 0
yres = vertical valid
upper margin = vertical period - vertical valid
lower margin = 0
vsync_len = 0

You may need to interchange left-right margin and/or lower-upper margin values if your LCD datasheet diagrams shows otherwise.

To calculate pixclock you can use this formula:

pixclock = KHZ2PICOS(
            (xres + left_margin + right_margin + hsync_len)* 
            (yres + upper_margin + lower_margin + vsync_len) *
             refresh / 1000
           )



parts © http://processors.wiki.ti.com/index.php/LCD_RGB_640x480_VGA_Addition