Atmel im Ethernet mit Assembler?

Gast #164841
Hi,
bin jetzt ganz neu eingestiegen und hab bis jetzt ein wenig mit
Assembler im Atmega8 programmiert, sprich led's
leuchten/blinken/lauflicht lassen und töne erzeugen. Jetzt frage ich
mich ob es möglich ist einen kleinen WEbserver zu programmieren (so wie
hier im Forum schon oft besprochen)aber nicht mit C sondern mit
Assembler, oder ist das generel nur mit C möglich?
Gruß
Daniel
Gast
Hallo Daniel!

Ich versuche für mein Studium UDP-Packete im LAN zu verschicken. Das
meche ich mit CodevisionAVR. Dabei habe ich bisher mitbekommen, wie
umfangreich die Thematik ist. Es soll Network auf einfachster Ebene
sein.

Wenn du erst wenig Erfahrung in Assembler hast, dann nutze besser C.

Gruß Markus
Gast
NEIN es mit ASSEMBLER ist es UNMÖGLICH ;-) (zumindest der TCP/HTTP teil)
Es funktioniert aber trotzdem!

So überaus aufwendig und Anfänger ungeeignet isses nun auch wieder
nicht. Nach dem üblichen LCD gespiele hab ich mich gleich an den
Webserver ran gesetzt. Inzwischen macht der CANoverETH mit UDP und
hostet eine kleine Website im lokalen LAN.

Wer will kann ja mal in den SourceCode reinschielen...
Angehängte Dateien:
Gast
Die Netzwerkkarte und der ATmega32 Controller sind natürlich die
gleichen wie bei Ulrich. Ich hab die Ports aber anders angeschlossen:

PA0-4 -> Adresse (PA5-7 bleiben frei für AD-Messungen)
PC0-7 -> Daten (I2C dafür in software emuliert)
PORTD -> verschiedene Control Leitungen (IORD,IOWR,RST,LED,Taster,..)
PORTB -> SPI und I2C

Auf die MMC Karte musste ich leider verzichten, da ich keinen passenden
DIP-Adapter gefunden hab. Stattdessen werden die HTML Daten auf zwei
externen I2C EEPROMs gespeichert. Der Trick dabei ist: Die beiden Chips
teilen sich eine CLK Leitung haben aber getrennte Daten Leitungen. So
kann man immer zwei Bytes gleichzeitig über den I2C Bus schieben.
Zweimal AT24c512 ergibt also 128 kB Webspace. Im Zip ist ein Tool
enthalten mit dem die HTML, JPG und CSS Dateien compiliert und in den
Webserver hochgeladen werden können. ( make upload )

Außerdem ist noch ein MCP2515 CAN Controller mit von der Partie. Der
gestattet es dem Microcontroller, den CAN Bus über UDP auf den PC
weiterzuleiten. Die Software im pcrc Verzeichnis (QuickHack basierend
auf dem Qt-Toolkit (www.troll.no)) zeigt dann an was so los ist auf dem
CAN Bus. Später soll das dann auch mit jedem beliebigen WebBrowser
möglich sein. Das CAN Protokoll ist aber noch nicht ganz fertig...

Achso: An Pin PA7 wird die CAN Bus Versungsspannung gemessen. Bei einer
Spannung von ~ 10 Volt oder weniger wird über Pin PD5 der LM2575-T5
Switching Regulator, der die Netzwerkkarte mit Strom versorgt,
abgeschaltet. Bei über 12 Volt wird sie dann wieder eingeschaltet. Das
sollte meine Batterie schonen. Jetzt hab ich aber eine Netzwerkkarte
(ohne BNC) gefunden die eh bloß noch 0,05 A braucht. Deshalb ist das
ein- und ausgeschalte eigentlich nicht mehr nötig. Die ursprüngliche
Karte wollte doch tatsächlich das zehnfache haben, da hat sich der
Switch schon eher gelohnt.

Ich werd jetzt noch mal ein Schema mit den ganzen Bauteilen malen..
Gast
so hier sind die eagle files. ich hoffe ich hab das richtig gezeichnet.
wenn ich wieder säure da hab werd ich das board mal ausprobieren.

noch fragen?
Angehängte Dateien:

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 21 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.