cuốn sách gpt4 ai đã làm

Gửi bit bắt đầu và dừng tới bus i2c trong Linux?

In lại Tác giả: Vũ trụ không gian Thời gian cập nhật: 2023-11-04 10:46:02 31 4
mua khóa gpt4 Nike

Tôi đang viết API trình bao bọc trong không gian người dùng để điều khiển bus I2C trong C trên nền tảng Linux nhúng. Tôi có thể sử dụng read()write() phương pháp và ioctl() Được gọi để chọn một thiết bị phụ để đọc và ghi dữ liệu từ cảm biến. Tôi biết rằng việc đọc/ghi nội bộ thực hiện các bước sau:

  • gửibắt đầuChút
  • gửiĐịa chỉ phụ + bit R/Wvà nhận đượcxác nhận
  • Gửi/nhận dữ liệu
  • gửidừng lạiChút

Tôi muốn tạo các hàm riêng biệt để thực hiện những việc sau:

  1. Gửi mộtbắt đầuChút
  2. Gửi mộtdừng lạiChút
  3. viết một byteđến xe buýt I2C. (Không phổ biến cho nô lệ)
  4. từ xe buýt I2CĐọc một byte. (Không phổ biến cho nô lệ)

Có bất kỳ lệnh gọi hàm/API/ioctl linux nào có thể được sử dụng từ ứng dụng người dùng C để đạt được chức năng trên không..?

câu trả lời hay nhất

Tại sao điều này lại cần thiết? Sẽ rất hữu ích nếu bạn có thể làm sáng tỏ nhu cầu này.

Thông thường các thiết bị I2C được điều khiển bởi trình điều khiển kernel. Tuy nhiên, nếu bạn đang tìm kiếm quyền truy cập thiết bị I2C từ không gian người dùng, bạn có thể thực hiện việc đó thông qua giao diện /dev. Tại đây, bạn có thể truy cập bộ điều hợp I2C từ không gian người dùng bằng cách sử dụng i2c-dev.h từ i2c-tools, thông tin về điều này có tại liên kết https://www.kernel.org/doc/Documentation/i2c/dev-interface ở giữa. .Cũng lưu ý rằng khi sử dụng read() hoặc write(), toàn bộ luồng cuộc gọi I2C dựa trên bit bắt đầu/địa chỉ/dữ liệu/dừng sẽ được thực hiện tương ứng.

Giới thiệu về linux - Gửi bit bắt đầu và dừng tới bus i2c trong Linux? , chúng tôi đã tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/33080753/

31 4 0
không gian vũ trụ
Hồ sơ

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá taxi Didi miễn phí
Phiếu giảm giá taxi Didi
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress