Låsa baudrate på applikation i Win textmode

Elektronik- och mekanikrelaterad mjukvara/litteratur. (T.ex schema-CAD, simulering, böcker, manualer mm. OS-problem hör inte hit!)
Användarvisningsbild
vfr
EF Sponsor
Inlägg: 3515
Blev medlem: 31 mars 2005, 17:55:45
Ort: Kungsbacka

Låsa baudrate på applikation i Win textmode

Inlägg av vfr »

Jag har en applikation i Win text mode som pratar serieport. Applikationen har bara stöd för baudrate upp till 19200 och jag kan inte ändra på detta, medan andra ändan kan klara av mycket högre. Finns det något sätt att lura applikationen? Typ t.ex att på något sätt låsa baudraten till en viss hastighet på porten innan applikationen startas och på det viset få en högre hastighet.

Alternativt köra den virtuellt med comporten utmappad till en fysisk port och där ha möjlighet att låsa baudraten. VitualBox som jag kör, verkar inte ha den möjligheten rakt av i inställningarna iallafall.

Någon som har några idéer?
sodjan
EF Sponsor
Inlägg: 43249
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Re: Låsa baudrate på applikation i Win textmode

Inlägg av sodjan »

Antingen så har applikationer anrop internt för att sätta
COM porten, och då blir det det applikationen vill att det ska vara.
Eller så sätter man COM porten innan applikationen startas, och då
skulle man kunna sätta den till vad man vill innan.

Fixa applikationen, eller se till att den andra sidan kör en kompatibel hastighet.
Användarvisningsbild
BEEP
EF Sponsor
Inlägg: 1593
Blev medlem: 21 januari 2006, 16:57:56
Ort: Mölndal

Re: Låsa baudrate på applikation i Win textmode

Inlägg av BEEP »

Troligen för svårt men du kanske kan använda en hexeditor för att hitta och ändra baudrate i filen.
rehnmaak
Inlägg: 2204
Blev medlem: 13 december 2005, 01:43:41

Re: Låsa baudrate på applikation i Win textmode

Inlägg av rehnmaak »

Du får nog hacka programmet. Vilket program är det?

Sök i exe-filen efter 00 4b 00 00 (19200) och byt ut till tex 00 C2 01 00 (115200 bps)
Användarvisningsbild
vfr
EF Sponsor
Inlägg: 3515
Blev medlem: 31 mars 2005, 17:55:45
Ort: Kungsbacka

Re: Låsa baudrate på applikation i Win textmode

Inlägg av vfr »

Fixa applikationen kan jag inte göra eftersom den inte är min. Och företaget som gjorde den finns inte mer.

Den ställer säkert baudraten inifrån applikationen eftersom den har möjlighet att köra olika baudrate. Dock max 19200. Jag vill köra högre hastighet och andra änden fixar det utan problem.

Programmet är ett Win32 text mode program så det använder säkert Win API-anrop för att ställa baudrate, och då tror jag inte fuskisvarianter med att leta byte funkar. Jag gissar att det var för att modifiera en DOS-sättning av baudraten.

Hade det varit ett DOS-program så kunde man gjort ett TSR-program som låg i bakgrunden och kollade att baudraten var den rätta (min höga baudrate) och i annat fall ställa om den till det.

Finns det något sätt att "gå in" utifrån på en använd COM-port, under Win32, och ställa om baudraten, typ som ett TSR-program skulle göra? Det finns ju en massa hooks och dylikt för att göra intrikata saker med en port i användning.
sodjan
EF Sponsor
Inlägg: 43249
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Re: Låsa baudrate på applikation i Win textmode

Inlägg av sodjan »

Alternativen som jag ser det :

- Kör 19200 och var glad.
- Skaffa ett annat/nyare program som gör samma sak.
Användarvisningsbild
AndLi
Inlägg: 18261
Blev medlem: 11 februari 2004, 18:17:59
Ort: Knivsta
Kontakt:

Re: Låsa baudrate på applikation i Win textmode

Inlägg av AndLi »

Jag har lite samma problem, använder dock ftdi serieports chip i egen hårdvara.
Funderade på om det gick att göra en egen drivrutin till den som alltid skickar samma baudrate till chipet oberoende av vad ev program egentligen vill sätta.
Användarvisningsbild
vfr
EF Sponsor
Inlägg: 3515
Blev medlem: 31 mars 2005, 17:55:45
Ort: Kungsbacka

