Ställa in en emulerad serie-port på rätt sätt? (Löst.)

C, C++, Pascal, Assembly, Raspberry, Java, Matlab, Python, BASIC, SQL, PHP, etc.
BJ
Inlägg: 8185
Blev medlem: 11 april 2007, 08:14:53
Ort: En_stad

Ställa in en emulerad serie-port på rätt sätt? (Löst.)

Inlägg av BJ »

Jag har en annan tråd:
Hur kommer man igång med Arduino?
http://elektronikforumet.com/forum/view ... =7&t=89180

Jag har kopplat Arduino uno:n till datorn med
usb-sladden, och fått en emulerad serie-port,
com3. Jag använder Windows xp.

För att kunna skicka obegränsat (?) med tecken
från datorn, t.ex. i dos, så måste jag göra
något av följande:

1.
Koppla in Arduinon.
Starta Arduinos serie-monitor och stänga av
den igen för att porten ska bli ledig.

2.
Koppla in Arduinon.
Lyfta på luren i Hyperterminal, och lägga på igen
för att porten ska bli ledig.

Är det någon som vet hur man gör i datorn
för att ställa in den serie-porten rätt?
Alltså så att jag kan skicka från t.ex. dos eller
en bat-fil, utan att starta och stänga av
serie-monitorn eller lyfta på luren och
lägga på igen i Hyperterminal?

Genom enhetshanteraren:
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
Senast redigerad av BJ 7 november 2017, 09:46:26, redigerad totalt 1 gång.
H.O
Inlägg: 5686
Blev medlem: 19 mars 2007, 10:11:27
Ort: Ronneby

Re: Ställa in en emulerad serie-port på rätt sätt?

Inlägg av H.O »

Använd mode kommandot kanske?

> mode com1:baud=96
jah
Inlägg: 659
Blev medlem: 16 januari 2009, 13:00:08
Ort: Eslöv

Re: Ställa in en emulerad serie-port på rätt sätt?

Inlägg av jah »

Har du Arduino-miljön igång så är det väl stor risk att porten hålls öppen av denna, och serie-monitorn bryter detta tillfälligt när den stängs.
Vill du kommunicera via annat program samtidigt som Arduino-IDE är öppet så kan du parallellt köra en simulerad seriell port med hjälp av en extra USB-seriell kabel.

Skicka mycket data från DOS/kommandoprompt kan man göra med t.ex COPY filnamn COM1:
(inkludera ett ctrl-z sist om det är en textfil, eller använd /B i copy-kommandot om det är binärt rådata)

COPY CON COM1: gör att det du skriver skickas radvis(?) allt eftersom, avsluta med ctrl-z.

Inställning av hastighet etc enl tidigare föreslaget MODE-kommando. Standard brukar vara MODE COM1:9600,n,8,1

/J
SeniorLemuren
Inlägg: 7779
Blev medlem: 26 maj 2009, 12:20:37
Ort: Kristinehamn

Re: Ställa in en emulerad serie-port på rätt sätt?

Inlägg av SeniorLemuren »

Eller så kan du använda en Arduino Mega
The Arduino Mega has three additional serial ports: Serial1 on pins 19 (RX) and 18 (TX), Serial2 on pins 17 (RX) and 16 (TX), Serial3 on pins 15 (RX) and 14 (TX).
Användarvisningsbild
Jan Almqvist
Inlägg: 1580
Blev medlem: 1 oktober 2013, 20:48:26
Ort: Orust

Re: Ställa in en emulerad serie-port på rätt sätt?

Inlägg av Jan Almqvist »

Visar "mode comx:" i DOS (där x är din serieport) någon skillnad mellan innan du utfört något av momenten 1 eller 2 och efter?
BJ
Inlägg: 8185
Blev medlem: 11 april 2007, 08:14:53
Ort: En_stad

Re: Ställa in en emulerad serie-port på rätt sätt?

Inlägg av BJ »

Ja:

Före:

Kod: Markera allt

C:\Documents and Settings\...>mode com3

Status för COM3:
----------------
    Överföringshastighet: 0
    Paritet:              None
    Databitar:            0
    Stoppbitar:           1
    Timeout:              OFF
    XON/XOFF:             OFF
    CTS-handskakning:     OFF
    DSR-handskakning:     OFF
    DSR-känslighet:       OFF
    DTR-krets:            OFF
    RTS-krets:            ON
Efter Hyperterminal:

Kod: Markera allt

C:\Documents and Settings\...>mode com3

Status för COM3:
----------------
    Överföringshastighet: 9600
    Paritet:              None
    Databitar:            8
    Stoppbitar:           1
    Timeout:              ON
    XON/XOFF:             OFF
    CTS-handskakning:     ON
    DSR-handskakning:     OFF
    DSR-känslighet:       OFF
    DTR-krets:            ON
    RTS-krets:            HANDSHAKE
