CAN Shield

CAN Shield มอบการเชื่อมต่อบัส CAN ให้กับ OpenMV Cam ผ่านขั้วต่อ DB9 พร้อมตัวควบคุมแรงดัน 12 V เป็น 5 V บนบอร์ด เพื่อให้ชีลด์สามารถจ่ายไฟให้กล้องจากบัสยานพาหนะได้

CAN Shield

ดูข้อมูลทางเทคนิคฉบับเต็ม รูปภาพ และการสั่งซื้อได้ที่ หน้าผลิตภัณฑ์ CAN Shield

Note

ไม่รองรับบน OpenMV Cam RT1062

คุณสมบัติเด่น

  • บัส CAN ความเร็วสูงสุด 1 Mb/s

  • ตัวควบคุมแรงดัน 12 V เป็น 5 V บนบอร์ด

การจัดเรียงพิน

CAN Shield Pinout

ข้อมูลอ้างอิงพิน

พิน

ฟังก์ชัน

P2

CAN TX

P3

CAN RX

P6

CAN standby (ตัวเลือก — ดูหมายเหตุ)

PWR in

อินพุตแรงดัน 12 V จากบัสยานพาหนะบนขั้วต่อ DB9

VIN out

เอาต์พุตจากตัวควบคุมแรงดัน 5 V (จ่ายไฟให้กล้อง)

3.3V rail

จ่ายไฟให้กับลอจิก SN65HVD230

GND rail

กราวด์ร่วม

Note

สายสแตนด์บายของ SN65HVD230 ถูกตัดการเชื่อมต่อจาก P6 โดยค่าเริ่มต้น เชื่อมต่อจัมเปอร์บัดกรีบนบอร์ดเพื่อต่อเข้ากับ P6 จากนั้นขับ P6 ให้เป็น high เพื่อให้ทรานซีฟเวอร์เข้าสู่โหมด listen-only standby (สัญญาณ low จะทำให้กลับสู่โหมดส่งและรับปกติ)

Note

CANL, CANH, VIN และ GND จากขั้วต่อ DB9 ยังถูกนำออกมาที่แพดบัดกรีแบบ through-hole ที่ด้านล่างของชีลด์ด้วย — บัดกรีสายไฟที่นั่นหากต้องการข้ามการใช้ DB9

Note

การจัดเรียงพิน DB9 สามารถเปลี่ยนระหว่างเลย์เอาต์ DB9 CAN มาตรฐานและเลย์เอาต์ OBD-II ได้โดยการเปลี่ยนจัมเปอร์บัดกรีสามตัวที่ด้านล่างของชีลด์

Note

ตัวต้านทานปลายสาย 120 โอห์มบนบอร์ดถูกเชื่อมต่อโดยค่าเริ่มต้น สามารถปิดใช้งานได้ผ่านจัมเปอร์บัดกรีที่ด้านล่างของชีลด์สำหรับบัสที่มีตัวต้านทานปลายสายอยู่แล้ว

การใช้งาน

Note

หมายเลขอุปกรณ์ต่อพ่วง CAN(1) ด้านล่างใช้การแมปแบบ STM32 บนโปรเซสเซอร์อื่น บัสที่เดินสายไปยังพินเหล่านี้อาจแตกต่างกัน — ตรวจสอบข้อมูลอ้างอิงของบอร์ดคุณ

ส่งและรับเฟรมบนบัส CAN ที่ความเร็ว 1 Mb/s:

from machine import CAN
import time

can = CAN(2, 1_000_000)
can.set_filters(None)

can.send(0x123, b"\xDE\xAD\xBE\xEF")
print(can.recv())

เมื่อเชื่อมต่อจัมเปอร์บัดกรีบนบอร์ดแล้ว ขับ P6 ให้เป็น high เพื่อให้ SN65HVD230 เข้าสู่โหมด listen-only standby (สัญญาณ low จะคืนค่าสู่โหมดส่งและรับปกติ):

from machine import Pin
Pin("P6", Pin.OUT).value(1)  # listen-only standby