Forum: Mikrocontroller und Digitale Elektronik RS485 Foxboard <==> AVR


von mki (Gast)


Angehängte Dateien:

Lesenswert?

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!!

von mki (Gast)


Lesenswert?

so, habe jetzt das prob erledigt -- ein max485 (der am foxboard) hatte 
einen defekt am rx :-(

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.