ฉันสามารถใช้ One Wire File System ผ่าน GPIO ได้หรือไม่


14

ฉันได้ติดตั้งowfs (ภายใต้ debian) เพียงเพื่อให้ตระหนักถึงการตั้งค่าเริ่มต้น (1wire) ใช้งานได้ผ่านพอร์ต USB เท่านั้น owfsสั้นสำหรับหนึ่งลวด File System เป็นมาตรฐานสำหรับเซ็นเซอร์ต่ำสุด แต่ฉันพยายามเชื่อมต่อDS18B20ผ่าน GPIOs โดยเฉพาะ

ฉันสามารถทำให้ฟังก์ชั่น 1 สายทำงานผ่าน GPIO ได้หรือไม่ และถ้าเป็นเช่นนั้นฉันจะทำอย่างไร

ตอนแรกฉันไม่เข้าใจว่าowfsมักต้องการ "bus master IC" ซึ่งสามารถใช้สื่อสารกับเซ็นเซอร์ 1 สายได้ ฉันคิดว่าฉันสามารถเปลี่ยนการตั้งค่าเพื่อใช้งาน GPIO ได้โดยไม่ต้องมีเจ้านาย


โดยไม่ต้องมีรถบัสหลัก ..
คริสเตียน

3
สวัสดีคริสเตียนเพื่อรับคำตอบนี้ฉันคิดว่าคุณจะต้องขยายคำถามเล็กน้อยเพื่ออธิบายว่าจริง ๆ แล้วหนี้อะไร มีการอ้างอิงอะไรเกี่ยวกับ RPi หรือไม่?
อเล็กซ์แชมเบอร์เลน

1
owfs ย่อมาจาก One Wire File System และเป็นมาตรฐานสำหรับเซ็นเซอร์ต่ำสุด - ข้อมูลเพิ่มเติมได้ที่owfs.org
Maria Zverina

1
ฉันเปลี่ยนชื่อของคุณตามความคิดเห็นเหล่านี้ แจ้งให้เราทราบหากไม่เป็นไร
Jivings

1
ขอบคุณสำหรับคำถามของคุณคริสเตียนและขอบคุณสำหรับการปรับปรุงด้วยข้อมูลเพิ่มเติมเล็กน้อย ฉันได้จัดระเบียบขึ้นเล็กน้อยและเพิ่มข้อมูลอื่น ๆ จากความคิดเห็น
Mark Booth

คำตอบ:


8

ฉันได้ทำการตรวจสอบเรื่องนี้และได้ผลลัพธ์ต่อไปนี้:

  • โมดูลเคอร์เนล w1 และ OWFS เข้ากันไม่ได้ในขณะนี้
  • อย่างที่คุณอาจรู้ OWFS ทำงานร่วมกับอุปกรณ์ฮาร์ดแวร์หลายตัว (1wire bridges จาก USB / I2C / Serial / TCP ฯลฯ ) ซึ่งมีประสิทธิภาพสูงกว่าวิธีการแก้ปัญหาการกระแทกบิตใด ๆ
  • ในซอร์สโค้ดของ OWFS (โดยเฉพาะส่วน owlib) มีการเขียนใหม่ทั้งหมดของโมดูลเคอร์เนล w1 (ตามรหัสจาก Evgeniy Polyakov ผู้เขียนโมดูลเคอร์เนล w1) นอกจากนี้ยังมีหน้าข้อมูลเกี่ยวกับเรื่องนี้ แต่ดูเหมือนว่าภายใต้การก่อสร้าง / ในการพัฒนา: OWFS w1 ข้อมูล พวกเขายังระบุว่าโมดูลนี้เข้าถึงได้ผ่านการเชื่อมต่อ netlink ( ตาราง Busmaster ) และรายงานตัวเองต่อ OWFS โดยใช้ avahi (ตรวจสอบไฟล์ต้นฉบับในไดเรกทอรี owlib / src / c เริ่มต้นด้วย ow_w1_ *)
  • พารามิเตอร์ commandline --w1 ใช้สำหรับเครื่องมือหลายอย่างที่บอกกระบวนการใช้เคอร์เนลโมดูล w1 ว่าคุณแมปหมุด GPIO จริง ๆ เพื่อใช้ในการสื่อสาร 1wire อย่างไรฉันไม่ทราบเลยในตอนนี้
  • สุดท้าย แต่ไม่ท้ายสุดในรายการ OWFS สิ่งที่ต้องทำมีรายการสำหรับเพิ่ม GPIO และโมดูลเคอร์เนล w1 'ปกติ' ตามที่คุณเห็นที่นี่: OWFS สิ่งที่ต้องทำ

ฉันไม่มีสิ่งใด ๆ 1wire วางอยู่รอบ ๆ เพื่อทดสอบว่า 'เขียนใหม่' ตามที่กล่าวไว้ในจุดที่ 3 ใช้งานได้จริงหรือไม่ โดยเฉพาะอย่างยิ่งมันควรจะทำงานอย่างไรในหน้าข้อมูลพวกเขาพูดคุยเกี่ยวกับการปิดการใช้งานโมดูลเคอร์เนล w1 หรือเรียกใช้ OWFS เป็นรากเพื่อให้สามารถยกเลิกการโหลดเคอร์เนลโมดูล w1 แต่ถ้ามันถูกนำมาใช้และทำงานฉันไม่มีความคิด

ฉันหวังว่าข้อมูลนี้จะทำให้คุณได้รับเพิ่มเติมอีกเล็กน้อยและโปรดแจ้งให้เราทราบผลลัพธ์บางอย่าง


ผมเขียนเกี่ยวกับครึ่งหนึ่งของที่อยู่ในคำตอบอื่นหลังจากที่ได้เห็นtanzilli.com/1wireและมองไปรอบ ๆ แล้วสังเกตเห็นฉันเป็นพื้นพบสิ่งเดียวกับที่นี่ :)
XTL

1

คุณอาจต้องการดูคำถามนี้ ดิสซิเดนเชียลดิสโตรมีการรองรับ 1 สายบนพิน GPIO


1
ฉันพร้อมแล้ว! แต่คำถามก็เกี่ยวกับ owfs! ไชโย
คริสเตียน

โมดูลเคอร์เนลนั้นมีข้อ จำกัด ที่รุนแรงสองสามข้อ อ่านเกี่ยวกับพวกเขาได้ที่นี่: kernel.org/doc/Documentation/w1/slaves/w1_therm
notlesh
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.