CAN/RS232 Shield

CAN/RS232 Shield yhdistää CAN-FD-lähetinvastaanottimen RS-232-lähetinvastaanottimeen, joten OpenMV Cam voi keskustella ajoneuvojen, ohjainten ja vanhojen sarjalaitteiden kanssa yhdeltä shieldiltä, laajalla syöttöteholla ja napaisuussuojauksella.

CAN/RS232 Shield

Täydellinen datalehti, kuvat ja tilaustiedot löytyvät CAN/RS232 Shield -tuotesivulta.

Kohokohdat

  • 8 Mb/s CAN-FD kortilla olevalla terminoinnilla ja suodatuksella

  • 1 Mb/s RS-232 integroidulla suodatuksella

  • 6–36 V:n syöte, napaisuussietoinen

  • 0–5 V ADC-syöte ±36 V:n ylijännitesuojauksella

  • 0–5 V digitaalinen I/O kameran synkronointilaukaisimille, oikosulkusuojattu

Nastakartta

CAN/RS232 Shield -nastakartta

Nastaviittaus

Nasta

Toiminto

P1

CAN TX → lähetinvastaanottimeen (oletus)

P2

CAN TX → lähetinvastaanottimeen (vaihtoehtoinen)

P3

CAN RX ← lähetinvastaanottimesta

P4

RS-232 TX → ohjaa linjaa ulos

P5

RS-232 RX ← vastaanottaa linjan sisään

P6

Tasonsiirretty AIN-takaisinlukema (0–3,3 V P6:ssa)

P10

SYN — avoimen kollektorin digitaalinen I/O riviliittimessä

PWR sisään

6–36 V:n laaja syöte riviliittimessä (napaisuussietoinen)

AIN sisään

Analoginen syöte riviliittimessä

VIN ulos

5,4 V jopa 600 mA:lla kortilla olevasta säätimestä

3,3 V:n linja

Syöttää virran shieldin kortilla olevalle elektroniikalle

GND-linja

Yhteinen maa

Muista

AIN on ylijännitesuojattu jopa ±36 V:iin ja on oletuksena 0–5 V:n jännitesyöte, skaalattuna alas 0–3,3 V:iin P6:ssa. Sillottamalla shieldin etupuolella oleva 4–20 mA -tilan shuntti vaihdat AIN:n 4–20 mA -virtasilmukkasyötteeksi.

Muista

SYN on avoimen kollektorin digitaalinen linja, joka on vedetty ylös 3,3 V:iin kameran puolella ja 5 V:iin SYN-liitinpuolella. Oletuksena se on syöte — shield tasonsiirtää SYN:n 0–5 V alas 0–3,3 V:iin P10:ssa. Vaihda kortilla olevaa juotossiltaa kääntääksesi P10:n ulostuloksi, jolloin se tasonsiirtää P10:n 0–3,3 V ylös 0–5 V:iin SYN:ssä.

Muista

Jokainen nastoista P1, P2, P3, P4, P5, P6 ja P10 voidaan ottaa takaisin muuhun käyttöön. P1, P3, P4, P5, P6 ja P10 ovat kytkettyinä oletuksena — P1, P3, P6 ja P10 takapuolen juotossiltojen kautta, P4 ja P5 etupuolen juotossiltojen kautta. Avaa silta haluamastasi nastasta vapauttaaksesi sen. P2 on oletuksena irti kytkettynä: sillota sen takapuolen silta reitittääksesi CAN TX:n P2:een sen sijaan (ja avaa P1:n takapuolen silta vapauttaaksesi P1:n).

Muista

P1/P2-jako on olemassa, jotta shield toimii eri prosessoriperheissä. OpenMV Cam IMXRT -kortit (RT1062) voivat reitittää CAN:n P1:een, joten ne käyttävät oletuskartoitusta. STM32-kortit eivät pääse P1:een CAN-oheislaitteellaan, joten sillota P2:n takapuolen silta (ja avaa P1:n) käyttääksesi vaihtoehtoa.

Muista

CAN-väylän terminointi on kytkettynä oletuksena — jaettuna kahteen 60 Ω:n puolikkaaseen sarjassa CANH:n ja CANL:n välillä kondensaattorilla maahan keskipisteessä (120 Ω AC-kytketty jaettu terminointi). Avaa kaksi juotospadia irrottaaksesi kunkin puolikkaan erikseen.

Käyttö

Muista

Alla olevat CAN(0)- ja UART(1)-oheislaitenumerot noudattavat IMXRT-kartoitusta (oletus P1-kytkentä). Toisella prosessorilla näihin nastoihin kytketty väylä voi olla erilainen — tarkista korttisi viite.

Lähetä ja vastaanota CAN-FD-kehyksiä — TX P1:ssä (oletus) tai P2:ssa (vaihtoehtoinen), RX P3:ssa:

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())

Kaiuta tavuja RS-232:n yli P4:ssä (TX) / P5:ssä (RX):

from machine import UART

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

Lue AIN-riviliittimen syöte tasonsiirretyn P6-nastan kautta:

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)

Reagoi laskevaan reunaan SYN-linjalla — esimerkiksi synkronoidaksesi kameran toisen laitteen kanssa, joka vetää SYN:n alas:

from machine import Pin

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

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