CAN/RS232 Shield

CAN/RS232 Shield kết hợp bộ thu phát CAN-FD với bộ thu phát RS-232 để OpenMV Cam có thể giao tiếp với xe cộ, bộ điều khiển và thiết bị serial cũ từ một shield duy nhất, với nguồn điện đầu vào rộng và bảo vệ điện áp ngược.

CAN/RS232 Shield

Để xem datasheet đầy đủ, ảnh sản phẩm và thông tin đặt hàng, hãy truy cập trang sản phẩm CAN/RS232 Shield.

Điểm nổi bật

  • CAN-FD 8 Mb/s với đầu cuối và bộ lọc tích hợp

  • RS-232 1 Mb/s với bộ lọc tích hợp

  • Đầu vào 6–36 V, chịu được điện áp ngược

  • Đầu vào ADC 0–5 V với bảo vệ quá áp ±36 V

  • I/O số 0–5 V cho kích hoạt đồng bộ camera, bảo vệ ngắn mạch

Sơ đồ chân

CAN/RS232 Shield Pinout

Tham chiếu chân

Chân

Chức năng

P1

CAN TX → đầu vào bộ thu phát (mặc định)

P2

CAN TX → đầu vào bộ thu phát (thay thế)

P3

CAN RX ← đầu ra bộ thu phát

P4

RS-232 TX → truyền tín hiệu ra đường dây

P5

RS-232 RX ← nhận tín hiệu từ đường dây

P6

Đọc AIN qua dịch mức (0–3,3 V tại P6)

P10

SYN — I/O số open-drain trên khối đầu nối

PWR in

Đầu vào điện áp rộng 6–36 V trên khối đầu nối (chịu được điện áp ngược)

AIN in

Đầu vào tương tự trên khối đầu nối

VIN out

5,4 V tối đa 600 mA từ bộ điều áp tích hợp

3.3V rail

Cấp nguồn cho các linh kiện tích hợp trên shield

GND rail

Đất chung

Ghi chú

AIN được bảo vệ quá áp đến ±36 V và mặc định là đầu vào điện áp 0–5 V, được chia tỷ lệ xuống 0–3,3 V tại P6. Nối cầu jumper chế độ 4–20 mA ở mặt trước của shield để chuyển AIN sang đầu vào vòng dòng 4–20 mA.

Ghi chú

SYN là đường số open-drain, được kéo lên 3,3 V ở phía camera và 5 V ở phía đầu nối SYN. Mặc định là đầu vào — shield dịch mức 0–5 V trên SYN xuống 0–3,3 V tại P10. Thay đổi jumper hàn trên shield để chuyển P10 thành đầu ra, dịch mức 0–3,3 V tại P10 lên 0–5 V tại SYN.

Ghi chú

Mỗi chân P1, P2, P3, P4, P5, P6 và P10 đều có thể được thu hồi cho mục đích khác. P1, P3, P4, P5, P6 và P10 được kết nối theo mặc định — P1, P3, P6 và P10 qua jumper hàn mặt sau, P4 và P5 qua jumper hàn mặt trước. Mở jumper trên bất kỳ chân nào bạn muốn giải phóng. P2 mặc định bị ngắt kết nối: nối cầu jumper mặt sau của P2 để định tuyến CAN TX đến P2 thay thế (và mở jumper mặt sau của P1 để giải phóng P1).

Ghi chú

Việc tách P1/P2 tồn tại để shield hoạt động được trên nhiều dòng vi xử lý khác nhau. Các bo mạch OpenMV Cam IMXRT (RT1062) có thể định tuyến CAN đến P1, vì vậy chúng dùng ánh xạ mặc định. Các bo mạch STM32 không thể kết nối P1 với ngoại vi CAN của chúng, vì vậy hãy nối cầu jumper mặt sau của P2 (và mở jumper của P1) để dùng phương án thay thế.

Ghi chú

Đầu cuối bus CAN được kết nối theo mặc định — chia thành hai nửa 60 Ω nối tiếp nhau giữa CANH và CANL với tụ xuống đất tại điểm giữa (đầu cuối tách AC 120 Ω). Mở hai pad hàn để ngắt kết nối từng nửa một cách độc lập.

Sử dụng

Ghi chú

Số ngoại vi CAN(0)UART(1) dưới đây theo ánh xạ IMXRT (nối dây P1 mặc định). Trên vi xử lý khác, bus được nối với các chân này có thể khác nhau — hãy kiểm tra tài liệu tham chiếu của bo mạch.

Gửi và nhận khung CAN-FD — TX trên P1 (mặc định) hoặc P2 (thay thế), RX trên P3:

from machine import CAN

can = CAN(2, 1_000_000)
can.set_filters(None)
can.send(0x123, b"\xDE\xAD\xBE\xEF")
print(can.recv())

Vọng lại các byte qua RS-232 trên P4 (TX) / P5 (RX):

from machine import UART

uart = UART(1, baudrate=115200)
uart.write("hello\n")
print(uart.read())

Đọc đầu vào khối đầu nối AIN qua chân P6 đã dịch mức:

from machine import ADC
import time

ain = ADC("P6")

while True:
    v = ain.read_u16() * 3.3 / 65535
    print("AIN:", v * (5.0 / 3.3), "V")
    time.sleep_ms(100)

Phản ứng với cạnh xuống trên đường SYN — ví dụ, để đồng bộ camera với thiết bị khác kéo SYN xuống thấp:

from machine import Pin

def on_sync(pin):
    print("SYN falling edge")

syn = Pin("P10", Pin.IN)
syn.irq(on_sync, Pin.IRQ_FALLING)