Hallo, wäre hier jemand in der Lage für einen "Bascom-Fuzzi" das Programm ein wenig zu modifizieren und als HEX-File bereitzustellen? Im Original ist das Projekt dafür gemacht, die Daten aus einem TSOPx-IR-Empfänger per UDP ins LAN zu blasen. Für viele auch anders nutzbar wäre das Projekt, wenn man folgende Änderungen vornehmen würde: - Dateneingang für "gewöhnliche" RS232 (TTL)-Daten mit z.B. 9600 baud - die IP-Adresse entweder per Kommando setzen, z.B. wenn im Empfangspuffer ein String mit einem bestimmten Format ankommt "+++<192168003xxx:12345>+++" dann ist das eben keine Nachricht zum Senden, sondern die IP-Adresse nebst Port - oder wenigstens die Segmentadresse (vorletztes Oktett) per Lötbrücke, DIP-Schalter oder BCD-Schalter setzen, es scheinen ja genügend Pins frei zu sein ... Frank http://www.cesko.host.sk/IgorPlugUDP/IgorPlug-UDP%20(AVR)_eng.htm
Der sendet das doch eh per Broadcast, warum sollte man da ne andere IP setzen wollen?
Hallo, > Der sendet das doch eh per Broadcast, warum sollte man da ne andere IP > setzen wollen? * destination IP=192.168.1.255 (broadcast to 192.168.1.xxx adresses) * destination port=6668, source port=6668 * destination MAC=FF-FF-FF-FF-FF-FF (broadcast) Weil die Adresse wenigstens zum Zielnetz (hier 192.168.1.0) passen muss. UDP bsiert auf IP. Was machst du, wenn dein LAN auf 192.168.2.0 oder gar 10.10.10.0 lautet? Jedesmal neu flashen? Wie gesagt, ein Kompromiss wäre es, wenigstens das vorletzte Oktett variabel zu gestalten, weil wohl die meisten (Klasse-C-) Netze mit 192.168. anfangen, aber eben längst nicht alle. Der Port 6668 dürfte auch meistens frei sein, garantiert aber nicht immer. Frank
Okay das stimmt natürlich. Also leider hab ich kein Eagle installiert, deshalb weiß ich nicht was an Pins noch Frei ist am ATMEGA aber auf dem Schematic siehts aus als sei noch PC0-5 frei zusammen mit PB0-1 hätte man da noch "Platz" für ein 8fach Dipschalter. Hab auch mal im Source nachgesehen, das scheint machbar zu sein das als init einzulesen. Bin leider erstmal nen paar Tage weg, aber danach könnt ichs mal versuchen zu modifizieren. Wegen Searialinput hast du das mal versucht ob sich da was tut? So wie es aussieht wird auf jedenfall die Serielle Schnittstelle inistialisiert und gesendet wird auch was. Was mit empfangenen Daten passiert konnt ich so auf die schnelle nicht sehen. Wegen des Ports: Wenn man den ISP Stecker "mißbraucht" + ein paar freie Pins (z.B: wenn man Infrarot raustreicht) könnte man das auch zumindest in nem kleinen Bereich einstellen. Das einzige Problem dabei ist die CRC32 Checksum. Die wird nämlich in den defines berechnet und ist dann natürlich falsch. Im Internen LAN könnte es aber trozdem sein das das Paket ankommt müßte man ausprobieren.
Ok, ich werde erst mal sehen, ob ich es auf dem Steckbrett überhaupt zum Laufen bringe. Keine Ahnung, auf welche Rate der Input-Port eingestellt ist. Aus dem IR-Empfänger kommen die Bits, so, wie sie die Fernbedienung sendet, nur eben um die Trägerfrequenz bereinigt, geregelt und gesäubert. Evtl. kann die Software auch die Baudrate selber finden? Frank
>> .equ BaudRate =20000000/16/57600-0.5 ;set UART baudrate to 57600 >> (for 20MHz=20 000 000Hz) Naja... gehen tut das schon --> Siehe bootloader von PeDa oder ähnliches... Aber da müßtest du dan vieleicht doch selber einsteigen in die Materie, weil das dann doch etwas mehr änderungen am Code benötigt. Auf der Website steht zumindest das auch über die Serielle gesendet wird.
Frank Esselbach wrote: > Weil die Adresse wenigstens zum Zielnetz (hier 192.168.1.0) passen muss. > UDP bsiert auf IP. Was machst du, wenn dein LAN auf 192.168.2.0 oder gar > 10.10.10.0 lautet? Jedesmal neu flashen? Wenn das Ding im selben LAN ist dann nimm einfach 255.255.255.255 Cheers, Roger
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.