-
        

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 13

Thema: Art Mininetzwerk ATMEGA

  1. #1
    Tux12Fun
    Gast

    Art Mininetzwerk ATMEGA

    Anzeige

    Hallo,

    ich möchte zwei ATMEGA32 ziemlich schnell miteinander Reden lassen. Ideal 10Mbit, mehr brauchts nicht zu sein. Vielleicht könnt ihr mir ja ein paar Tipps dazu geben.

    Was ich bisher Probiert habe.

    Eine Übertragung die folgendermaßen aufgebaut ist
    Eine Eins wird bei meinem ATMEGA als 5µs Strom auf einem Pin
    und eine Null as 10µs gesendet. Dazwischen 3µs Pin auf low. Das Funktioniert auch so halbwegs. Damit sich das ganze Synchronisiert kommt nach jedem Packet (12 Zeichen 30µs Pause. Damit der 2. Controller das neue Packet erkennt. Jedoch ist das ganze nicht so schnell wie erhofft. das ich einen Buchstaben ja mit 8 Bit Auflösen muss, damit ich alle Zeichen also auch Binär übertragen kann.

    Ich denke für diese Zwecke wird es bessere Lösungen als meinen Versuch geben.

    Was ich aufbauen möchte ist eine Art Ethernet. Nur ohne den Overhead den ich nicht brauche. Jedes Gerät soll eine ID bekommen (art MAC) mit der soll jeder Client Ansprechbar sein. Außerdem würde ich gern ein CSMA/CD implementieren, damit alle miteinander Reden können.

    Nur wenn ich das mit meiner Lösung baue, dann ist der Controller nur noch mit Lesen beschäftigt. Bzw kommt auch da nicht mehr mit. Für die Pausen habe ich beim testen delay verwendet, was ja an sich auch noch nicht so optimal ist. Die Reichweite sollte ca. ein Sternnetzwerk von 100 Meter sein. Die Anzahl der Clients weiß ich leider noch nicht. Aber so ca 20 - 30 werden es schon werden.

    An den Can Controller hatte ich schon gedacht. Dieser würde schon mal 1 Mbit schaffen und mit die CSMA CD Geschichte abnehmen, jedoch muss dann soweit ich weiß jeder Ausleger des Netzwerkes Terminiert werden oder ?

    Deßhalb würde ich mich über alle Vorschläge freuen, die ihr mir so anbieten könntet.

  2. #2
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    08.07.2004
    Ort
    Südhessen
    Beiträge
    1.312
    Ein Atmega32 hat maximal 16 MHz, da kannst Du keine 10Mbit erreichen, es sei denn Du machst es parallel, dann sinds aber keine 10Mbit mehr.
    Angenommen, Du bräuchtest 2 Takte, um ein Bit auf die Pins zu legen (was unmöglich ist, wenn Du Daten schicken möchtest, da brauchst Du sehr viel mehr), dann würde sich das Bit mit 8 MHz ändern (also 16 MHz durch 2 Takte).
    D.h. 10Mbit sind mit 16 MHz ohne weitere ICs nicht möglich.


    Für Dein Vorhaben würde ich Dir Funk empfehlen. Da ist schon alles drin:
    CSMA/CD, alle Clients verbunden.
    Und auf Microcontroller.net gibt es einen Code, der dem Ethernet ähnlich ist, mit minimalem Overhead, um jeden Client per Adresse (MAC) anzusprechen.

  3. #3
    Tux12Fun
    Gast
    Bin gerade auf den ENC28J60 gestoßen, der hört sich ganz intressant an

  4. #4
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    08.07.2004
    Ort
    Südhessen
    Beiträge
    1.312
    Naja, damit haste dann wieder physikalisch "richtiges" Ethernet. Was Du in Software draus machst (den Stack weglassen, etc) ist ja Deine Sache.

    Aber wenn Du eh Ethernet machst, dann machs doch gleich richtig, dann kannste auch mit dem PC kommunizieren.

  5. #5
    Erfahrener Benutzer Robotik Einstein Avatar von Vitis
    Registriert seit
    06.01.2005
    Ort
    Südpfalz
    Alter
    43
    Beiträge
    2.240
    wobei du den ENC28J60 auch nicht mit 10MBit Nutzdaten
    füttern werden kannst mit nem M32
    Wofür brauchst Du so hohe Datenraten?
    Vor den Erfolg haben die Götter den Schweiß gesetzt

  6. #6
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    11.12.2007
    Ort
    weit weg von nahe Bonn
    Alter
    33
    Beiträge
    2.383
    nen WIZ812MJ mit integriertem TCP/IP stack kann man mit ca. 2 MBIT füttern, mehr gibt die SPI schnittstelle nicht her, wie es mit dem parallel bus aussieht kann ich nicht sagen, bin bisher nicht dazu gekommen es zu testen

  7. #7
    Tux12Fun
    Gast
    hohe Datenraten brauche ich, da ich evtl. auch mal ein MP3 zwischen den Controllern übertragen will. Es müsen auch nicht genau 10 Mbit sein, dachte nur, das etwas in der Größenordnung evtl. noch realisierbar ist.
    Zur Not reicht auch ein bischen weniger.

  8. #8
    Erfahrener Benutzer Roboter Genie Avatar von BurningBen
    Registriert seit
    02.09.2008
    Ort
    Darmstadt
    Alter
    26
    Beiträge
    842
    Ein gutes mp3 hat doch auch nur rund 200 kbit/s

    Da sollte doch auch deutlich weniger reichen oder?

  9. #9
    Tux12Fun
    Gast
    Ja, da das stimmt schon, aber da ich mehrere Clients an die Leitung hängen möchte, habe ich ja auch ein wenig das Data Collision Problem, deshalb hätte ich halt gern mehr Power auf der Leitung, wie gesagt, es müssen nicht unbedingt 10 MBit sein, ich möchte halt nur ein wenig mehr haben, damit ich bei mehreren Clients kein Problem bekomme. Zur not würden auch 1 -2 Mbit reichen

  10. #10
    Tux12Fun
    Gast
    Ist es möglich in einem AT Meaga32 einen Stack an zu legen und auf diesen von einem zweiten zuzugreifen, als währe er auch im zweiten ATMega ?

    Die die Idee hatte ich damit sich ein Atmega alleine um so ein Psydo Netzwerk kümmern könnte und ein zweiter die Packete verarbeiten würde.

Seite 1 von 2 12 LetzteLetzte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •