Vietnamese (machine translation)

Lưu ý

Mục đích của file này là để độc giả tiếng Việt có thể đọc và hiểu tài liệu nhân kernel dễ dàng hơn, không phải để tạo ra một nhánh tài liệu riêng. Nếu bạn có bất kỳ nhận xét hoặc cập nhật nào cho file này, vui lòng thử cập nhật file tiếng Anh gốc trước. Nếu bạn thấy có sự khác biệt giữa bản dịch và bản gốc, hoặc có vấn đề về bản dịch, vui lòng gửi góp ý hoặc patch cho người dịch của file này, hoặc nhờ người bảo trì và người review tài liệu tiếng Việt giúp đỡ.

Bản gốc:

GPIO_V2_LINE_EVENT_READ

Người dịch:

Google Translate (machine translation)

Phiên bản gốc:

8541d8f725c6

Cảnh báo

Tài liệu này được dịch tự động bằng máy và chưa được review bởi người dịch. Nội dung có thể không chính xác hoặc khó hiểu ở một số chỗ. Khi có sự khác biệt với bản gốc, bản gốc luôn là chuẩn. Bản dịch chất lượng cao (được review) được đặt trong thư mục vi_VN/.

GPIO_V2_LINE_EVENT_READ

Tên

GPIO_V2_LINE_EVENT_READ - Đọc các sự kiện phát hiện cạnh cho các dòng từ một yêu cầu.

Tóm tắt

ZZ0000ZZ

Đối số

ZZ0001ZZ

Bộ mô tả tập tin của thiết bị ký tự GPIO, như được trả về trong ZZ0000ZZ bởi GPIO_V2_GET_LINE_IOCTL.

ZZ0001ZZ

Bộ đệm chứa ZZ0000ZZ.

ZZ0001ZZ

Số byte có sẵn trong ZZ0002ZZ, phải ở mức ít nhất là kích thước của một chiếc ZZ0000ZZ.

Sự miêu tả

Đọc các sự kiện phát hiện cạnh cho các dòng từ một yêu cầu.

Tính năng phát hiện cạnh phải được bật cho dòng đầu vào bằng cách sử dụng một trong hai ZZ0000ZZ hoặc ZZ0001ZZ, hoặc cả hai. Các sự kiện biên sau đó được tạo ra bất cứ khi nào phát hiện thấy các ngắt biên trên dòng đầu vào.

Các cạnh được xác định theo các thay đổi đối với giá trị dòng logic, do đó, một cạnh không hoạt động sang quá trình chuyển đổi tích cực là một lợi thế đang gia tăng. Nếu ZZ0000ZZ là được đặt thì cực logic ngược lại với cực vật lý và ZZ0001ZZ khi đó tương ứng với một cạnh vật lý rơi xuống.

Hạt nhân ghi lại và đánh dấu thời gian các sự kiện cạnh càng gần với sự kiện của chúng càng tốt. xảy ra và lưu trữ chúng trong bộ đệm để từ đó chúng có thể được đọc bởi không gian người dùng một cách thuận tiện bằng cách sử dụng ZZ0000ZZ.

Các sự kiện được đọc từ bộ đệm luôn có cùng thứ tự như trước đây được phát hiện bởi kernel, kể cả khi nhiều dòng đang được giám sát bởi một yêu cầu.

Kích thước của bộ đệm sự kiện kernel được cố định tại thời điểm yêu cầu dòng sáng tạo và có thể bị ảnh hưởng bởi ZZ0000ZZ. Kích thước mặc định là 16 lần số dòng được yêu cầu.

Bộ đệm có thể bị tràn nếu các sự kiện xảy ra nhanh hơn tốc độ chúng được đọc theo không gian người dùng. Nếu xảy ra tràn thì sự kiện được lưu vào bộ đệm cũ nhất là bị loại bỏ. Tràn có thể được phát hiện từ không gian người dùng bằng cách theo dõi sự kiện số thứ tự.

Để giảm thiểu số lượng lệnh gọi cần thiết để sao chép các sự kiện từ kernel sang không gian người dùng, ZZ0001ZZ hỗ trợ sao chép nhiều sự kiện. Số sự kiện được sao chép là số thấp hơn trong số có sẵn trong bộ đệm kernel và số sẽ vừa với bộ đệm không gian người dùng (ZZ0000ZZ).

Thay đổi cờ phát hiện cạnh bằng GPIO_V2_LINE_SET_CONFIG_IOCTL không xóa hoặc sửa đổi các sự kiện đã có trong sự kiện kernel bộ đệm.

ZZ0001ZZ sẽ chặn nếu không có sự kiện nào và ZZ0000ZZ thì không đã được đặt ZZ0002ZZ.

Có thể kiểm tra sự hiện diện của một sự kiện bằng cách kiểm tra xem ZZ0000ZZ có có thể đọc được bằng ZZ0001ZZ hoặc tương đương.

Giá trị trả về

Khi thành công, số byte được đọc sẽ là bội số của kích thước của một Sự kiện ZZ0000ZZ.

Về lỗi -1 và biến ZZ0000ZZ được đặt phù hợp. Các mã lỗi phổ biến được mô tả trong Mã lỗi GPIO.