Chính xác thì cáp VGA hoạt động như thế nào?


7

Tôi đã tìm kiếm trên internet và tôi không thể tìm thấy bất cứ điều gì sâu về cách thức hoạt động của cáp / kết nối. Tôi chỉ có thể tìm thấy các mô tả đơn giản.

Nếu ai đó có thể liên kết tôi hoặc chỉ cho tôi đi đúng hướng, tôi sẽ rất biết ơn.


3
Bạn cắm nó vào và các tín hiệu vận chuyển từ đầu này sang đầu kia? Bạn đang nói về các tín hiệu VGA?
Matt Young

Tôi đoán tôi đã không cụ thể. Vâng, tôi đang tìm cách nghiên cứu về các tín hiệu đang được truyền qua cáp. Tôi đang tìm cách bắt đầu một dự án liên quan đến cáp vga từ máy tính đến arduino và hy vọng sẽ hiểu được thành phần VGA trước khi bắt đầu.
Josh Beckwith

1
Và có vẻ như tiêu chuẩn công nghiệp 640x480 có xung nhịp 25,17 MHz và Arduino Do có tốc độ xung nhịp 84 MHz, vì vậy tôi có thể đọc dữ liệu màu đủ nhanh, phải không?
Josh Beckwith

1
Đối với ba kênh bị trộn có lẽ 2 lệnh cường độ quá chậm (100x quá chậm).
Spehro Pefhany

1
@JoshBeckwith Không có khả năng. ADC trên Do có tốc độ tối đa 1000 ksps, chậm hơn đáng kể so với mức cần thiết để lấy mẫu VGA.
duskwuff -inactive-

Câu trả lời:


11

OP đã hỏi làm thế nào cáp VGA hoạt động, vì vậy tôi sẽ bắt đầu với việc nối dây cho cáp tiêu chuẩn, đó là đầu nối 15 chân DE-15 (giống như đầu nối DB-9 được sử dụng cho RS-232, nhưng với một hàng thêm):

nhập mô tả hình ảnh ở đây

Giá đỡ H-SYNC và V-SYNC cho đồng bộ ngang và dọc. Phần còn lại là tự giải thích. H-SYNC và V-SYNC là tín hiệu mức kỹ thuật số (TTL), hoạt động ở mức thấp và tín hiệu màu là tương tự, 0v (đen) đến 0,7v (đủ màu).

Như ngụ ý bởi sự hiện diện của H-SYNC và V-SYNC, có thời gian ngang và thời gian dọc. Sơ đồ này hiển thị thời gian cho VGA 640x480, một trong những định dạng VGA gốc.

nhập mô tả hình ảnh ở đây

Thời gian ngang, được hiển thị ở trên cùng của hình trên, biểu thị một dòng của màn hình (ví dụ: 640 pixel hiển thị của màn hình 640x480). Giữa mỗi dòng dữ liệu pixel, có một vùng trống ngang không hiển thị video (điều này ban đầu được sử dụng chủ yếu trong TV để cho phép dấu vết CRT di chuyển trở lại từ phía bên phải sang bên trái màn hình, sẵn sàng cho lần tiếp theo hàng).

Đồng bộ ngang được sử dụng để bắt đầu thời gian của mỗi dòng. Nó không hoàn toàn rộng như khu vực trống. Ngay trước xung ngang, có một độ trễ gọi là hiên trước. Và chỉ cần theo xung ngang là một độ trễ khác gọi là cổng sau.

Mặc dù 640 pixel được hiển thị, 800 pixel thực sự cần thiết cho mỗi dòng: 96 cho đồng bộ hóa ngang, 48 cho hiên sau, 640 cho video và 16 cho hiên trước.

Như thể hiện trong sơ đồ, mỗi dòng dài 31,77. Lặn điều này bằng 800 pixel cho kết quả 39,7 ns mỗi pixel. Điều này tương ứng với tốc độ xung nhịp 25,1 MHz.

Các dòng được tập hợp thành khung, hiển thị ở dưới cùng của hình ảnh. Giống như thời gian cho mỗi dòng, có một khoảng trống dọc ở đầu mỗi khung hình (điều này ban đầu được sử dụng chủ yếu trong TV để cho phép dấu vết CRT di chuyển trở lại từ dưới cùng của màn hình lên trên cùng, sẵn sàng cho khung hình tiếp theo ). Trên một số TV CRT cũ hơn, có thể "cuộn" hình ảnh xuống và thực sự thấy khoảng này là một thanh màu đen trên màn hình. Giống như thời gian dòng, có một hiên trước và khu vực hiên sau trong thời gian.

Mặc dù 480 dòng được hiển thị, 521 dòng thực sự cần thiết cho mỗi khung: 2 cho đồng bộ dọc, 29 cho hiên sau, 480 cho video đường có thể nhìn thấy và 10 cho hiên trước.

Như thể hiện trong sơ đồ, mỗi khung hình dài 16,784 ms. Điều này tương ứng với tốc độ khung hình 59,5 Hz.


Tôi không hiểu tại sao chúng ta cần hiên trước và hiên sau, ý tôi là chúng ta chỉ có thể gửi tín hiệu đồng bộ ngang sau khi dòng này kết thúc, tín hiệu RGB ... Đồng bộ hóa H, dòng tiếp theo. Tín hiệu RGB ... Đồng bộ hóa H, dòng tiếp theo, v.v.
Kross
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.