Kysymys:
Lyhyen matkan hallituksen ja hallituksen välinen viestintä
Saad
2012-06-03 11:48:26 UTC
view on stackexchange narkive permalink

MCU: lla on SPI-väylä, jossa on noin 4 laitetta. Haluaisin laajentaa tätä väylää niin, että se on myös aluksella, ts. Joidenkin piirilevyjen on oltava yhteydessä pääkorttiin ja laajennetaan toiminnallisuutta. "Pad to pad" -etäisyys olisi:

emolevyn jäljityspituus + Kaapelin pituus + jälkipituus jatkalaudalla

3 "+ 6" + 3 "= noin 12 "

Kokemukseni mukaan jopa 1 MHz: n signaali, jonka nousuajat olivat noin 7 ns, tällä etäisyydellä nauhakaapelin kautta ylitti yli 1 V: n (mutta ei soinut liikaa). Piirilevyt saavat virtansa samasta virtalähteestä.

enter image description here

Huomaa: Täällä ei näy nousuaikoja, mutta liiallinen ylitys - tämä on 3,3 V: n signaali. Ja kyllä, tämä mitattiin oikein hyvin lyhyellä johdolla koettimesta maahan. Aivan kuten sitä suositellaan usein tällä sivustolla. En usko, että se on mittausvirhe.

Haluaisin, että järjestelmä toimisi 4 MHz: n taajuudella, mutta myös 2 MHz on hyväksyttävä. Suurin liitettävien levyjen lukumäärä olisi noin 4 ja tämä laajentaisi SPI-väylää noin 12 laitteeseen. En usko, että tätä olisi liian vaikea hallita koodilla, koska minulla on jo jotain tällaista. Lisäorjavalintarivien saaminen ei myöskään ole ongelma.

Huolestun kuitenkin siitä, kuinka SPI-tiedot lähetetään levyltä toiselle. Pitäisikö minun lähettää vain suora SPI tai muuntaa se LVDS: ksi toisessa päässä ja sitten muuntaa se takaisin SPI: ksi toisessa päässä?

Mikä on nousuaika?
@Kortuk Unohdin täydellisen luettelon, anteeksi. Päivitetty kysymys.
7nS: n nousuaika, se huutaa nopeasti.
Anteeksi kahdesta merkityksettömästä kysymyksestä..1.mikä on oskilloskooppi, jota käytit?2. Miksi renkaat ovat niin tärkeitä?
Neljä vastused:
stevenvh
2012-06-03 13:47:13 UTC
view on stackexchange narkive permalink

Nyrkkisääntö sanoo, että sinun on laskettava siirtolinjan vaikutukset, jos yhteytesi pituus on yli 1/10 signaalin aallonpituudesta.

enter image description here

Siirtolinjat aiheuttavat heijastuksia, jos ne osoittavat impedanssin äkillistä muutosta. Heijastunut signaali lisää alkuperäistä, saattaa heijastua jälleen lähettimen puolelle ja tällöin edetä edestakaisin. Tulos näkyy kaaviossa: ylitys, josta puhut, ja jotkut soittoäänet.

12 tuuman langan pituus (30 cm) on 1/10 3 metrin aallonpituudesta tai 100 MHz. 1 MHz ja edes 4 MHz ei saisi aiheuttaa paljon ongelmia. Linjan lopettaminen, kuten Wouter sanoo, voi kuitenkin olla ensimmäinen toimenpide. Tulo on todennäköisesti korkea impedanssi, eikä se ole koskaan hyvä sovitus. Koska yhteydessä on kolme eri kappaletta ( Piirilevy, johto, piirilevy) ominaisuuden impedanssin löytäminen on vaikeaa. (Se on erilainen myös piirilevylle ja langalle, joten hyvin korkeilla taajuuksilla saat heijastuksia myös kaapelin liitännöissä.) Lyhyen pituuden ja matalalla taajuudella päätevastuksen arvo ei ole kriittinen. 100 \ $ \ Omega \ $ voi olla liian alhainen mikro-ohjaimelle, suurin osa heistä ei pysty toimittamaan 33mA (tai jopa 50mA, 5V). Yritän kokeilla 1k \ $ \ Omega \ $ vastus aluksi ja katso kuinka pitkälle se vie meidät.

muokkaa (kysy uudelleen) - Nousuaika näyttää olevan 7ns. Nopeasti, kuten Kortuk sanoo, se tarkoittaa, että sinulla on vähintään 400 MHz: n taajuuksia, ja nämä harmoniset kärsivät todellakin siirtolinjavaikutuksista, vaikka kellosi olisi vain 1 MHz. Yritä suodattaa ne pois. 20 MHz: n kaistanleveys (80 MHz 4 MHz: n kellolle) antaa sinulle enemmän kuin tarpeeksi nousuaikaa. Tämä on 1 MHz: n neliöaalto, joka on suodatettu tiiliseinällä LPF taajuudella 20 MHz:

enter image description here

Sarjavastuksen asettaminen muodostaa ensimmäisen kertaluvun LPF: n linjan kapasitanssi. Jos arviomme olevan 50pF,

\ $ R = \ dfrac {1} {2 \ pi \ cdot 100 MHz \ cdot 50 pF} = 32 \ Omega \ $

