Infos












Anwendungsbeispiel myEthernet: Shared RAM

Projekt

    Das myEthernet verfügt über einen 4 Kilobyte großen SRAM. Ein Teil davon kann als Shared RAM reserviert werden. Dies geschieht über die Konfigurationsdatei des myEthernets, die sich auf der SD-Karte befindet.
    Dieser Shared RAM ist ein Speicherbereich, in welchem das myEthernet Daten ablegen kann. Das myEthernet kann weiterhin Daten aus dem Shared RAM auf einer HTML-Seite ausgeben. Außerdem können an das myEthernet angeschlossene Geräte Daten in den Shared RAM des myEthernet schreiben und aus ihm lesen. Dies geschieht per TWI.

Benötigte Hardware

    In diesem Beispiel soll das myEthernet die Zeichen 'W', 'e', 'l', 't' in den Shared RAM schreiben. Zugleich wird der Inhalt des Shared RAM auf verschiedene Arten auf der Html-Seite ausgegeben.

    Mit Hilfe des Befehls kann man ein Byte im Shared RAM speichern. Dieser wird an das Ende der Adresse in der Adresszeile angehängt. Der Befehl kann auch durch einen Verweis ausgelöst werden.
    Die Pin-Nummer des 1. Bytes des Shared RAM ist 1000. Der Wert, der in den Shared RAM gespeichert werden soll, muss als hexadezimaler Wert übergeben werden, z.B. ?myChangeCmd=°o1000°0x57°



    Will man einen HTML-Verweis einfügen, muss man beachten, dass man die Zeichen ~ und ° durch die Zeichencodes
    (~ = %7E, ° = %B0) ersetzt, da der myEthernet Webserver sonst sämtliche Texteinschlüsse innerhalb der Gradzeichen als Ersetzung interpretiert. Ein Verweis muss z.B. so aussehen:

    Um die aktuellen Werte aus dem Shared RAM auszulesen, wird in den HTML-Quelltext eingegeben. Mit °v1000~%c° wird der Wert entsprechend des Formatierungszeichens formatiert. In diesem Beispiel als ASCII-Zeichen. Mit werden n Bytes ab dem 1. Byte getrennt mit einem Komma ausgegeben. Werden Pinnummern ab 2000 verwendet, wird immer der Wert von 2 aufeinanderfolgenden Bytes ausgegeben.
    Folgende Grafik soll dies verdeutlichen:



    Somit ergeben sich folgende Bereiche für die Pin-Nummern:
      8bit-Werte: Pin 1000-1127
      16bit-Werte: Pin 2000-2063
      32bit-Werte Pin 3000-3031

Vorgehen

    Schritt 1:
    Erstellen Sie eine HTM-Datei mit dem Namen shram.htm.

    Schritt 2:
    Fügen Sie den folgenden Quelltext ein.



    Schritt 3:
    Kopieren Sie anschließend die Datei auf die MicroSD-Karte.

    Schritt 4:
    Stecken Sie danach die MicroSD-Karte in das myEthernet und schließen Sie das myEthernet an eine Spannungsversorgung an. Verbinden Sie es dann mittels eines Netzwerkkabels mit einem PC.

    Schritt 5:
    Öffnen Sie die soeben erstellte Seite in einem Webbrowser. Dazu wird die zugewiesene IP-Adresse und der Name der Datei in die Adresszeile eingegeben, z.B. http://192.168.178.96/shramrd.htm

    Schritt 6:
    Anfangs befinden sich zufällige Werte im Shared RAM. Klicken Sie auf die 4 Links. Dadurch werden nacheinander die Buchstaben
      'W' (1. Byte),
      'e' (2. Byte),
      'l' (3. Byte),
      't' (4. Byte)
    in den Shared RAM geschrieben. Unter den Links werden die Werte, die sich im Shared RAM befinden, auf der Website ausgegeben.

    Unten befinden sich Bildschirmfotos der Webseiten.


    Seite vor dem Anklicken der 4 Links

    Seite nach dem Anklicken der 4 Links

Der Shared EEPROM

    Daten, die im Shared RAM gespeichert sind, gehen verloren, wenn das myEthernet von der Spannungsversorgung getrennt wird. Daher existiert neben dem RAM auch ein EEPROM, in dem Daten permanent gespeichert werden. Die Größe des Shared EEPROM kann ebenfalls über die Konfigurationsdatei des myEthernets festgelegt werden.

    Beim Benutzen des EEPROM gilt jedoch zu beachten, dass man auf ihm nur eine begrenzte Anzahl von Schreibvorgängen durchführen kann. Daher sollte man z.B. nicht jede Minute Messwerte in den EEPROM schreiben.
    Der Shared EEPROM wird mit Ausnahme der Pinnummern genauso ausgelesen und beschrieben wie der Shared RAM. Statt der Ports 1000, 2000 und 3000 werden beim EEPROM die Ports 5000, 6000 und 7000 verwendet.



Downloads

Einkaufsliste:


««« zurück zur Bildergalerie  

myMCU Seminare

Wir bieten Ihnen
online Seminare zur Mikrocontroller-Programmierung
von AVR und ARM Prozessoren an.

SiSy Sprechstunde

Ab sofort können Sie online an unserer kostenlosen
SiSy-Sprechstunde
teilnehmen.
Sie findet jeweils am ersten Dienstag im Monat statt.

AVR-Produktlinie

mySmartUSB

STM32-Produktlinie

Wir suchen noch Regionalpartner!

In Ihrem Land gibt es noch keinen Regionalpartner?
Nehmen Sie mit uns Kontakt auf und vertreiben Sie unsere Produkte in Ihrer Region!

Wir sind Sponsor

... von Roboternetz, der größten deutschen Roboter-Community »»»

Hinweis

Sie müssen Ihre Cookies eingeschalten haben, um unseren Shop vollständig nutzen zu können.