1. Aufgabe
Wir möchten Erfassungsgeräte über die
serielle Schnittstelle einlesen, dazu
gibt es SDK's mit Doku, uns fehlt nur
der Programmierer.
Ergebnis der Prozedur soll eine
Textdatei sein, welche den
Speicherinhalt des Erfassungsgerätes
wiedergibt.
Zusatzfunktionen des Erfassungsgerätes,
wie "Batterie wurde gewechselt" soll
ebenso in der Textdatei oder einer
zweiten Textdatei abgespeichert werden.
2. Aufgabe
Eine Downloadbox ermöglicht es ohne PC-
Anschluss, die Daten vom
Erfassungsgerät downzuloaden. Wir
möchten diese Daten via SMS oder PC-
Direktverbindung wieder in eine
Textdatei gespeichert haben. Passender
SMS-Empfänger für den Downloader ist
vorhanden. SDK's und Doku auch.
-----------------------
1. AUFGABE
Auszug aus einer DLL-Beschreibung.
a) Open serial communication port
function Term_CommOpen(Port: PChar) :
Integer; stdcall;
external 'DllTermCommPrj.dll';
Return=1 : Successful
Return=0 : Failed
Port: serial port name (COM1, COM2,
etc.)
b) Close serial communication port
function Term_CommClose :
Integer;stdcall;
external 'DllTermCommPrj.dll';
Return=1 : Successful
Return=0 : Failed
----------------------------
2. AUFGABE
Auszug aus SDK-Doku
 Reading Records
SMS messages sent by the B-3000 to the
receiving PC is as follows:
Data Packet Format: 0x02
Byte # Length (Bytes) Definition
0 1 Packet type
1 1 Record format
2-5 4 B-3000 hardware
number
6-8 3 B-3000 starting
record
number
9-12 4 Reader hardware
number
13-15 3 Reader starting
record
number
16 1 Number of records
…… …… Record
# n
…… …… Record
# n+1
…… ……
……
139 1 Checksum
There are 10 bytes in each record. The
format is as follows:
Record format: 0x01
Length (Bytes) Definition
6 Card Number
4 Time
Note: There are 140 bytes in each SMS
message, the last byte is used as
checksum. The value of the unused bytes
are “0”.
 Calling the receiving PC
B-3000 Sends:
Packet Type: 0x04 (information packet)
Data ID: 0x1B
Information Data: null_data (x)
Checksum: 1 Byte
Format: 0x04 + ID + null_data
(x) + CRC(1)
Receiving PC replies:
0x04 + ID + null_data (x) + CRC
(1)
Notes:
1. null_data: a string of
“0”s, used to
fill the length.
2. This command is used by B-3000 to
call the receiving PC, in order to
verify that it is able to answer.
 Setup the phone number of the
receiving PC
Receiving PC sends:
Packet type: 0x04 information packet
Information ID: 0x23
Information data: (“ ) +
Receiving PC
Phone # (14) (ASCII) + (“)
null_data
(x) +CRC (1)
Checksum: 1 Byte
Format: 0x04 + ID + (“) +
Receiving PC Phone # (14)(ASCII)+
(“)
null_data (x) + CRC (1)
BS-3000 Answers:
0x04+ID+0x0F+null_data (x) +CRC
(1); succeeded
0x04+ID+0xF0+null_data (x) +CRC
(1); failed
Note: This command sets up the
receiving PC’s phone number on
the B-
3000, so it will send data to this
number.
 Re-read Data From the B-3000
Receiving PC Sends:
Packet Type: 0x04 Information packet
Information ID: 0x12
Information Data: B-3000 Hardware
Number (4) + Number of Records (2) +
Starting Record Position (4)
Checksum: 1 Byte
0x04 + ID + B-3000 Hardware
Number (4)+ Number of Records (2) +
Starting Record Position (4) + null_data
(x)+ CRC(1)
B-3000 Answers:
0x04 + ID + 0x0F + null_data(x)
+ CRC(1) ;succeeded
0x04 + ID + 0xF0 + null_data(x)
+ CRC(1) ;failed
Note: This command will return
“failed”
if there are still new records in the B-
3000 that have not yet been uploaded
Archiv für EDV, Telekommunikation