Ρυθμίσεις για τη ζυγαριά ταμείου DIBAL
1 2 3 4 5 6 7 8 9 10 11 12 |
[Scale] decimalexists=0 hexcommands=$39$38$30$30$30$30$30$31$0D$0A scale_price_for=6 scale_price_from=3 parity=None stopbits=1 databits=8 BaudRate=9600 Port=COM3 Title=scale datafolder=C:Temp |
Οι ρυθμίσεις της σειριακής πρέπει να είναι 9600, n, 8, 1.
Προς τη ζυγαριά στέλνουμε ένα string με τα πεδία: 98, τιμή 5 ψηφίων, και checksum, ακολουθούμενα από CRLF.
Το Checksum μπορούμε να το βρούμε ως εξής:
-
Αθροίζουμε όλα τα ψηφία της τιμής (P1–P5) → Sum1
-
Το άθροισμα αυτό (Sum1) το κάνουμε XOR με όλα τα στοιχεία (χαρακτήρες/bytes) του string → Sum2
-
Τέλος, checkSum = Sum1 XOR Sum2
Η πιο απλή επικοινωνία που μπορείτε να κάνετε με τη ζυγαριά είναι να στέλνετε συνέχεια 98000001CRLF
και η ζυγαριά να σας επιστρέφει το βάρος.
Το format της απάντησης από τη ζυγαριά είναι: 9900031600000004CRLF
-
99
: κωδικός απάντησης -
0
: σωστή λήψη -
00316
: το βάρος (στο παράδειγμα, 316 γραμμάρια—στα 5 ψηφία, τα 3 τελευταία θεωρούνται δεκαδικά) -
0
-
000000
-
4
: checksum, το οποίο υπολογίζεται ως το άθροισμα των ψηφίων του99000316