antaa rajataajuuden 100 MHz. Joten 33 \ $ \ Omega \ $ -sarjan vastuksen pitäisi lyhentää nousuaikaa, mutta jättää enemmän kuin tarpeeksi hyvän signaalin saamiseksi 4 MHz: ssä.

1 MHz: n taajuudella ei ole merkitystä. Nousuaika on tärkeä.
@stevenvh, Yritti lisätä 1K-vastuksen maahan maahan määränpäähän. Se auttoi piikkejä, mutta toi myös signaalin tason alas. Onko se normaalia? Kun sanon tason, jolla signaali laskeutuu. Yritti myös 500 ohmia, 220 ohmia sama vaikutus, mutta selvempi.
@Saad - Kuinka paljon on vähän? 3,3 V 1k: ssä on vain 3 mA, kuljettajan pitäisi pystyä toimittamaan se täydellisesti. Sillä voi olla jonkin verran sisäistä vastusta, mutta se on muutama kymmeni ohmia, joten tason tulisi laskea vain 2 tai 3%.
@stevenvh Unohdin sarjavastuksen linjalla, joten ilmeisesti pudotan jännitettä. Tyhmä minä! Jopa 180 ohmin vastus ei kuitenkaan auttanut paljoakaan. Se nosti ylityksen 4,5 V: iin. Luulen, että tarvitsen paljon pienemmän vastuksen, mutta sitten minun on huolehdittava nykyisestä vedosta.
Pitäisikö minun harkita myös aktiivista irtisanomista? Pienen vastuksen käyttö lisää koko levyn tehontarpeita ja koska väylä toimii jatkuvasti, se lisää virrankulutusta. Toisiko Schottky-diodien käyttö kiinnittiminä hyvin?
@stevenvh miten saavutat taajuudelle 400MHz? AFAIK wikipediasta BW = 0,34 / trise. Tämä antaa kaistanleveyden 48 MHz. Mitä kaipaan?
Olin Lathrop
2012-06-03 17:18:00 UTC
view on stackexchange narkive permalink

Tällaista lyhyttä väylää varten yritän laittaa pienen vastuksen sarjaan kaikilla, jotka ajavat linjaa. Se ei ole teoreettinen ihanteellinen tapa ottaa voimajohdon teoria huomioon, mutta käytännöllinen lähestymistapa, joka mielestäni toimii tarpeeksi hyvin sinun tapauksessasi. Kokeile 47 Ω aloittajille ja katso mitä se tekee. Jos se auttaa, mutta ei aivan tarpeeksi, voit mennä korkeammalle, mutta en ylitä 120 Ω. Mahdollisuudet ovat, että jostain tältä alueelta löydät arvon, joka toimii riittävän hyvin.

Olen kokeillut tätä lähestymistapaa, Olin. Käytin 100 ohmin vastusta ja se laski ylityksen noin 500 mV: lla ja laski sen 4,3 V: iin 4,7 V: sta. Se on edelleen 3,3 V: n jännite! Nousuaika oli sitten 12 ns verrattuna alkuperäiseen 7: ään.
Näyttää siltä, ​​että laskin vastukseni, kun lähetit vastauksesi, Olin. Anteeksi tuosta
@OlinLathrop I lisäsi sarjan resistanssin 330 ohmiin ja toi ylityksen 3,7 V: iin. Olen melko tyytyväinen tähän. Nousuaika oli 10 ns. Pitäisikö minun vain pitää kiinni tästä tai laittaa päätevastukset levyn seuraavaan versioon? Pyydän, koska suosittelet, ettei ylitä 120 ohmia.
@Saad: Olin huolissani muiden radan kuormitusten vaikutuksesta ja sen altistumisesta melulle. Jos signaalit ovat puhtaat ja linjoilla ei ole DC-kuormia (vain korkean impedanssin CMOS-tulot), jatka sitten ja käytä 300 ohmia.
Wouter van Ooijen
2012-06-03 12:47:07 UTC
view on stackexchange narkive permalink

AFAIK-ylitys voidaan eliminoida potkurin sulkemisella, jos kuljettajasi pystyy ajamaan kuormaa. Muuten joku oma ohjain / vastaanotin-pari, kuten LVDS tai ehkä jopa RS485, varmasti tekee.

+1: Käytämme usein LVDS: ää SPI-signaalien kuljettamiseen.
Stephen Collings
2012-06-04 03:17:35 UTC
view on stackexchange narkive permalink

Minulla on aiemmin ollut vakavia ongelmia SPI: n ajamisessa nauhakaapeleiden kautta, vaikka ne ovatkin paljon pidempiä kuin mitä kuvaat. Melunvaimennuksesta tuli todellinen ongelma, ja vioittuneet komennot päätyivät oheislaitteihini. Se riitti epäonnistumaan CE-melunestotestauksessa. Jos sinulla on myöhemmin ongelmia tässä asiassa, suosittelen, että jokaiselle levylle asetetaan erillinen MCU ja liitetään ne CANbus-väylän kautta.



Tämä Q & A käännettiin automaattisesti englanniksi.Alkuperäinen sisältö on saatavilla stackexchange-palvelussa, jota kiitämme cc by-sa 3.0-lisenssistä, jolla sitä jaetaan.
Loading...