Logga seriedata i Win-DOS

C, C++, Pascal, Assembly, Raspberry, Java, Matlab, Python, BASIC, SQL, PHP, etc.
Sado
Inlägg: 84
Blev medlem: 6 april 2007, 14:39:33
Ort: Svealand

Logga seriedata i Win-DOS

Inlägg av Sado »

Hejsan,

Inte direkt programmeringsrelaterat men jag provar ändå.

Tänkte att på enklaste sätt logga vad som kommer in på com-porten (i detta fall NMEA från en GPS-puck). Nedanstående fungerar utmärkt för att logga till skärmen (con).

Kod: Markera allt

copy com6 con
För att istället skriva till fil gör man normalt följande:

Kod: Markera allt

copy com6 filnamn.gga
Detta fungerar och jag ser hur filen växer i storlek. Men hur i hela friden avslutar jag? ^Z är ju det normala sättet att avsluta en fil men det fungerar inte. ^C avbryter det hela och filen raderas av systemet.

Kod: Markera allt

I/O-åtgärden har avbrutits därför att en tråd har avslutats eller för att ett program har begärt det.
        0 file(s) copied.
Rycka ur sladden fungerar inte heller för då raderas filen. Att göra en kopia av filen mitt i skrivningen fungerar som nödlösning men det känns inte helt rätt. Några andra idéer?

/S
Mr Andersson
Inlägg: 1394
Blev medlem: 29 januari 2011, 21:06:30
Ort: Lapplandet

Re: Logga seriedata i Win-DOS

Inlägg av Mr Andersson »

Testa type com6 > filnamn
Sado
Inlägg: 84
Blev medlem: 6 april 2007, 14:39:33
Ort: Svealand

Re: Logga seriedata i Win-DOS

Inlägg av Sado »

Jösses, satte mig vid en annan dator nu där porten blev COM10. Hur jag än betedde mig så fick jag "Incorrect function" eller "The system cannot find the file specified.", även om jag körde med syntaxen \\.\COM10. Jag måste ha förträngt vitala detaljer kring detta.

Nåja, jag rattade om till COM4 och då fungerade din type-variant utmärkt. Tackar!
Användarvisningsbild
sodjan
EF Sponsor
Inlägg: 43149
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping
Kontakt:

Re: Logga seriedata i Win-DOS

Inlägg av sodjan »

Då DOS funktionerna skrevs så kanske det var ovanligt med 2-siffriga COM portar (?).
Sado
Inlägg: 84
Blev medlem: 6 april 2007, 14:39:33
Ort: Svealand

Re: Logga seriedata i Win-DOS

Inlägg av Sado »

Så klart. Jag trodde \\.\-sökvägen var för att DOS skulle komma åt COM10 men det är ju tydligen nån Win32-grej. Tidiga DOS hanterade bara 4 portar och dagens Win-DOS verkar alltså klara COM1..COM9.
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 45174
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Re: Logga seriedata i Win-DOS

Inlägg av TomasL »

Nja, maximalt antal är väl troligen fortfarande 256 st, Utan specialdrivisar.
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 45174
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Re: Logga seriedata i Win-DOS

Inlägg av TomasL »

Men för att återgå till ursprunget, varför inte logga med ett terminalprogram i stället.
Användarvisningsbild
sodjan
EF Sponsor
Inlägg: 43149
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping
Kontakt:

Re: Logga seriedata i Win-DOS

Inlägg av sodjan »

Precis! Ladda ner Putty, anslut mot COM porten och kolla datat på skärmen.
Slå på loggning till fil eller markera och copiera direkt från skärmen...
Maalobs
Inlägg: 1299
Blev medlem: 3 februari 2005, 14:35:15
Ort: Stockholm

Re: Logga seriedata i Win-DOS

Inlägg av Maalobs »

Om du säger vilket faktiskt operativsystem du använder, så kan du få relevanta lösningsförslag.
Hur många decennier gammalt är det; är det MS-DOS 6.x med Windows 3.x, eller Windows 9x?
Det låter på din senaste kommentar som att det är där någonstans du ligger, men jag kanske har fel.
Sado
Inlägg: 84
Blev medlem: 6 april 2007, 14:39:33
Ort: Svealand

Re: Logga seriedata i Win-DOS

Inlägg av Sado »

Här pratar vi Windows 10. PuTTY har jag redan men nu ville jag lösa detta på enklaste sätt. Mr Andersson presenterade den enklaste lösningen i inlägg #2 :tumupp:
Maalobs
Inlägg: 1299
Blev medlem: 3 februari 2005, 14:35:15
Ort: Stockholm

Re: Logga seriedata i Win-DOS

Inlägg av Maalobs »

Du har verkligen inte "pratat Windows 10" förrän nu, snarare det motsatta. :)

UNC-sökväg är mycket riktigt en "Win32-grej" och det i sin tur är en kärnfunktion i Windows 10.
Den här delen i artikeln förklarar varför du inte kan använda COM10:
COM1–COM9 are part of the reserved names in the NT namespace, although using the "\\.\" prefix will also work with these device names. By comparison, if you have a 100 port serial expansion board installed and want to open COM56, you cannot open it using "COM56" because there is no predefined NT namespace for COM56. You will need to open it using "\\.\COM56" because "\\.\" goes directly to the device namespace without attempting to locate a predefined alias.
Angående användandet av UNC mot COM-portar från kommandotolken; du har rätt i att det här fungerar:

Kod: Markera allt

type COM1 > test.txt
Medan det här inte fungerar:

Kod: Markera allt

type \\.\COM1 > test.txt
The filename, directory name, or volume label syntax is incorrect.
Jag undrar varför, type är ett inbyggt kommando i cmd.exe.
Det fungerar ju att både skriva och kopiera filer in i COM-porten, även det med inbyggda kommandon:

Kod: Markera allt

echo test > \\.\COM1
copy test.txt \\.\COM1
        1 file(s) copied.
Och det går att manipulera filer via UNC:

Kod: Markera allt

del \\.\C:\test.txt
Märkligt inkonsekvent. :humm:
Skriv svar