Interface från PiC till persondatorns comport...

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
Användarvisningsbild
grapetonix
Inlägg: 293
Blev medlem: 14 juli 2004, 17:20:50
Skype: grapetonix
Ort: Hägersten, Stockholm

Interface från PiC till persondatorns comport...

Inlägg av grapetonix »

Hur bygger man upp det egentligen? Både vad gäller mjukvara och hårdvara? Nån som har en bra guide samt hur fixar man till det rent hårdvarumässigt?

Nåt man ska tänka på? Inte så dunderkul att råka bränna moderkortet i PC:n direkt och... Behövs det en nivåkonverterare som tex MaX232? Har hört att 1=5V och 0=0V ska funka på många av dagens datorer, trots att standarden tydligen är -5 och 5...


tack /grape
Användarvisningsbild
PaNiC
Inlägg: 2610
Blev medlem: 15 augusti 2003, 22:16:15
Ort: Skånelandet

Inlägg av PaNiC »

Du gör nog bäst i att använda en MAX232 eller 202.
danei
EF Sponsor
Inlägg: 27422
Blev medlem: 2 juni 2003, 14:21:34
Ort: Östergötland
Kontakt:

Inlägg av danei »

standarden är -3V till -15V respektive +3V till +15V
Bärbara har ofta -5V och +5V
menad stationära anänder -12V och +12V
Det är alltså signaler ut. In ska de klara ner till +/- 3V
Sci
Inlägg: 145
Blev medlem: 7 juli 2003, 11:03:29
Ort: Mölndal

Inlägg av Sci »

Att tänka på är också att ett +/-3V system klarar bra mycket kortare kablar än +/-12V.

Erik
Användarvisningsbild
Earendil
EF Sponsor
Inlägg: 448
Blev medlem: 2 juni 2004, 09:06:43
Ort: Lund

Re: Interface från PiC till persondatorns comport...

Inlägg av Earendil »

grapetonix skrev:Hur bygger man upp det egentligen? Både vad gäller mjukvara och hårdvara? Nån som har en bra guide samt hur fixar man till det rent hårdvarumässigt?

Nåt man ska tänka på? Inte så dunderkul att råka bränna moderkortet i PC:n direkt och... Behövs det en nivåkonverterare som tex MaX232? Har hört att 1=5V och 0=0V ska funka på många av dagens datorer, trots att standarden tydligen är -5 och 5...


tack /grape
Använd en MAX232 eller 202, det är mycket enkelt. Bara själva kretsen och 5 kondingar (har jag för mig). Finns komplett exempel på ELFA om du söker på MAX232. Har gjort detta själv och det funkar utmärkt. Jag fick min krets som gratis sample hos Maxim.
Användarvisningsbild
Perrx
Inlägg: 176
Blev medlem: 15 december 2003, 21:43:41
Ort: Göteborg
Kontakt:

Inlägg av Perrx »

Vilka signaler är det då man ska koppla via Max232? Den har ju bara två sändare... TX signalen kan vara ganska bra att ha :) , men vilken mer måste man ha? RTS? CTS? Känns lite käääs om man ska behöva ha fler "MAXar".
matseng
Inlägg: 2360
Blev medlem: 16 september 2003, 17:18:13
Ort: Dubai, United Arab Emirates
Kontakt:

Inlägg av matseng »

Det finns en MAX233 som har inbyggda kondingar, men den är tyvärr typ 4-5 ggr så dyr som en 232'a. Fast det känns oerhört lyxigt att slippa pula på 5 st kondingar runt kretsen.

Vad gäller vad du ska koppla MAX'en till så klarar man sig nästan alltid bra med att bara ansluta RX & TX ( och GND förståss). Övriga signaler är bara för handskakning och modemrelaterade saker som Ring Detect och Carrier Present.

Vad som man skulle kunna tänka sig om man vill offra 2 pinnar extra på din uC och vill stöka med hårdvaruhandskakning för att slippa tappa tecken i extrema hastigheter är att koppla in CTS/RTS också. Men det har jag sluppit göra de senaste 15 åren. Dagens prylar klarar av att behandla ett antal 1000 tecken i sekunden utan att ens bli lätt ansträngda.

EDIT: Kom att tänka på att du hade fått polariteten fel i ditt första inlägg. Negativa spänningar är en 1'a och positiva är en 0'a.
Användarvisningsbild
$tiff
Inlägg: 4941
Blev medlem: 31 maj 2003, 19:47:52
Ort: Göteborg
Kontakt:

Inlägg av $tiff »

För mig funkar det jättebra att kommunicera mellan datorn och PICen dubbelriktat utan någon MAX232. Fast det är ju klart en ghettolösning. Ska man göra det ordentligt så är det MAX232 som gäller!
Användarvisningsbild
Hedis
Inlägg: 2493
Blev medlem: 8 december 2003, 15:10:44
Ort: Vänersborg
Kontakt:

Inlägg av Hedis »

$tiff> Hur är din lösning då? bara dragit TxD och RxD direkt till com-porten?
Användarvisningsbild
$tiff
Inlägg: 4941
Blev medlem: 31 maj 2003, 19:47:52
Ort: Göteborg
Kontakt:

Inlägg av $tiff »

njä, en resistor på några kOhm mellan :D

Det är t.om. så att PICBasic-manualen rekommenderar detta. Och den är ju verkligen biblen... :roll:
Användarvisningsbild
grapetonix
Inlägg: 293
Blev medlem: 14 juli 2004, 17:20:50
Skype: grapetonix
Ort: Hägersten, Stockholm

Inlägg av grapetonix »

Jepp, verkar som det är okej för hobbybruk. Hittade även denna sida...

http://fargo.itp.tsoa.nyu.edu/~tigoe/pc ... bpro.shtml
matseng
Inlägg: 2360
Blev medlem: 16 september 2003, 17:18:13
Ort: Dubai, United Arab Emirates
Kontakt:

Inlägg av matseng »

Dock så fungerar det nog bara i picbasic eller om man bitbangar själv eftersom man blir tvungen att invertera signalen för att nollorna och ettorna ska bli rätt.

' Set Debug mode: 0 = true, 1 = inverted
DEFINE DEBUG_MODE 1

Jag har inget minne av att jag sett att man kan invertera via flagga om man använder UART'en, men där kan jag ha fel förståss....
Användarvisningsbild
$tiff
Inlägg: 4941
Blev medlem: 31 maj 2003, 19:47:52
Ort: Göteborg
Kontakt:

Inlägg av $tiff »

>> matseng

En transistor då? :wink:
matseng
Inlägg: 2360
Blev medlem: 16 september 2003, 17:18:13
Ort: Dubai, United Arab Emirates
Kontakt:

Inlägg av matseng »

Ja, det finns ju en variant där man med en smärre hög med diskreta komponenter (~10 st?) kan göra ett ttl<->rs232-omvandlare som drivs av spänningen på rs232-portens tx-lina.

Fungerar fint, är mycket billigare än en max232, men tar upp mer kortyta såvida man inte kör ytmonterat.
Användarvisningsbild
tusse
Inlägg: 1364
Blev medlem: 19 augusti 2003, 21:56:17
Ort: Järfälla

Inlägg av tusse »

Har kopplat direkt via ett motstånd och det fungerar fint.

Programmerar med Pic basic och där sätter man picens port att inventera signalen.


Enligt manualen: While single-chip RS-232 level converters are common and inexpensive, the excellent I/O specifications of the PICmicro allow most applications to run without level converters. Rather, inverted input (N300..N9600) can be used is conjunction with a current limiting resistor.

Manual: http://www.microengineeringlabs.com/res ... pbpmanual/
Skriv svar