Re: Låsa baudrate på applikation i Win textmode

Inlägg av vfr »

Jo, det är ju dom uppenbara alternativen. Men tanken slog mig att om det skulle vara möjligt att låsa baudraten innan applikationen startar, så skulle det kunna lösa problemet. Och hittar man bara en virtuell miljö som supportar det så skulle det vara biff. Eller som sagt TSR-varianten eller något liknande.

Det är fullt möjligt att jag måste leva med dom befintliga alternativen, men jag vill ändå utforska möjligheten till en lösning.
Användarvisningsbild
vfr
EF Sponsor
Inlägg: 3515
Blev medlem: 31 mars 2005, 17:55:45
Ort: Kungsbacka

Re: Låsa baudrate på applikation i Win textmode

Inlägg av vfr »

AndLi> Jo det skulle ju kunna vara en lösning för mig också om du hittar något.
rehnmaak
Inlägg: 2204
Blev medlem: 13 december 2005, 01:43:41

Re: Låsa baudrate på applikation i Win textmode

Inlägg av rehnmaak »

Klart som sjutton det går att patcha. Det är ofta enklare än man tror.

Men, men, orkar du inte ens försöka så får du väl leva med det program du har eller fixa något annat prog.
Användarvisningsbild
Glenn
Inlägg: 36670
Blev medlem: 24 februari 2006, 12:01:56
Ort: Norr om Sthlm
Kontakt:

Re: Låsa baudrate på applikation i Win textmode

Inlägg av Glenn »

frågan är väl om man lyckas fula upp hastigheten på porten, kommer programmet i fråga att skicka ut data snabbare ?

Känns lite som att sätta på en hastighetsmätare som går till 320km/h på sin gamla VW bubbla.. kommer den att gå i 320 då ? :)
Användarvisningsbild
AndLi
Inlägg: 18261
Blev medlem: 11 februari 2004, 18:17:59
Ort: Knivsta
Kontakt:

Re: Låsa baudrate på applikation i Win textmode

Inlägg av AndLi »

glenn: det beror ju helt på programmet, jag har gjort ett liknande hack på en ethernet/ serieports enhet och där matar det PC programmet glatt på så fort det får svar/är klar med utsändningen. Så oftast ska det inte vara några problem.
Användarvisningsbild
vfr
EF Sponsor
Inlägg: 3515
Blev medlem: 31 mars 2005, 17:55:45
Ort: Kungsbacka

Re: Låsa baudrate på applikation i Win textmode

Inlägg av vfr »

Där håller jag inte med, Glenn! Det är ju själva inställningen på UART:en, eller drivrutinen, som du ändrar. Jag skulle mer likna det vid att ändra inställningen på farthållaren och sedan kommer bilen att gå så fort. Så där ser jag inte några problem egentligen.
Användarvisningsbild
Glenn
Inlägg: 36670
Blev medlem: 24 februari 2006, 12:01:56
Ort: Norr om Sthlm
Kontakt:

Re: Låsa baudrate på applikation i Win textmode

Inlägg av Glenn »

Men bara för att porten är låst på en annan hastighet pratar ju inte applikationen så fort.

Ska man dra fordonsjämförelsen ett steg till så går inte moppen fortare för att man kör på 70-väg istället för 50-väg :)

..Dock beror det ju helt på hur applikationen är skriven..
Användarvisningsbild
mri
Inlägg: 1165
Blev medlem: 15 mars 2007, 13:20:50
Ort: Jakobstad, Finland
Kontakt:

Re: Låsa baudrate på applikation i Win textmode

Inlägg av mri »

Som du säger, det beror på hur applikationen är skriven, men det skulle vara mycket ovanligt och märkligt om applikationen själv försöker upprätthålla en viss datatakt. Det normala är ju att ett program antingen ligger och väntar på input från användaren, eller på att data anländer eller blivit sänt på kommunikationsporten. Dvs, överföringshastigheten kommer att bero av portens konfigurering.

Angående patchning av applikationen. Om det är en äkta Win32 applikation borde det vara möjligt att hitta anropen (i exefilen) till Win32 systemanropen som initierar och ställer in hastigheten. Säkert en del jobb och research om man inte gjort det tidigare, men det går absolut.
Skriv svar