๐Ÿš€ go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: be.comp.programming
3 messages
3 total messages Started by liessens Tue, 15 Mar 2005 12:41
implementatie protocol bovenop RS232
#1471
Author: liessens
Date: Tue, 15 Mar 2005 12:41
31 lines
2459 bytes
Hallo,


Ik moet voor mijn werkgever een procotol implementeren dat gebruik maakt
van de seriele poort (RS232) voor communicatie met een externe device.
Het protocol heeft zijn eigen header die verpakt moeten worden tussen
een STX en ETX byte (start en end-of-frame) met eventueel een DLE byte
voor byte-stuffing.

In eerste instantie dacht ik een DLL te maken in C en deze dan te
gebruiken in het uiteindelijke produkt dat in FoxPro ontwikkeld is.
Aangezien mijn collega's noch ik erg geroutineerd zijn in C zou het
echter gemakkelijker** zijn om alles in FoxPro te ontwikkelen. Naar de
toekomst toe zou dit ook het onderhoud en bugfixes vergemakkelijken.

In het protocol-headers zitten allerlei types velden:
- ascii karakters (7-bit , right padded)
- integer velden in Binary Coded Decimal codering (left-padded)
   dus 29 wordt gecodeert als 2 en 9 (bin: 0010 1001)
- bitvelden, 1 bit per veld, left-padded tot volledige byte
- velden met variabele lengte (2 eerste bytes duiden lengte aan)
- hexadecimale velden
- 16-bit CRC

Gegeven deze details kan iemand (FoxPro/VB kenner) me argumenteren of
het uberhaupt (on)mogelijk is een protocol met zulke specs te 
implementeren in FoxPro/VB***? Voor RS232 zouden we mscomm32.ocx willen 
gebruiken.

** ivg met leren werken met C + maken van DLL, nieuwe IDE, debugger etc.
*** IMHO zijn FoxPro en VB erg vergelijkbare programmeertalen
Re: implementatie protocol bovenop RS232
#1472
Author: Sinna
Date: Tue, 15 Mar 2005 14:28
40 lines
2634 bytes
liessens wrote:
> Hallo,
> 
> 
> Ik moet voor mijn werkgever een procotol implementeren dat gebruik maakt
> van de seriele poort (RS232) voor communicatie met een externe device.
> Het protocol heeft zijn eigen header die verpakt moeten worden tussen
> een STX en ETX byte (start en end-of-frame) met eventueel een DLE byte
> voor byte-stuffing.
> 
> In eerste instantie dacht ik een DLL te maken in C en deze dan te
> gebruiken in het uiteindelijke produkt dat in FoxPro ontwikkeld is.
> Aangezien mijn collega's noch ik erg geroutineerd zijn in C zou het
> echter gemakkelijker** zijn om alles in FoxPro te ontwikkelen. Naar de
> toekomst toe zou dit ook het onderhoud en bugfixes vergemakkelijken.
> 
> In het protocol-headers zitten allerlei types velden:
> - ascii karakters (7-bit , right padded)
> - integer velden in Binary Coded Decimal codering (left-padded)
>   dus 29 wordt gecodeert als 2 en 9 (bin: 0010 1001)
> - bitvelden, 1 bit per veld, left-padded tot volledige byte
> - velden met variabele lengte (2 eerste bytes duiden lengte aan)
> - hexadecimale velden
> - 16-bit CRC
> 
> Gegeven deze details kan iemand (FoxPro/VB kenner) me argumenteren of
> het uberhaupt (on)mogelijk is een protocol met zulke specs te 
> implementeren in FoxPro/VB***? Voor RS232 zouden we mscomm32.ocx willen 
> gebruiken.
> 
> ** ivg met leren werken met C + maken van DLL, nieuwe IDE, debugger etc.
> *** IMHO zijn FoxPro en VB erg vergelijkbare programmeertalen

Als je strikte timings moet kunnen halen / garanderen, dan valt VB 
sowieso af en kun je best in C(++) low-level gaan programmeren. Ttz. 
geen OCX-gedoe die de zaak onnodig vertraagt.
Ook data-conversies doe je beter in C(++), VB is niet gemaakt om veel 
mee te rekenen.

Sinna
Re: implementatie protocol bovenop RS232
#1402
Author: edg
Date: Sun, 20 Mar 2005 11:38
18 lines
1701 bytes
"liessens" <liessens@gmx.net> schreef in bericht 
news:4236d7d4$0$1820$6c56d894@reader0.news.be.easynet.net...
> Hallo,
>
>
> Ik moet voor mijn werkgever een procotol implementeren dat gebruik maakt
> van de seriele poort (RS232) voor communicatie met een externe device.
> Het protocol heeft zijn eigen header die verpakt moeten worden tussen
> een STX en ETX byte (start en end-of-frame) met eventueel een DLE byte
> voor byte-stuffing.
>
> In eerste instantie dacht ik een DLL te maken in C en deze dan te

   In C++ kan je gebruik maken van de winapi CreateFile, WriteFile, etc 
functies om toegang te krijgen tot te serie๏ฟฝle poorten . Een Dll of ocx heb 
je daarvoor niet nodig. De Winapi functies zijn waarschijnlijk ook wel 
toegankelijk in andere programmeertalen.
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads