LCD LCD nhúng không được hiệu chỉnh


7

Tôi đã gắn một màn hình LCD mới vào thiết bị Linux nhúng của mình và khi tôi chạy hệ thống, tôi thấy rằng nó bị dịch chuyển sang phải. (màn hình bắt đầu từ giữa màn hình LCD)

Tôi tìm thấy 2 trình điều khiển bộ đệm khung trong trình điều khiển nhân Linux và sửa đổi trong các lĩnh vực sau:

#ifdef CONFIG_TOPPOLY_TD035TTEA3_320X240
        hsync_len   :  64, 
        vsync_len    :  6,
        left_margin :  125, 
        upper_margin :  70,
        right_margin:  115,  
        lower_margin :  36,
        sync:        0,        
        cmap_static:    0,        
#endif

Nhưng vấn đề vẫn còn đó. Tôi nên làm gì?

Câu trả lời:


1

Trước khi bạn mã hóa các giá trị vào kernel, hãy kiểm tra chúng một cách tương tác bằng cách sử dụng fbset. Bạn có thể đặt các tham số bảng từ không gian người dùng theo cách này trong sản xuất, nhưng nhiều nhà phát triển cần bật màn hình sớm khi khởi động.

Để sớm thiết lập các giá trị tốt đã biết này, bạn có thể đặt chúng vào kernel. Nếu các giá trị bạn đặt trong kernel dường như không có hiệu lực, bạn có thể không sửa đổi mô tả bộ đệm khung chính xác cho thiết bị của mình. Tôi thường giới thiệu một lỗi cú pháp trong mã và kiểm tra xem nó có bị biên dịch không - nếu trình biên dịch bỏ qua lỗi của tôi, tôi biết khối mã bị vô hiệu hóa bởi cấu hình.

Nếu bạn không thể tìm thấy các cài đặt hoạt động, hãy xem biểu dữ liệu cho bảng điều khiển và cho bộ điều khiển LCD trong chip của bạn để đảm bảo hai cài đặt có thời gian tương thích.

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.