Gambas France BETA


Pas de compte ? Incription

echange rs232 et gambas2

Ce sujet est résolu.

1
AuteurMessages
djalilosse#1 Posté le 20/6/2012 à 17:28:05
la science est vastej'ai utilisé le code suivant;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
PRIVATE SComm AS SerialPort CONST None AS INTEGER = 0

PRIVATE Rx AS STRING PUBLIC SUB Form_Open()
SComm = NEW SerialPort AS "SComm"
SComm.PortName = "/dev/ttyUSB0"
SComm.Speed = "19200"
SComm.Parity = 0
SComm.DataBits = "8"
SComm.StopBits = "1"
SComm.FlowControl = 0
TRY
SComm.Open()

IF ERROR THEN

TRY
SComm.PortName = "/dev/ttyS0"
SComm.Speed = "19200"
SComm.Parity = 0
SComm.DataBits = "8"
SComm.StopBits = "1"
SComm .FlowControl = 0

SComm.Open()

IF ERROR THEN
Message("No Serial Come Exiting...")
QUIT
ENDIF

ENDIF

END 'Private RX

'******** Incoming serial data ********
PUBLIC SUB SComm _Read()
SLEEP 0.025
TRY READ #SComm , Rx, Lof(SComm )
IF ERROR THEN
Message.info(No received data!)
ENDIF

IF Len(Rx) > 8 THEN
TextBox1.Text= CStr(Rx)
END IF

END

PUBLIC SUB Form_Close()
SComm.Close()
QUIT
END
source http://cobecoballes-gambas.blogspot.com/2011/05/serial-comm-port-interface-using.html
mais j'ai un message d’erreur??!!
voici le message qui s'affiche après l’exécution
"Unexpected'- Read' a la ligne 37 dans fmain.class". vous pouvez me expliquer pour quoi ce message et quelle est la solution !! merci a vous.
voici la fenêtre du programme
hier c'est de l'histoire demain c'est un mystère mais aujourd'hui c'est un cadeau
djalilosse#2 Posté le 20/6/2012 à 21:29:33
la science est vasteJ'ai trouvé un autre exemple, il y a quelques (--) mais ca marche pour le moment,
hier c'est de l'histoire demain c'est un mystère mais aujourd'hui c'est un cadeau
spheris#3 Posté le 2/7/2012 à 13:41:10
djalilosse,
ton erreur est toute simple :

Lorsque tu pose un composant serial sur ton projet il a le nom Serial1 par défaut.
Et dans ton code tu l'as nommé : SComm.

forcément cela ne marche pas à la ligne 37 : SComm _Read()

pour que cela marche il faut mettre Serial1_read() ou renommer ton composant Serial.

A+
;)
1