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.
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¶
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)