mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Ausgang des AVR von Pollin über die Webpage schalten


Autor: Matze .. (avr-rookie)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo

Ich habe auf dem AVR von Pollin U. Radigs ETH_M32_EX_SOFT 
aufgespielt...funktioniert super.

Wie kann man jetzt einen Ausgang über die Webseite schalten?
Habe vieles probiert im Sourcecode der webpage.h aber nix geht.

Auszug webpage.h

"<input type=\"checkbox\" name=\"OUT\" value=\"A\"%PORTC0>"
"Port C Pin 0<br>\r\n"
...so gehts schon mal nicht und ist bestimmt total flasch ;)

Am parallelen Anschluß hängt das Relais-Addonboard von Pollin.

Autor: Sascha Weber (sascha-w)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

was genau mit dem Parameter passiert steht in "httpd.c" und dort in
>> void httpd_header_check (unsigned char index)

für jedes Port/Pin ist dort eine entsprechende Auswertung drin


Sascha

Autor: Matze .. (avr-rookie)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
das müsste ja dann das hier sein:

switch (eth_buffer[a+1])
{
case ('A'):
PORT_tmp = PORT_tmp + 1;
break;

So müsste es ja jetzt als eingang definiert sein, nur wie mache ich 
einen ausgang draus?

Autor: Sascha Weber (sascha-w)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
nein

die Webpage sendet für die entsprechende Checkbox OUT=A wenn sie gesetzt 
ist oder OUT= wenn sie nicht gesetzt ist. Wobei der Buchstabe die 
Port/Pin Zuordnung herstellt.
In der switch Verzweigung wird der Portwert aus den entsprechenden 
übermittelten Buchstaben zusammengesetzt.
>>
'A' -> PORT_tmp = PORT_tmp + 1 (==Bit 0)
'B' -> PORT_tmp = PORT_tmp + 2 (==Bit 1)
u.s.w.
hier kannst du den Buchstaben die entsprechenden Bits zuordnen, oder 
noch weiter Befehle hinzufügen.

weiter unten wird der Wert aus Port_tmp dem entsprechendem Port 
zugeordnet
>>
PORTA = PORT_tmp;

wenn's nun PortC sein soll, so änderst du das hier einfach ab
>>
PORTC = PORT_tmp;
und schon kannst du PC0 bis PC2 schalten.

Der Nachteil dieser Lösung ist natürlich, das immer alle im <form> 
enthaltenen Werte gesendet werden, und damit auch alle Portbits den 
Zustand aus der Website bekommen.

Sascha

Autor: Matze .. (avr-rookie)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Vielen Dank für die schnelle Hilfe. :)

...ach da muss es geändert werden. Die Zuordung war mir schon klar, aber 
diese Zeile hab ich wohl überlesen.

Ja das es eine schlechte Lösung ist, ist mir klar ist ja nur zum testen.

Der Ausgang soll ja mal nicht nur über die Webseite geschaltet werden, 
sondern soll auch auf ein MagicPaket reagieren.

Aber dafür muss ich mich noch mit dem Aufbau des MP beschäftigen und wie 
ich es auswerten/nutzen kann.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.