Hallo,
ich bin mir nicht sicher ob ich hier richtig bin???
Ich habe hier ein fox-board mit einem AVR über zwei MAX485 verbunden, je
einen 120 ohm Terminator dran gehängt und versuche jetzt über die
sagenhafte Strecke von 40 cm zu kommunizieren.
Hier das Ergebnis:
Beispiel 1:
1 | [root@axis- /root]99# /mnt/flash/rs485tx.out test12345678test
|
2 | RX = 0x00
|
3 | RX = 0x26 [&]
|
4 | RX = 0xFFFFFF98
|
5 | RX = 0x5F [_]
|
6 | RX = 0x72 [r]
|
7 | RX = 0x65 [e]
|
8 | RX = 0x73 [s]
|
9 | RX = 0x70 [p]
|
10 | RX = 0x6F [o]
|
11 | RX = 0x6E [n]
|
12 | RX = 0x73 [s]
|
13 | RX = 0x65 [e]
|
14 | RX = 0x5F [_]
|
15 | RX = 0x0A
|
16 | RX = 0x74 [t]
|
17 | RX = 0x65 [e]
|
18 | RX = 0x73 [s]
|
19 | RX = 0x74 [t]
|
20 | RX = 0x31 [1]
|
21 | RX = 0x32 [2]
|
22 | RX = 0x33 [3]
|
23 | RX = 0x34 [4]
|
24 | RX = 0x35 [5]
|
25 | RX = 0x36 [6]
|
26 | RX = 0x37 [7]
|
27 | RX = 0x38 [8]
|
28 | RX = 0x74 [t]
|
29 | RX = 0x65 [e]
|
30 | RX = 0x73 [s]
|
31 | RX = 0x74 [t]
|
32 | RX = 0x3B [;]
|
33 | &_response_
|
34 | test12345678test;
|
Beispiel 2:
1 | [root@axis- /root]99# /mnt/flash/rs485tx.out test12345678test
|
2 | RX = 0xFFFFFF80
|
3 | RX = 0xFFFFFF82
|
4 | RX = 0xFFFFFF82
|
5 | RX = 0xFFFFFFFA
|
6 | RX = 0x25 [%]
|
7 | RX = 0xFFFFFF95
|
8 | RX = 0xFFFFFFCD
|
9 | RX = 0xFFFFFFC1
|
10 | RX = 0xFFFFFFBD
|
11 | RX = 0xFFFFFFB9
|
12 | RX = 0xFFFFFFCD
|
13 | RX = 0xFFFFFF95
|
14 | RX = 0x7D [}]
|
15 | RX = 0x29 [)]
|
16 | RX = 0xFFFFFFA2
|
17 | RX = 0xFFFFFF95
|
18 | RX = 0xFFFFFFCD
|
19 | RX = 0xFFFFFFD1
|
20 | RX = 0xFFFFFFC5
|
21 | RX = 0xFFFFFF92
|
22 | RX = 0xFFFFFF9A
|
23 | RX = 0xFFFFFFA2
|
24 | RX = 0xFFFFFFAA
|
25 | RX = 0xFFFFFFB2
|
26 | RX = 0xFFFFFFBA
|
27 | RX = 0xFFFFFFC2
|
28 | RX = 0xFFFFFFA2
|
29 | RX = 0xFFFFFF95
|
30 | RX = 0xFFFFFFCD
|
31 | RX = 0xFFFFFFD1
|
32 | RX = 0xFFFFFFED
|
33 | RX = 0x02
|
34 |
|
35 | Strg+C
|
Slave in Bascom:
1 | $regfile = "m32def.dat"
|
2 | $crystal = 14745600
|
3 |
|
4 | '$baud = 9600
|
5 | $baud = 115200
|
6 |
|
7 | Config Print0 = Portd.6 , Mode = Set
|
8 |
|
9 | Config Pind.6 = Output 'set the direction yourself
|
10 |
|
11 |
|
12 |
|
13 | Dim Myadr As String * 3
|
14 | Dim Resp As String * 200
|
15 |
|
16 | Do
|
17 |
|
18 |
|
19 | Input Resp ' get response
|
20 | Waitms 200
|
21 | Print "000_response_" ; Resp ; ";"
|
22 |
|
23 | Loop
|
Das Ergebnis in Beispiel 2 kann man ja noch im Programm abfanngen, aber
in Beispiel 1 wird der Anfang verstümmelt?!
wenn jemand eine Idee hat .....
PS: die beiden Teilnehmer haben keine gemeinsame Masse!!