Användarvisningsbild
Jan Almqvist
Inlägg: 1580
Blev medlem: 1 oktober 2013, 20:48:26
Ort: Orust

Re: Ställa in en emulerad serie-port på rätt sätt?

Inlägg av Jan Almqvist »

OK, jag tolkar detta som att före är inte COM3 initierad alls.

Du borde kunna lösa det med mode commandot typ:

Kod: Markera allt

mode com3:9600,n,8,1
Det kan fattas något i mitt exempel.
BJ
Inlägg: 8185
Blev medlem: 11 april 2007, 08:14:53
Ort: En_stad

Re: Ställa in en emulerad serie-port på rätt sätt?

Inlägg av BJ »

Det fungerade! :idea:

H.O.:
Jag såg ditt svar, men jag trodde att
enhetshanteraren visade rätt information.
Man kan alltså inte lita på informationen
i enhetshanteraren.

Tack. :tumupp:
Nu kanske jag kommer vidare.
BJ
Inlägg: 8185
Blev medlem: 11 april 2007, 08:14:53
Ort: En_stad

Re: Ställa in en emulerad serie-port på rätt sätt? (Löst.)

Inlägg av BJ »

En fråga till.

Vad är det som bestämmer att den emulerade
serie-porten blir just com3?

Vad skulle hända om man har flera Arduino
(med eller utan samma drivrutin)?
Eller har Arduinon inkopplad tillsammans
med en "vanlig" usb-serieport?
Användarvisningsbild
Icecap
Inlägg: 26106
Blev medlem: 10 januari 2005, 14:52:15
Ort: Aabenraa, Danmark

Re: Ställa in en emulerad serie-port på rätt sätt? (Löst.)

Inlägg av Icecap »

Om man går in i Enhetshanteraren → Portar (COM och LPT) kan man högerklicka på den valda porten och välja Egenskaper.

Under fliken "Port Settings" → Avanced... kan man välja portnummer osv.

Men normalt ges de ett nummer när de ansluts och är det en knasig drivrutin kan de få nytt nummer för varje USB-port man sätter dom i och även för varje gång man ansluter.
Användarvisningsbild
Jan Almqvist
Inlägg: 1580
Blev medlem: 1 oktober 2013, 20:48:26
Ort: Orust

Re: Ställa in en emulerad serie-port på rätt sätt? (Löst.)

Inlägg av Jan Almqvist »

Min erfarenhet är att portnumret är slumpartat. Jag använder en BM-77-PICTAIL ( http://www.microchip.com/Developmenttoo ... 77-PICTAIL ) och den får vanligtvis inte samma portnummer från gång till gång.
Mr Andersson
Inlägg: 1394
Blev medlem: 29 januari 2011, 21:06:30
Ort: Lapplandet

Re: Ställa in en emulerad serie-port på rätt sätt? (Löst.)

Inlägg av Mr Andersson »

Det är upp till drivrutinen att välja portnummer. Arduinon (windows standard CDC-driver) får samma nummer varje gång jag ansluter den men en PL2303 USB-TTL jag har (kina-klon med modifierade drivrutiner) får nytt nummer varje gång.
BJ
Inlägg: 8185
Blev medlem: 11 april 2007, 08:14:53
Ort: En_stad

Re: Ställa in en emulerad serie-port på rätt sätt? (Löst.)

Inlägg av BJ »

Okej.
Baroon
Inlägg: 35
Blev medlem: 11 mars 2016, 23:00:09
Ort: Linköping

Re: Ställa in en emulerad serie-port på rätt sätt? (Löst.)

Inlägg av Baroon »

De inställningar som du ser i enhetshanteraren används i normalfallet inte.
När ett program öppnar en serieport så anger man även inställningar (baud rate, stopbitar, parity osv) för porten.
Därför bör man inte kolla på inställningarna i enhetshanteraren.

När man stoppar in en usb-device som registrerar sig som en serieport kommer windows att sätta ett nummer på serieporten. Om det blir samma som tidigare eller inte beror på drivrutinen i enheten. Det finns ett maxvärde som serieporten kan ta och har man en tveksam drivrutin som registrerar om ett nytt nummer varje gång kan dom ta slut. Det i sin tur kan (tyvärr) ge roliga fenomen. :)
BJ
Inlägg: 8185
Blev medlem: 11 april 2007, 08:14:53
Ort: En_stad

Re: Ställa in en emulerad serie-port på rätt sätt? (Löst.)

Inlägg av BJ »

Okej. Så gör inte Ardino uno:n.
Den blir com3 varje gång.
(Så som jag vill ha det.)
Skriv svar