CAN Shield

CAN Shield memberikan OpenMV Cam koneksi bus CAN melalui konektor DB9, dengan regulator 12 V ke 5 V on-board sehingga shield dapat memberi daya pada kamera dari bus kendaraan.

CAN Shield

Untuk datasheet lengkap, foto, dan pemesanan lihat halaman produk CAN Shield.

Catatan

Tidak didukung pada OpenMV Cam RT1062.

Sorotan

  • Bus CAN hingga 1 Mb/s

  • Regulator 12 V ke 5 V on-board

Pinout

CAN Shield Pinout

Referensi pin

Pin

Fungsi

P2

CAN TX

P3

CAN RX

P6

Standby CAN (opsional — lihat catatan)

PWR in

Input bus kendaraan 12 V pada konektor DB9

VIN out

Output regulator 5 V (memberi daya pada kamera)

Rail 3.3V

Memberi daya pada logika SN65HVD230

Rail GND

Ground bersama

Catatan

Jalur standby SN65HVD230 tidak terhubung ke P6 secara default. Hubungkan solder bridge on-board untuk mengikatnya ke P6, kemudian beri sinyal tinggi pada P6 untuk menempatkan transceiver ke mode standby listen-only (rendah mempertahankannya dalam mode transmit-and-receive normal).

Catatan

CANL, CANH, VIN, dan GND dari konektor DB9 juga dipecah ke pad lubang tembus pada bagian bawah shield — solder kabel di sana jika Anda ingin melewati DB9 sepenuhnya.

Catatan

Pinout DB9 dapat diubah antara tata letak DB9 CAN standar dan tata letak OBD-II dengan mengubah tiga jumper solder bridge pada bagian bawah shield.

Catatan

Resistor terminasi 120-ohm on-board terhubung secara default. Dapat dinonaktifkan melalui solder bridge di bagian bawah shield untuk bus yang sudah memiliki terminasi di tempat lain.

Penggunaan

Catatan

Nomor periferal CAN(1) di bawah mengikuti pemetaan STM32. Pada prosesor lain, bus yang terhubung ke pin ini mungkin berbeda — periksa referensi papan Anda.

Kirim dan terima bingkai pada bus CAN pada 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())

Dengan solder bridge on-board terhubung, beri sinyal tinggi pada P6 untuk menempatkan SN65HVD230 ke mode standby listen-only (rendah mengembalikannya ke transmit-and-receive normal):

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