Fråga:
Kan en nivåförskjutande krets växla spänningen tvärtom?
Eran
2016-11-05 17:17:01 UTC
view on stackexchange narkive permalink

Jag jobbar med ett projekt där jag använder en FPGA och ansluter den till flera servor (kallas AX-12), som är anslutna i en kedjekedja. Varje servo har ett unikt ID så att de är anslutna i en kedjekedja är inte ett problem. FPGA överför kommandon till servorna och därefter svarar servorna genom att sända sina egna paket (kallas ett statuspaket, enligt databladet). Jag vill fokusera på svarsdelen i denna fråga.

AX-12 servos connected in a daisy chain

"CM-5" som du ser på bilden ersätts av FPGA i mitt projekt.

Enligt databladet ( som du hittar här):

För att manövrera Dynamixel-ställdonen måste huvudstyrenheten stödja TTL-nivå halv duplex UART.

För huvudkontrollen 'Jag använder ett DE2-utvärderingskort av Altera (senare kommer att ersättas av DE0-Nano). Kortets utgångar för '1' är 3,3 V. Medan 3.3V fungerar för TTL fick jag reda på att servorna svarar bättre när de får 5V.

För att göra detta använder jag denna nivåförskjutningskrets: enter image description here

Så för överföringsdelen är allt bra. FPGA matar ut '1' som 3,3 V och servon tar emot den som 5 V, vilket är bra.

Min fråga handlar om spänningen när jag tar emot paketen från servorna. Jag antar (har inte kontrollerat) att servorna överför statuspaketbitarna i 5V. Får nivåväxlingskretsen 5V och flyttar den tillbaka till 3,3V? Och 0V till uppenbarligen 0V? Om så är fallet, hur fungerar det?

Om du tittar i databladet ser du att tillverkaren säger att du ska använda en buffert med ett uppdragningsmotstånd till 5V. Jag har försökt använda den bufferten och det gick inte så bra. Så vad jag också frågar är, kommer den nivåförskjutningskretsen att användas som buffert?

Tack!

Ett svar:
Andy aka
2016-11-05 17:22:42 UTC
view on stackexchange narkive permalink

Får nivån växlingskrets 5V och flyttar den tillbaka till 3.3V?

Ja, den kretsen fungerar i två riktningar även om det kan vara en bra idé att ha ett neddragningsmotstånd på 3,3 V-logiklinjen till 0 volt (se senare om motargument).

När 5V-sidan är vid 5V drar R1 upp 3V3-sidan via bas-emitter-korsningen (en förspänd diod). När 5V-sidan är vid 0V blir baskollektorregionen förspänd framåt och detta drar basen ner till ungefär 0,7 volt och emittern (med det neddragna motståndet som nämns) skulle falla till 0 volt.

Du kan dock göra ett fall för att transistorn fungerar (om än med reducerad beta) i ett upp och ner-läge (dvs samlar- och emitterbytesplatser). Detta tenderar naturligtvis att tänka på en pull-up på 3V3-linjen. Jag skulle hellre använda en MOSFET-version: -

enter image description here

Det är lite tydligare hur 5V-sidan drar 3V3-sidan ner till 0V - den använder kroppsdioden i MOSFET för att uppnå detta och behöver därför inte en nedrullning på 3V3-sidan.

Tack!Jag har några frågor om saker som inte är tydliga för mig.Vissa kan handla om tekniska termer eftersom engelska inte är mitt modersmål och dessa termer är inte sådana jag alltid förstår.
1. "R1 drar upp 3V3-sidan".Vad betyder det?Att på grund av R1 får 3.3V-sidan en spänning på 3.3V? 2. Om svaret på 1 är sant - om basen får en spänning på 3,3V på grund av R1 och det finns ett spänningsfall på 0,65-0,7V i Vbe (Vbe = Vb - Ve), betyder inte det attVe = Vb - Vbe = 3,3 - 0,7 = 2,6V? 3. "bas-kollektorregionen blir förspänd" - betyder det att det finns en kortslutning mellan basen och samlaren?Det beror på att transistorn är mättad?
1) R1 är ansluten till 3V3-linjen via en diod som är naturligt förspänd under alla omständigheter när 3V3-linjen laddas.Vid avlastning (eller mycket lätt lastad) sitter 3V3-linjen naturligtvis runt 2,6 volt.Det är en pull-up-åtgärd och även om det vid 2,6 volt är det mer än tillräckligt för att representera en logisk nivå på ett 3V3-system.2) Aha (!) Jag ser att du har gjort det själv !!!Bra man.
4. Jag är generad över att fråga detta, men hur fungerar det neddragbara motståndet?Går all ström till marken på grund av det neddragbara motståndet, vilket betyder att FPGA inte får någon ström alls? Och wow du svarar snabbt!Tack igen.
Jag diskuterar fortfarande fördelarna och nackdelarna med en pull-down versus en pull-up för 3V3-linjen.Om du använder en nedrullning måste den vara "lätt" och betydligt högre i motstånd än R1 annars kommer en potentiell delare att bildas så att något som 100 kohms skulle vara OK.Varje ström i ingången på en FPGA är i bästa fall nano-förstärkare och så kan du ignorera dess laddningseffekt.
Hej, jag vet att det här är en gammal fråga men jag hoppades att du kunde hjälpa mig med något här.Jag började tänka på den andra kretsen du föreslog, med N-MOS BSS138, och jag förstod bara inte varför den fungerar.Jag simulerade det och kom på det här: https://ibb.co/gBqSTe https://ibb.co/mkSJZK.En är när jag får 5V och den andra när jag får 0V.
Jag förstår inte, från vad det verkar kommer Vgs alltid att vara 0V och Vth = 1.3 enligt databladet för BSS138, så hur fungerar det exakt och vilken roll spelar dioden här?Jag vet att dessa dioder har ett spänningsfall på cirka 1V, men jag förstår bara inte "händelsekedjan" i denna krets.Tack!!!
Jag skulle också vilja veta om det här är rätt sätt att simulera den här kretsen och att Rload simulerar en FPGA-ingång.
Om jag var dig skulle jag överväga att ställa detta som en riktig fråga så att du får ett mer fullständigt svar från mer folk.Lite upptagen just nu.


Denna fråga och svar översattes automatiskt från det engelska språket.Det ursprungliga innehållet finns tillgängligt på stackexchange, vilket vi tackar för cc by-sa 3.0-licensen som det distribueras under.
Loading...