Dieser Beitrag wurde auf Wunsch des Autors geloescht.
Hi, ich wuerde gern zwei bis drei Platinen nehmen. Zur RTC muss ich sagen, dass es vll. geschickter ist, da einen NTP (network time protocol)-Clienten per Software zu implementieren. Dann hat man immer gleich eine mit den anderen Rechnern synchronisierte Zeit. Natuerlich hat man mit einer RTC auch die Moeglichkeit einen NTP-Server zu betreiben, aber auch eine Quarz-RTC hat halt ihre Gangungenauigkeiten. Die PoE Option ist natuerlich nett, aber ich denke die wenigsten besitzen dazu passende Switchs oder Injektoren. Wenn es aber nicht zuviel Platz auf der Platine nimmt bin ich auch dafuer. Ansonsten finde ich die Idee natuerlich Klasse. Frohe Weihnachten noch. Gruß Tobias
Hi, also ich hätte auch interesse an so ner platine .... lass mir noch durch den kopf gehen was man noch gebrauchen könnte. mfg Moritz
Ein USB-Host-Controller wär richtig fett. Dann könnte man diese billich Webcams anschließen.
Hi. Also, ich hab zwar kein Interesse an einer Platine, aber da ich selbst gerade ein Ethernet Board mit nem ATMega128 baue, interessiert mich dein Projekt natürlich! Du schreibst ja: "Da ich mir die Platine alleine nicht leisten kann, habe ich andere Leute hier ausm Forum schon gefragt, was sie z.B. noch gerne auf der Platine haben wollten, wenn sie eine mitbestellen würden." Ahm... wenn du z.B. bei Olimex bestellst, dann kostet dich eine Eurokarte von vornherein "nur" 31 USD inkl. Versand (vielleicht 36 USD, wennst viele Bohrungen hast). Und wenn deine Platine eh nur ne halbe Eurokarte benötigt, dann kommt dir eine Platine sogar unter 15 Euro (was für Einzelstücke bzw. Prototypen sehr günstig ist, oder?!). Soviel nur dazu... Ich hab auch überlegt, ob ich ein Compact Flash Interface draufmachen soll, hab mich dann aber für ein Flash mit 1MByte Speicher entschieden. Ist vielleicht auch eine Anregung für dich. Außerdem hab ich statt eines RS232 Anschlusses ein USB Interface (mit FTDI Chip - FT232BM) aufs Board gegeben. Was mir bei deinem Board besonders gefällt, ist, dass es in dieses Gehäuse passt. Kleine Eckdaten zu meinem ATEthernet Board: * ATMega128 * 32kByte SRAM * 1MByte Flash * USB * 10Mbit Ethernet * RTC (Counter am ATMega) mfg Andreas
Hallo Guido, ich würde auch ein oder zwei Platinen nehmen. Das PoE werden die meisten nicht brauchen. Daher könnte man daß vielleicht als optionale Huckepack- Platine vorsehen ? Dann kann man es bei Bedarf nachrüsten und es nimmt keinen Platz weg. Dafür wäre ein Anschluss für ein alphanumerisches Display nicht schlecht. Das wird doch recht oft gebraucht. Eine Atmel Dataflash Chip wäre noch ne Idee für eine Option. Da kostet der Chip warscheinlich weniger als ein MMC-Sockel. Ein Dallas/Maxim DS2502-E48 (TO-92 Gehäuse / 1-Wire IF) der eine feste MAC-Adresse enthält bräuchte auch kaum Platz. (Muster über Maxim) Gruß Andreas
Hi Guido, Kurz du deinem Dataflash. Also, wie gesagt hab ich ja auch ein Flash auf meinem Board drauf. Ich verwende eins von Atmel mit SPI Interface. Heisst AT45DB081 (1MByte). Das Flash wird mit 3,3V versorgt und hat 5V tolerante Eingänge. Wenn du es mit 3,3V versorgst, kannst den seriellen Ausgang des Flash problemlos an den Mega anschließen - der Mega erkennt 3V als High-Pegel und das Flash gibt laut Datenblatt mindestens VCC-0,2V als High-Pegel aus. mfg Andreas
Hallo Guido, ich wäre an folgender Platine interessiert: - ATmega128 - 64..512 kByte banked SRAM - RTC - ISA-Steckplatz für RTL8019AS/NE2000-Karten - MMC Sockel - (optional) Adressdekoder für Zusatzhardware 100x160 wäre für mich OK. Ich habe auch noch eininge Karten, und möchte den RTL8019AS nicht herunterlöten... Gruß Fiffi
Hi, also 100*160 + nen ISA-Slot ist ja wohl totale Platzverschwendung. So schwer kannes auch nicht sein, den RTL von der Platine zu bekommen und ihn dann wieder auf eine Industrie gefertigte Platine zu loeten. Beim Speicher bin ich auch eher fuer fuer eine MMC. Da kann man danna uch mal problemlos den Speicherausbau variieren bzw. ganz weglassen ohne etwas zu loeten. Ein Display duerfte sich wohl auch relative leicht ueber die Porterweiterungen anschließen lassen. Da es ein sichtabres Teil ist, hat da eh jeder eine andere Vorstellung was er da verwenden will. Wenn PoE Huckepack geht waere das auch nicht schlecht, aber ich glaube, dass das Gehaeuse das nicht zulaesst. Gruß Tobias
Hallo, Also iuch hätte auch an einer PLatine interesse, wenn der Preis so um die 15 Eur rum hinkäme. Ich persönlich würde die MMC dem Data Flash vorziehen. Auf PoE kann ich verzichten Schöne Feiertage noch Steffen
@Guido Ich weiss, es passt nicht zu deiner Frage, aber kannst du mir vieleicht deine EAGLE3D Libary zukommen lassen. Besonders bin ich an der RJ45 Buchse und dem CF Adapter interessiert. Hoffe es macht keine dir keine grossen Umstände. Ansonsten noch ein restliches frohes Fest und danke im voraus... Gruss der Schlumpf
@Der Schlumpf: Bezüglich des CF Adapters kann ich dich gleich auf die bei Eagle enthaltene Library "con-3m" verweisen. Dort sind 2 Versionen eines CF Slots drinnen! @Guido: Wegen Bezugsquelle für ein Dataflash. Ich hab meins von RS-Components. 1MByte kostet dort etwa 5-6 Euro. Falls jemand was billigeres weiß, nur her damit! mfg Andreas
@Guido Danke, die Eagle Bauteile hab ich ja auch... Ich meinte für Eagle 3D und PovRay die Render Daten, um diese Bauteile erzeugen zu lassen. Die sind in der aktuellen Version von Matthias (Matwei) nicht erhalten. Hab sie halt nur in deinem PDF gefunden. Also, falls du diese zukommen lassen könntest, wäre super. Der Schlumpf
@Guido: Das Gehäuse heisst glaub ich TSOP28. So gibt es das Flash zumindest bei RS-Components. Wenn du willst stell ich meine Eagle Lib hier rein! mfg Andreas
Hi der Die des Flash ist schon relativ groß. Der paßt rein mechanisch schon in kein SO8 mehr rein. Matthias
Sehe ich das richtig: Di Platine hat eine voll Funktionsfähige RS232 Schnittstelle?
Hallo Guido, der Dataflash läuft laut Datenblatt von 2,7 bis 3,6 V Also Betrieb an 3,3 V. Die Eingänge sind 5 V tolerant also direkt mit dem M128 zu verbinden. Der Mega128 hat laut Datenblatt einen min. High-Pegel von 0,6 x VCC also 3 Volt. Der Dataflash liefert als High-Pegel VCC - 0,2 V also 3,1 Volt. Sollte also auch direkt passen. Atmel beschreibt zwar in dieser AppNote die Anpassung an ein 5V System, geht aber von 0,7 x VCC für CMOS aus und empfiehlt für den Ausgang einen Pegelwandler. http://www.emesystems.com/pdfs/parts/AT45DB041-3volt-5volt.pdf Grüße Andreas
Wenn wir uns beim Dataflash auf 4MBit also 512 Kilobyte beschränken, wäre es nur ein kleines 8-poliges Gehäuse. Das dürfte für sehr viele Anwendungen mehr als genug sein. Für mehr Speicher dann eben MMC. Kosten hier 3 Euro das Stück : http://www.elektro-nix.de/pd-1521253076.htm?categoryId=14
Hallo Guido, wenn Du statt des separaten Übertragers für das LAN einen RJ-45 Connector mit intergriertem Übertrager vorsehen würdest, würde dass einiges an Platz sparen und auch nicht viel mehr kosten. Ausserdem gibt es die RJ-45 Buchsen auch mit integrierten LED´s, sodaß man auch den Status von aussen sieht ohne noch Löcher ins Gehäuse bohren zu müssen. Wär vielleicht eine Idee. Grüße Andreas
Dann such dir eine Alte PCI / ISA Karte die das alles schon hat ;) Was anderes.. wenn man das ganze als reinen Webserver nutzen moechte um ein Paar bildchen etc anzeigen zu lassen meinst du sowas koennte man relativ flexibel realisieren? Mit verlinkten Dateinamen etc?
Hallo Guido, ich hab mir gerade mal die Daten auf deiner Homepage angesehen. in der 3 darstellung der Webserverplatine sieht man rote Buchsen, an denen die Ports des AVRs anliegen. Hat es nen bestimmten rund, das du diese spezial Buchsen verwendest? Ansonsten wären vllt 10pol Wannenstecker sinnvoller. Gruss, und Respekt für die Arbeit die du dir machst Steffen
@DB1Ulm >Wegen der geringen Höhe des Alugehäuse verwende ich hier die Tyco >Micromatch Verbinder, die dank Schneidklemmausführung für normales >Flachbandkabel geeignet und wesentlich flacher, als die Molex Wannen >sind. ;)
darum meinte ich ja auch PCI / ISA =) zumindest fuer die LEDs das mit dem Filter war mir neu, dass es sowas gibt die Karten, die ich bisher kenne haben alle den Externen Filter?? ich dachte immer, das waer auch eine Galvanische Trennung nunja =) Gruss Jens
Okay Asche auf mein Haupt :-) Das mit der größe ist einleuchtend :-) steffen
ok ok ok =) Alles klar ;) Zu dem Webserver hast du dir schon gedanken gemacht ueber eine eventuelle allgemeine Firmware, die einige Spezifische Seiten einlesen kann zB. dateien, wie das mit dem PHP funktioniert?? <html> <head> </head> <body> <?µc ldi temp1, "h"; ldi temp1, "a"; ldi temp1, "l"; ldi temp1, "l"; ldi temp1, "o"; µC?> </body> </html> weist, was ich meine?? Das man ueber die MMC Karte diverse Seiten in den Webserver einbinden koennte, in denen dann noch etwas an ausfuehrbarem Code drin steckt..
Supi =) Tia das is tdas Problem mit em Code aus dem Flash :( daher evtl kleinere InLine Commands villeicht bekommt man damit was zustande.. oder aber man bekommt das ganze ueber inline assambler hin leider keine idee im momennt aber sowas mit dem ausfuehrbarem code hatte ihc schonmal als idee gehabt
Hi Bezüglich ausführbaren Code aus dem Flash... also der Mega128 kann leider keinen Code aus einem externen Speicher ausführen. Das geht leider architekturbedingt nicht! Wenn man Code aus dem externen Flash ausführen will, dann braucht man schon sowas wie nen Interpreter, was aber alles andere als schnell sein dürfte! mfg Andreas
Das befuerchte ich auch... Also ist nix mit Dynamischen Seiten auf dem Controller.. koennte schwer werden sowas zu realisieren
Was ich aber schon gesehen habe, ist, dass ein AVR als Webserver am Internet hängt und seine IOs per Internet geschaltet werden können. Also das funktioniert auf jedenfall. Und für die Interpretation einiger Zeilen in einer HTML Datei wird der AVR sicher auch in der Lage sein! Falls jemand sich so nen Webserver ansehen will. Bei eBay wird so einer versteigert. In dem Angebot ist auch ein Link wo angeblich dieser Webserver antwortet und wo dann IOs gesetzt werden können! Hier der Link: http://cgi.ebay.at/ws/eBayISAPI.dll?ViewItem&category=12949&item=5737803909 Mal kurz was anderes. Holt ihr euch alle die RTL8019AS Chips von alten ISA Karten runter?? Ich bin nämlich auf der Suche nach 2 Stück dieser Chips und trau dem ganzen runterlöten nicht so ganz. Will mir meine Platine ja nicht unbedingt versauen! mfg Andreas
Hallo Guido, /WP (Schreibschutz) ist laut Datenblatt mit einem internen Pullup versehen, also abgeschaltet wenn nicht verbunden. /RESET kannst Du ja mit dem Reset des M128 verbinden. Der Dataflash hat zwar einen Power On Reset, aber man will ja definierte Zustände haben, wenn man aufs Reset-Knöpfchen drückt. BUSY kann man auch einsparen, da man dieses Signal auch per Software über SPI abfragen kann. Grüße Andreas
@Andreas den RTL8019 gibt es bei Egnite zu kaufen. Kostet allerdings 10 Euro bei unter 10 Stück. http://www.egnite.de/
@Jakob Ja, das hab ich schon gemerkt. 10 Euro wären so auch nicht das Problem. Aber der Versand kostet nach Österreich 15 Euro oder so ähnlich. mfg Andreas
@all Ich hab im Forum unter Markt auch schon meinen Beitrag bezüglich der RTL8019AS Chips hineingestellt. Falls hier noch jemand so nen Chip sucht, weil er ihn auch nicht von ner Platine runterföhnen will oder kann, kann sich ja mal melden. Bei 10 Stück kostet das Ding dann "nur" noch 6,38 Euro. mfg Andreas PS: Hoffe, dass dieses Posting jetzt nicht ganz unter SPAM fällt!
Hallo Für denn WP-Pin: Wie wäre es mit einem Jumper? Auszuwählen wäre dann entweder 1. nach masse oder 2. zu einem Portpin. Ich würde mir noch mindestens einen Mcp2515 Cancontroller wünschen, besser 2. oder einen speziellen Erweiterungssockel wo die SPI drauf liegt und 2x CS. Gruß Topsoft Achso: Ich würde 5 Platinen nehmen. Und @Andreas 5 x RTL8019AS Chip wären interessant.
Hallo, der MCP2515 und ein Bustreiber müssten dann aufs Board. Anbei habe ich dir mal eine Ausführung meines TV-Tuner Dummys angehängt der bei mir den RGB-Eingang am Navi freischaltet. Angeschlossen werden müßten dann CS, SO, SI, SCK. Den Reset vieleicht mit auf den Prozessorreset, und der Int wäre natürlich dann noch anzuschließen. Wenn du dich aber für die Buchse entschließt müßten dort die Signale Reset, Cs1, Cs2, SO, SI, SCK, Int1, Int2 zur verfügung stehen. Eigentlich müßte der CanBusTreiber auch von Board galvanisch getrennt sein, was dann ja eher für die externe Lösung spricht. Der 82C251 ist besser als der 82C250 und den gibt es auch wie den MCP2515 bei Reichelt. Gruß Topsoft
anstelle der seriellen schnittstelle can-option Pin-belegung sub-d: 1 NC 2 CAN L 3 GND 4 NC 5 Drain 6 GND 7 CAN H 8 NC 9 NC
Also wenn schon CAN, dann aber bitte galvanisch getrennt. Bei Reichelt gibts schöne kleine DC/DC Wandler 11 x 6 mm. z.B. SIM1-0505 SIL4 8,80 Euro Die kosten übrigens beim Hersteller nur 4 Euro, ganz schöne Gewinnspanne hat Reichelt da :-)
hi hab hier en schaltplan gefunden. allerdimgs mit einem anderen bustreiber. http://www.mikrocontroller.net/attachment.php/139738/busk1_2.pdf
die Sd-card sitzt ja ganz am rand. wenn man den sockel auch drehen könnte. könnte man die karte vielleicht auch im gehäuse wechseln, wenn man in die seitenwand einen schlitzt fräst. bräucht halt meher platz.
vieleicht auf die unterseite. den Speiche kann man ja verschieben. Hast recht an die kurtzen karten hab ich garnicht gedacht. P.S. Ne Einerlegendewollmilchsau wär zwar toll aber, aber halt nicht machbar.
Hi zum Schaltplan: Ich würde an den ADC-Kanälen noch jeweils einen C im 0805 gegen Masse vorsehen. Verbessert das Verhalten des ADC's bei hochohmigen Quellen deutlich. Matthias
Hi @Topsoft Hab deinen Beitrag nicht übersehen ;-). Du würdest also 5 Stück brauchen. Ich selbst bräuchte auf jedenfall 2. Hätten wir schon 7. Bei egnite kostet der RTL8019AS + Transformer (6,38 + 1,25) 7,63 Euro (ab 10 Stück). Falls niemand mehr Chips bzw. Übertrager braucht, dann würde ich notfalls auch 5 Stück nehmen, damit wir auf 10 Stück kommen! Wenn jemand noch welche will, dann bitte auch unter Markt in meinen Thread posten. Dann wird dieser stark frequentierte Thread nicht auch noch belastet und es werden auch nicht so leicht Beiträge übersehen! Thanks. mfg Andreas
Hi du könntest eine USB-Mini-B Buchse (bei Reichelt USB BWM SMD bzw. USB BWM) Für die SMD-Buchse existiert auch schon ein 3D-Modell. Der FT245BM hat keinen CS und eine etwas eigenwillige Auswertung von RD/ und WR. RD/ ist Low-aktiv und WR high-aktiv. Ich würde den FTDI nicht in den Speicher einblenden (den Ethernet-Chip genausowenig) sondern nur parallel anschließen. Die Steuerleitungen für Ethernet und USB kommen dann an einen extra Port. Zum Zugriff wird dann das Speicherinterface mittels MCUCR abgeschaltet und die Ports per Software so geschaltet das ein gültiger Zugriff bei rauskommt. Das ist nicht wirklich viel langsamer spart dir aber die ganze CS Logik die bei den kurzen Buszyklen des Mega128 bei 16MHz eh kritisch ist. Matthias
Morgen, also RS232 oder Can ist natürlich nicht das anzustrebende. Da auch wenn der Can genutzt wird man sehr oft RS232 braucht. Und wenn es nur zum Debuggen ist. Könnte man den Can nicht auf einen 2 poligen Stecker(Jumper) legen? Da nimmt er doch kaum Platz weg. Gruß Topsoft
HaLLO Guido, ich verfolge mit Interesse Dein Ethernetboard. Wenn ich das richtig in Erinnerung habe, ist CAN doch ein 2 Draht System. Wäre es also nicht möglich, zwei der unbenutzen seriellen Ports als CAN Ausgang zu benutzen? Den Kabelbaum kann sich doch jeder notfalls selber bauen. Gruß Marcus
Hallo Jo, Markus das ist eine Superidee. Kostet keinen weiteren Platz und 2 Anschlüsse am SubD sind ja auch frei. Auf das einfachste kommt man meist nicht. Wäre schön wenn Guido das so machen könnte. Gruß Topsoft
Der SubD stecker ist genormt. ich bin dagegen can_high und low auf einen nicht genormten pin zu legen. Ich würde noch ne platz für stiftpins einbaun und notfals wenn man can und Rs braucht muss man mit en schleifer die zwei can leitungen durchtrennen und an den stiften abnehmen.
Hi warum nicht einfach Lötbrücken für wahlweise CAN und RS232? Beides zusätzlich auf Stiftleisten verfügbar und gut. Dann ist die SubD entweder CAN oder RS232 und das jeweils andere ist per Stiftleiste verfügbar. @Guido Ich würd auch so ne Platine nehmen wenn sie nicht zu teuer ist. BTW: Das umschalten des Analogschalters mittels Pin3 des isp-Steckers ist eher uneschickt da viele Programmierdongle (STK200, STK500, AVRisp, mein USBips) diesen Pin garnicht beschalten. Verwende doch einfach das Reset-Signal dazu. Matthias
Hallo, Also gegen RJ45 hätte ich nichts einzuwenden. Was spricht gegen die Einblendung des RTL in den oberen Adressbereich des Ram´s? Gruß Topsoft
Hi ich persönlich hätte ein Problem mit RJ45. Da kann man nicht mal schnell einen eigenen Stecker anbauen der dann auch noch nach was aussieht. Matthias
Hallo Guido, ich persönlich hätte nichts gegen eine RJ45 Buchse. Warum nimmst Du eigentlich zwei? Hast Du vielleicht mal über RJ11 nachgedacht? Die Buchse ist kleiner und du kannst ja die drei linken Leiter für RS232, die drei rechten für CAN benutzen. Ansonsten wäre noch die Option 3x2 Pinheader. Gruß Marcus
Hallo Guido, auch wenn ich bis jetzt nur mitlesen und nichts konstruktives beigetragen habe: Ich habe verbindliches interesse an 3 Platinen. Gruss Volker
Hi, hab grade erst den Thread gefunden. Ich wäre (noch unverbindlich) an einer Platine interessiert. Aber: ich bin kein berufsmäßiger Elektronikentwickler. Daher: - das ganze "optional" klingt gut, das meiste bräuchte ich nämlich nicht. Ich suche eigentlich nur Ethernet - AVR - freie Pins für Sensor. Freie Pins für Display, USB und MMC wäre nice to have. Wichtig wäre aber auf jeden Fall eine Doku, die ausreichend ist, um das nicht benötigte weglassen zu können. Ich denke da vor allem an die vorgeschlagenen Brücken um z.b. CAN/RS232 mal hier und mal da abzugreifen usw. - das Ethernet sollte schon eine Buchse haben, um ein normales Patchkabel anzuschließen, also RJ45 oder? (RJ11 kenn ich nicht). - Ebenso würde mir ein 9 pol. Sub-D Stecker für RS232 besser gefallen als eine RJ45 hierfür. RS232 müßte doch eigentlich jeder brauchen zwecks debugging, und ein RJ45/Sub-D Kabel hab zumindest ich nicht hier rumliegen. - Vielleicht bin ich der einzige, der das nicht weiss*g* Wo kriege ich denn dieses proMa Gehäuse? Und was kostet es? Btw: Hat jemand eine mehr oder weniger grobe Abschätzung was die größeren Bauteile kosten? R und C sind natürlich egal. Jochen
@jochen: die Frage mit dem Gehäuse würde mich auch interresieren*g* Bin auch für den 9 pol. Sub-D Stecker ....
Was die diverse Logik wie z.B. Adressdekodierung angeht, empfiehlt sich ein CPLD, z.B. ein 36er oder 72er von XILINX. Die lassen sich (als TQFP44) prima löten und lösen das Platzproblem. Ausserdem ist so noch ein bisschen Raum offen für diverse Konfigurationen, falls jemand mehr RAM braucht, etc.
Hi So wie ich das alles bisher kapiert habe, wird das die Eierlegende Wollmilsau die ich mir schon immer gewünscht habe! USB, RS232, Ethernet, CAN - was will man mehr? Ich werd mir wenns nicht zu viel kosten wird so ein Teil auch anschaffen, aber mir ist da noch etwas unklar mit den ICs. 74hct30D, HY628100B2, 74AC573D, AT45DB041B, AT45DB081 - was machen diese ganzen ICs? Ich kenn mich schon ein wenig mit den AVRs aus aber diese Bauteile sind mir noch unbekannt. Die Datenblätter laden schon, aber wie ich mich kenne werd ich daraus wohl auch nicht so schnell schlauer werden. :\ mfg
Hallo, an so einem Board wäre ich auch interessiert. Aber eher wie es Jochen gesagt hat. Einfach ein paar Sensoren(z.B TC77 am I2C) abfragen und per Browser abfragen. Später vielleicht noch als Datenlogger. Das wäre ideal. @Jochen proMa gibt es z.B. bei Reichelt(glaube Guido meint EFG 1A(LxBxH 165x114x31). Oder hier http://www.proma-technologie.com/deutsch/rundum_l/index.html Malte
@Guido Fischer: "Wer hat den FT254BM schon mal verbaut und kann mir sagen, ob der überhaupt "Bus" tauglich ist und mir die datenleitungen zu den andern IS in Ruhe lässt?" Der 245 ist bustauglich. Es gibt kein CS, aber wenn WR# und RW# beide auf Hi sind, ist der Port Hochohmig. Darüber hinaus gibt es zwei Handshake Leitungen RXF# und TXE#, einer zeigt an, dass Daten gelesen werden können, der andere, das man welche senden darf. In JEDEM FALL das Handshaking verwenden!!! Gruß, Bernd
@Guido Fischer: FT245BM und FT254BM. Sprechen wir vom gleichen chip? Zahlendreher? Ich FTDI hat keinen FT254BM, oder? Ich habe nur den FT245BM getestet.
@Guido Fischer: "Wenn er sich so verhält wie der 245 ist es ok" ????? Es ist doch der 245'er!!!???? "Ich mein den kleinen Käfer hier: http://www.ftdichip.com/Products/FT245BM.htm" Und "die Frage zu der Bustauglichkeit habe ich selber schon weiter oben gestellt und keine Antwort erhalten." Das war keine Frage, sondern die Antwort:-) Gruß, Bernd
Danke für die erhellenden Gehäuse Antworten:o) Hab ich das auch richtig verstanden, dass die Hardware (Pinbelegung usw.) insoweit mit dem Webserver Projekt von ulrichradig.de identisch ist, dass dessen Webserver SW auch hier läuft? Gruß, Jochen
Hallo Guildo, zu dem Thema CAN / RS232: zuerstmal finde ich Deine Lösung prima, beides an zu bieten. Vielleicht schaust Du Dir mal diese Pinheader an: Reichelt - SL 1X10G SMD2,00 Damit könntest Du dann die Sub-D Buchse je nach gewünschter Beschaltung jumpern. o --- CAN-LOW TX ----o o --- RS-TX o --- CAN-HIGH RX ----o o --- RS-RX Du brauchst also nur ein Board und hast automatisch die Abnahme vir PIN geschafft. Gruß Marcus
Hi Nochmal kurz zum FT245BM. Bin jetzt mal kurz etwas verwirrt. @bernd Du schreibst, dass WR und RD# high sein müssen, damit die Datenleitungen hochohmig sind. Sollte es nicht so sein, dass nur RD# high und WR low sein muss, da ja WR high-aktiv ist?? Nicht, dass hier blödsinn im Layout rauskommt (vielleicht fehlt dann ja ein Inverter)! @Adressdekoder Ich hab mich in letzter Zeit ein bisschen mit den XILINX CPLDs 9536XL und 9572XL beschäftigt. Zur Programmierung wird ein JTAG Kabel benötigt, das mit 4 Pins + GND mit dem Baustein verbunden wird. Das Kabel ist im Prinzip nichts besonderes... 1 oder 2 Treiberbausteine und eine handvoll Widerstände! Wie gesagt, müssten 4 Pins + Masse (vielleicht auch noch Versorgungsspg für das Kabel) auf eine Steckerleiste geführt werden. Das Progamm könnte einfach mal jemand schreiben und es dann auf ne Homepage online stellen! Dann braucht es im Prinzip nur jeder auf den CPLD laden. Die Programmierung ist im Prinzip sehr einfach. Das lässt sicher sicher mal auf die schnelle machen! Ich kenn nur die XL-Serie der CPLDs von Xilinx. Die sind relativ günstig (36XL kostet bei Reichelt auf Anfrage etwa 1,90 Euro; bei eBay werden außerdem auch immer 10 Stück im SMD Gehäuse für 12 Euro oder so ähnlich angeboten). Vorteil bei der Verwendung eines CPLDs ist, dass man ihn auch so verwenden könnte, um z.B. 512KB SRAM zu verwenden (ähnlich wie bei Ethernut 2.x). Die Frage ist eben, ob jemand wirklich soviel mal braucht!?!? Außerdem ist es Arbeit, was das Layout betrifft! mfg Andreas
Hallo, wenn der CPLD auf Layout kommt und die Adressdekodierung übernimmt ist dann nicht noch so viel Platz in dem Ding das er die Arbeit des 74**573 mit übernimmt? Gruß Topsoft
@Andeas: kennst du dich mit den dingern aus? habe mir gestern das ispLever von Lattice geladen, habe auch "Das isp-Buch" von Elektor. Aber begreifen tu ich das nicht was die von mir wollen, bin ich zu blöd für. Gibt es da gute Seiten am besten in deutsch? Das Thema interesiert mich doch schon sehr. Gruß Topsoft
Die Lattice Dinger kenn ich leider nicht. Ich hab mir mal ein Board für die Xilinx XC9536XL und XC9572XL gebaut (falls es dich interessiert auf www.mikrocontroller.at.tt steht mehr übers Board). Ich kenn mich ein bisschen mit der Programmiersprache Verilog aus und schreib meine Programme immer darin. Ist vom Syntax her relativ ähnlich zu der von C. Es gibt eben ein paar sprachspezifische Ding (also wie man auf Taktflanken reagiert usw.). Xilinx hat auch eine kostenlose Software auf der Homepage. Damit kann man rumprobieren und "Hardware-Programme" simulieren. Vorallem gibts massig Programmbeispiele, von denen man einiges Lernen kann. Auf der Homepage www.xess.com gibts auch einige Tutorials. Viel mehr kenn ich leider auch nicht. Ich hab Verilog in der Uni mal ein Semester lang gelernt (war aber trotzdem nur oberflächlich). mfg Andreas
Hallo Andreas, sorry wenns jetzt ziemlich ot ist, aber würdest Du mir mal kurz Deine Erfahrung mit dem Nordic nf905 im real Life schildern und was der wo kostet. Ist die Leistung regulierbar? Gruß Marcus
Da ich leider einige Probleme mit meinem Layout für den nrf905 habe, hab ich die Module (noch) nicht testen können. Außerdem weiß ich nicht, ob die nrf905 Chips auch wirklich Kontakt mit den Leiterbahnen (der Chip ist in so nem komischen halb BGA Gehäuse) haben. Das dauert also bis ich da irgendwann mal was vorlegen kann. mfg Andreas
@Andreas Auer: "Du schreibst, dass WR und RD# high sein müssen" Das mit dem WR und RW war auswendig geschrieben. Ich wollte damit nur sagen, dass diese beiden Leitungen für den Ansteuerung sind. **** aus dem Datenblatt Seite 8 ************************** "16 RD# IN Enables Current FIFO Data Byte on D0..D7 when low. Fetches the next FIFO Data Byte ( if available ) from the Receive FIFO Buffer when RD# goes from low to high. ( *** Note 1 )" **** aus dem Datenblatt Seite 8 **** "15 WR IN Writes the Data Byte on the D0..D7 into the Transmit FIFO Buffer when WR goes from high to low. ( *** Note 1 )" ********************************************************* Lesen: Also, die Daten können gelesen werden, wenn RD Low ist (Seite 10 in der Doku). Ist RD High, so ist der Port hochohmig. Schreiben: Wenn man nach Seite 10 in der FTDI Doku geht, muss WR im Ruhezustand Low sein. Geht dann auf High und übernommen/geschrieben wird bei negativer Flanke. Gruß, Bernd
@Bernd Genau das meinte ich ja... damit muss WR low sein, wenn es inaktiv sein soll, oder?! Wenn du dir z.B. das Datenblatt des Atmel noch zur Hand nimmst, dann siehst du dort auch, dass das RAM zum Beispiel die Daten bei der steigenden Flanke übernimmt. D.h. vom Atmel aus gesehen, dass WR erst low geht und dann bei der steigenden Flanke die Daten übernommen werden. Genau das selbe nur mit den umgekehrten Pegeln passiert beim FT245BM. Damit muss doch WR auf low und RD auf high sein, wenn es inaktiv sein soll! (meine Ansicht) mfg Andreas
@Andreas Auer: "Damit muss doch WR auf low und RD auf high sein, wenn es inaktiv sein soll!" - JA Gruß, Bernd
CPLD fänd ich auch cool :-) Aber nur wenn die ungenutzten I/O´s auf Stiftleisten zur Verfügung stehen. Aber ob dass noch auf die kleine Platine passt ...
@Guido: Deine Angaben glaub ich passen schon (Pins usw.) Am CPLD sind aber einige IOs auch für spezielle Zwecke ausgelegt. Müsste man mal genauer schauen, ob trotzdem noch genügend zur Verfügung stehen. Wegen dem machen... das "Programm" für den CPLD kann ich im Prinzip schon schreiben (ich hab nur jetzt im Jänner einige Prüfungen und deshalb wahrscheinlich auch nicht viel Zeit). Falls sich jemand anderes findet, gern! Es gibt da aber ein kleines Problem. Ich hab zwar JTAG Kabel bzw. ein Xilinx Board zur Programmierung von CPLDs, aber wie SMD IC's ohne Einlöten programmieren. Und Sockeln dafür sind ja schweineteuer. Falls da jemand Erfahrung hat, bzw. ne gute Idee hat, immer her damit!! mfg Andreas
Hi die zur programmierung nötigen Pins auf eine Stiftleiste führen? Matthias
Hallo, nehm doch das XC9572-7PC84C, hat 69 Pins und damit ist sichergestellt,das Du genug ausgänge hast. Gruß Marcus
Hi PLCC ist riesig und was viel schlimmer ist: Es stirbt aus. Die CPLD's sind ganauso IS programmierbar wie die AVR's auch. Wozu also einen sockelfähigen Chip? Mein Vorschlag: XC95{36,72}{XL}. Das Adresslatch würde ich nicht über den CPLD laufen lassen sondern die freien Pins eher an einen zusätzlichen Stecker führen. Würde das Board flexibler machen. Aber so langsam wirds dann doch die eierlegende Wollmilchsau die nie fertig wird. Matthias
>>Das Adresslatch würde ich nicht über den CPLD laufen lassen sondern >> die freien Pins eher an einen zusätzlichen Stecker führen. Würde >> das Board flexibler machen. Das macht aber weniger Sinn da der CPLD zur Addressdekodierung ja auch einige Addressleitungen benötigt. Anbei mal mein Memory Mapped Bank Controller zur Ansteuerung von 512Kb SRAM und zwei beliebigen Memory Mapped Geräten. Das ganze passt in einen XC9536XL benötigt alle 34 verfügbaren Pins und verbraucht 27 Makrozellen von den 36 verfügbaren. Da der MMB aber intern selber zwei Register speichert und demzufolge auch die komplette Addresslogic des AVR's benötigt kann für euer Projekt einiges eingespart werden. Gruß hagen
Hi aus dem Adresslatch kommen aber die unteren Adressen. Für die Dekodierung werden üblicherweise die oberen Adressen hergenommen. Matthias
@Matthias, ja das stimmt natürlich. Ich bezog mich da eher darauf das beim CPLD noch viele Pins frei blieben. Addressdekoder benötigt A8-A15 = 8 Eingänge, Chipselects für SRAM, USB, Realtek = 3 Ausgänge. Das NAND und Inverter sind dann weg. Das sind 12 Pins am CPLD von 34 verfügbaren, bleiben 23. Der MUX könnte auch über den CPLD laufen, das wären dann 10 Pins, bleiben 34 - 12 - 10 = 12. Man bräuchte aber 8+8+1=17 für den Latch. Stellt sich nun die Frage wie man sich entscheidet. Entweder Addressdekodierung + Latch macht 34 - 11 - 17 = 6 freie Pins am CPLD für zusätzliche Aufgaben. Oder Addressdekoder + MUX macht 34 - 11 - 10 = 13 freie Pins für zusätzliche Aufgaben. Ich vermute das von den freien Pins noch die Ansteuerlogik für den FT254BM gemacht werden kann, sprich WR\,RD\ == 4 Pins. Eines steht aber fest, ohne den CPLD gäbe es keine Addressdekodierung. (ich meine um zu Ulrichs Lösung kompatibel zu bleiben). Die Addressdekodierung kann wahlweise mit oder ohne ALE gemacht werden. Da die Addressleitungen A8-A15 im Gegensatz zu AD0-AD7 laut Datenblatt immer stabil sind. Denoch bevorzuge ich die Addressdekodierung synchron zum ALE zu machen. Falls der Latch im CPLD ist hat man ja ALE eh zur Verfügung. Ach und nochwas, die XC9500 gibts als 5V und 3.3V Versionen. Die 5V Versionen sind meistens um mehrfaches teuerer als die XL == 3.3V Versionen. Auf alle Fälle sind sie besser verfügbar als die MAX7000 Serie. @Guido, gib mir doch mal die genauen Addressen zur Addressdekodierung wie du sie dir vorgestellt hast. Gruß Hagen
Morgen, einen Teil der unteren 8 Bit braucht mann schon, ansonsten würde sich jedes cs über mindestens 255 Adressen erstrecken üblich sind da ja meistens weniger ausgennommen mal den rtl und z.b ein sja1000. Topsoft
Naja, aber 3 * 256 Bytes weniger SRAM von fast 64Kb ? Ich würde, falls Pins übrig bleiben, sowas dann nachträglich verfeinern. Allerdings benötigt man dann ALE auf alle Fälle, da AD0-AD7 nicht stabil die unteren Addressbits halten. Wobei wir somit zu meinen Hinweis kommen das es eventuell sinnvoller wäre den Latch in den CPLD zu pressen, da hat man dann für eine genaue Addressdekodierung auch AD0-AD7 und ALE inklusive am CPLD. Gruß Hagen
Hi dann hat man halt Blöcke von 256 Byte. Ist doch egal. Aufs Byte genau muß man ja nun wirklich nicht ausdekodieren. Ich würde z.B. die unteren 32k des SRAM dauerhaft (ab 0x8000) einblenden und alles anderen in 16k-Blöcken (ab 0x4000 bis 0x7FFF) per Config-Byte im CPLD umschaltbar machen. Alles andere (RTL, FTDI, CPLD-Config Byte(s)) wird dann ab 0x2000 in 256 Byte großen Fenstern eingeblendet. So spart man sich das TTL-Grab für die Adressdekodierung und es bleiben noch ein paar Pins und Makro-Zellen für extra Hardware im CPLD frei. Ich denke da z.B. an extra PWM, schnelle CRC-Berechnung oder sowas. Matthias
>Ich würde z.B. die unteren 32k des SRAM dauerhaft (ab 0x8000) > einblenden und alles anderen in 16k-Blöcken (ab 0x4000 bis 0x7FFF) > per Config-Byte im CPLD umschaltbar machen. Alles andere (RTL, FTDI, > CPLD-Config Byte(s)) wird dann ab 0x2000 in 256 Byte großen Fenstern > eingeblendet. So ähnlich geht der obige MMB Source vor. Wenn ich Guido aber richtig verstanden habe so möchte er das Memory Mapping unterhalb 0xFFFF haben. >So spart man sich das TTL-Grab für die Adressdekodierung und es > bleiben noch ein paar Pins und Makro-Zellen für extra Hardware im > CPLD frei. Ich denke da z.B. an extra PWM, schnelle CRC-Berechnung > oder sowas. Hm :) das dürfte dann aber mit einem kleinen und preiswerten CPLD nicht mehr drinn sein. Was ich noch nicht ganz verstanden habe ist die Logik beim FTDI Chip. Wenn mir einer diese nochmal genauer erklären könnte + gewünschte Addressbereiche so würde ich mich ans Xilinx WEBPack machen und das VHDL samt Timing/Functionale Analyse umsetzen. So schwer ist das nicht. Bliebe für Guido das leidige Pinning des CPLD übrig (ist im WEBPack ein grafisches GUI). Dieses sollte man auf die Bedürfnisse des Routings im Layout anpassen. Gruß Hagen
*liest interessiert mit, versteht aber immer weniger:o)* Wollte nur mal anmerken, dass ein NAND vielleicht jemand rumliegen hat, von CPLD hab ich keine Ahnung, und da auch noch einsteigen, Kabel/Programmer bauen usw ist zumindest für mich ein bischen oversized. Ich bin zwar sicher nicht der Massstab hier, da noch Atmel Anfänger, aber vielleicht geht's ja noch mehreren so. Mir jedenfalls nutzen freie Pins/Zellen in einem Ding von dem ich keine Ahnung habe nix:o) Da wär mir ein bischen TTL, das ich teilw. schon rumliegen habe und bei dem ich verstehe was ich mache schon lieber. Will euch aber nicht reinreden, dafür bin ich ein zu kleines Licht:o) Ich schau mir einfach mal an, was nachher rauskommt, und wenn ich's nicht mehr kapier fährt der Zug halt ohne mich. Jochen
Geht ja hier Schlag auf Schlag:o) >Wer danach mit einer größeren Version und >somit mit SRAM weitermachen >möchte, kann auch ein CPLD bestücken, oder? Das Bestücken ist nicht das Problem. Eher die Beschaffung. Stellt das einer programmiert zur Verfügung, und was kostet das dann ungefähr? Jochen
Hi einen Parportadapter wird wohl jeder selber basteln können. avrdude unterstützt den Xilinx-Dongle übrigens auch zur AVR-Programmierung. Matthias
Hallo Leute, mal ne vielleicht blöde Anmerkung, aber wenn ich den Atmel ISP programmieren kann, kann der Mega128 nicht vielleicht anschließend vi Can USB Seriell / MMC o.ä. das CLPD programmieren? Sind doch IMHO auch nur ein paar Pine. Gruß Marcus PS: So gut kenne ich mich mit der Programmierlogik der CLPDs nicht aus, denn ich hab noch nie ne Software zu programmieren von den Dingern gebaut.
@Guido: > Blieben noch 224 Adressen fei für USB, CAN und ggf. - so hab ich > mir gestern noch überlegt - auch die MMC Card nebst Flash und die > gewünschten CSs für den externen SPI. Die hängen zwar nicht am > Datenbus aber die verschwendeten Portpins würden damit wieder frei, > ist aber nur so ne Idee. Das mit dem CAN verstehe ich nicht, unterstützt der Memory Mapping ? Die MMC Karte + SPI würde ich nicht über den CPLD laufen lassen. Man müsste dann immer den CPLD korrekt vorprogrammiert haben um auf die MMC zugreifen zu können. Aber, mal als Vorschlag, was wäre wenn man den AVR + CPLD von MMC flashen will ? Dann beist sich aber die Katze in den Schwanz, denn die FAT Library benötigt ca. 1Kb an Buffern, ohne CPLD kein externes SRAM, ohne externes SRAM keine FAT Buffer, ohne diese keine SD/MMC FAT, ohne diese kein flashen von MMC möglich. Deshalb würde ich die MMC/SD/SPI nicht abhängig vom CPLD machen. Zur MMC/SD Karte noch einige Bemerkungen: Ich habe auch mit den Spannungsteilern rumexperimentiert und meine Erfahrungen sind eher schlecht als gut. Besonders wenn man mit SnaDisk Karten und hohem Takt arbeiten will. Desweiteren (ich habe deinen Schaltplan jetzt nicht genauer daraufhin unersucht) sollte Vcc der MMC Karte per P-Channel MOSFET über den AVR zuschaltbar sein. Bei meiner MMC/SD Library musste ich nämlich feststellen das es einige SD Karten gibt die nur mit einem harten RESET über das Abschalten von Vcc zurückgesetzt werden konnten. Auch wäre es sinnvoll wenn als SD Karten Slot einer mit Schalter genommen wird. Somit kann man das Einfügen der Karte zur Laufzeit detektieren. Bei der MMC/SD Software tritt ein generelles Problem mit der FAT Software auf. Normalerweise ist es effizient über zwei 512 Bytes Buffer jeweils die FAT und den Dateibuffer zu realisieren. Wird nun in eine Datei geschrieben so ändert man vorerst die zugehörigen FAT Informationen im SRAM-FAT-Buffer. Dies birgt aber ein Risiko wenn man die SD/MMC Karte entfernt bzw. ein RESET durchführt bevor man diesen FAT Buffer zurückgeschrieben hat. Arbeitet man aber ohne diesen Schreibbuffer so werden sehr viele unnötige Schreiboperation inimmer die gleichen FAT Sektoren auf der Karte nötig. Das kann sehr leicht und schnell dazu führen das man diese Sektoren auf der Karte zerstört. Nun, meine derzeitige Lösung mit den SD/MMC Karten sieht so aus: - Vcc über P Channel MOSFET vom AVR ausschaltbar - Kartenslot mit Schalter um das Einfügen einer Karte durch AVR zu erkennen - Extra Taster zur Signalisierung das die SD Karte entfernt werden soll - Extra LED um Status anzuzeigen, dabei wird über diese LED der Zugriff auf die SD Karte angezeigt (Schreib/Lese blinken) und falls der FAT Buffer noch nicht zurückgeschrieben wurde. Vor einem Ausschalten des Gerätes oder RESETs muß also falls die LED leuchtet der Auswurf-Taster der SD Karte gedrückt werden. Nicht schön ich weis, aber nur so konnte ich das Problem lösen. About Speicheraufteilung: Ich stimme eigentlich den Vorstellungen vom Matthias zu und würde auch von der herkömmlichen Aufteilung im oberen Addressbereich abweichen. Der ATmega128 hat im Addressbereich von 0x0000 bis 0x10FF seinen internen Addressbreich. Ab 0x1100 würde ich also die Memory Mapped Devices legen. Das hätte nur einen Schwachpunkt falls eben einer seinen MCU-Stack in das externe SRAM auslagern möchte (warum auch immer er dies möchte). Bei meinem ATmega162 Projekt ging ich grundsätzlich davon aus das der Stack immer im internen SRAM liegen wird. Das hat aber dann den Vorteil das man oberhalb der Memory Mapped Devices eben linear den kompletten externen SRAM einblenden kann. Nun zum SRAM: reichen wirklich die 64Kb aus ? Heutzutage ist es scon fast schwierig 32kb-64Kb SRAM's preiswert zubekommen. 128Kb sind meistens preiswerterund verfügbarer. Der Vorschlag vom Matthias zielt primär darauf ab eben solche größeren SRAM's am AVR zu betrieben und dabei sogar noch zusätzliche Vorteile zu bekommen.Denn über das Variable Banking kann man nun viel schneller bis zu 16Kb große Speicherblöcke im SRAM schnell kopieren. Desweiteren bekommt man Zugriff auf das Shaddow-SRAM im externen SRAM. Das wäre der Bereich von Addresse 0x0000-0x1FFF der ja vom internen SRAM + Memory Mapped Devices überdeckt wird. Über die variablen Bankregister kann man nämlich diesen Bereich intern auf die Addressen oberhalb 0x8000 einblenden. Auch aus diesem Grunde funktioniert mein obiger MMB exakt so. Desweiteren stimme ich Matthias auch mit den zusätzlichen Funktionen im CPLD zu. Wenn ich alles richtig gerechnet habe dann bleiben ca. 4 Pins am CPLD ungenutzt. An Makrozellen schätze ich mal das 36 für die kompllete Logik ausreichen werden. Man könnte also die kleinsten XC9536XL's im TQPF44 nutzen falls man Kosten spare will.Oder aber man nimmt den Pinkompatiblen XC9572XL der nur unwesentlich "teuerer" ist und hätte dann 36 Makrozellen zusätzlich frei um diese 4 Pins mit komplizierterer Logik zu füllen. Eine Addressdekodierung auf Bytegrenze exakt finde ich ebenfalls übertrieben, das würde zwar keine Pins zusätzlich kosten aber auf alle Fälle Makrozellen verbrauchen. Grundsätzlich würde das aber mit 36 Makrozellen möglich sein. Nur, wegen 3*256 Bytes sich streitenzu wollen ?? Wichtiger wäre es das man über Header an die unteren gelatchten Addressleitungen, die 8 Datenleitungen + Chipselects herankommt. Denn über diese lassen sich dann weitere externe Geräte leicht anschließen. Ich denke das an IDEATA. Die Addressdekodierung im finalen VHDL im Addressbereich zu verschieben ist weiter kein Problem. Das mit dem CAN musst du nochmal genauer erklären. Gruß Hagen
Hi Zum SRAM: Warum überhaupt ein 32k SRAM vorsehen? 32k sind bei Reichelt teurer als 128k. Ich würde eher 128k/512k als Option vorsehen. Das führt zu keinen Problemen mit dem DRC und ist auch nicht teurer wenn man die 128k Option wählt. Im Anhang mal mein Vorschlag für die Buslogikgeschichte. Ich hab nur mal das entscheidende gezeichnet. Irgendwie sollte man noch einen Takt an den CPLD bringen wenn dieser keinen internen Generator hat. Matthias
@Guido: Ah, ok jetzt verstehe ichs. Statt Pins am AVR für diese Chipselects -> CAN + MMC, willst du das der CPLD sozuagen als Porterweiterung fungiert. Gut das schöne am CPLD ist ja das man solche "Hardware" per Software macht. Bei den XL Typen handeltes sich um 3.3V Typen, das ist dir schon klar oder ? @Mattias: Warum Takt an CPLD ? Ich habe die Erfahrung gemacht das taktbasierte Systeme immer anfälliger und komplizierter sind als ganz normale. Zumindestens hat mein taktbasiertes CPLD Projekt bis heute nicht 100%'tig exakt funktioniert und ich weis nicht warum. Schaudir mal obigen MMB VHDL Code an, der arbeitet auch ohne Takt und kann im Grunde alles das was wir suchen. Allerdings, bei 512Kb SRAM wirds mit den Pins eng. Obiger MMBC unterstützt auch 512Kb SRAM + Latch + 3 Chip Selects und schwups sind die 34 Pins weg. Bei einem 256Kb SRAM benötigen wir AD0-AD7, WR\, RD\, ALE, A8-A15 als Input. AL0-AL7, AH15-AH17, CS0-CS3 als Outputs, macht auch 34 Pins. In diesem Falle stehen 4 statt 3 externe memory mapped devices zur Verfügung. Würde man das Bank_Register NUR writeonly machen so kann man auf RD\ verzichten. Verzichtet man auf den Latch im CPLD so bringt das nicht viel da wir trotzdem alle Leitungen bis auf AL0-AL7 benötigen. Besonders AD0-AD7,ALE,WR\,RD\ sind nötig um die internen Bankregister programmieren zu können. Wir hätten also nur 8 Pins eingespart würden dafür den externen Latch aber benötigen. Nimmt man einen 64Kb SRAM ohne Banking aber mit Latch so braucht man AD0-AD7, ALE, A8-A15, AL0-Al7, CS0-CS3 also 29 Pins, bleiben 5 Pins für den Rest. Es sieht wohl so aus als reicht ein TQPF44 nicht aus. Der XC9572XL TQ100 kostet bei Reichelt 4.50 Euro und hätte 72 verfügbare Pins. Vielleicht der ? Ist schon blöde das von einem TQFP44 nur 34 Pins zur Verfügung stehen. Gruß hagen
Hi Takt am CPLD war gedacht für zusätzliche Hardware im CPLD. Die braucht irgendwoher einen Takt. Evtl. kann man den einfach von XTAL-Out am AVR klauen. Die Buslogik würde ich auch asynchron machen. Natürlich brauchen wir noch AD0..7 am CPLD für das Config-Register. Mist. Im Anhang neue Blockstruktur. Ich bin gegen ein TQFP100. Das ist wieder so ein riesen Brummer. Dann lieber Adresslatch und QFP44. Matthias
Hi man müßte mal die In-High-Pegel der beteiligten Chips am Bus messen ob die mit 3,3V High klarkommen. Wenn ja wären die XL-Typen ne Option da die billiger sind. Die Eingänge der Chips sind 5V tolerant. Man müßte mal die Pinbelegung der 3,3V und 5V Typen checken. Evtl. kann man dann die Versorgung für den CPLD wählbar machen. Matthias
Ok, kein VQ100 aber was ist mit VQPF64 ? Die Dimensionen sind so groß wie TQPF44 aber statt 0.80 Raster eben 0.50 Raster. Bei Xilinx kostet der XC9572XL in VQPF64 $2.25 das Stück. Dieser hat dann 52 verfügbare Pins, 18 mehr. Die 5V Teile sind bei weitem teuerer. Ansonsten stimme ich Matthias zu, es geht dann nur mit externem Latch. Oder man beschränkt sich auf das Wesentliche ohne den CPLD für zukünftige Erweiterungen überzudimensionieren. Wie gesagt bei maximal 128Kb SRAM und Latch im CPLD braucht man AD0-AD7, ALE, WR\, RD\, A8-A15, CS0-CS3, AL0-AL7, AH15-AH16 + ~WR\ für den FTDI, macht 34 Pins. Der SRAM wird in 32Kb Bänke geteilt und deshalb benötigt man nur noch A15 und A16. Intern kann man also die 4 SRAM Bänke jeweils in die unteren oder oberen 32Kb mappen. ChipSelects stehen 4 zur Verfügung, für SRAM, FTDI, USB und noch ein zusätzlicher. Ausbaufähig wäre dies dann nicht mehr, aber was soll's man kann ja einen weiteren CPLD für die Spezialaufgaben an den Bus dranhängen. Diese Lösung würde den Latch, NAND und INV einsparen, hätte 4 memory mapped Devices, und sogar noch für den 128Kb SRAM eine Bank Logik. Die Addressausgänge A15 und A16 werden durch die 2 internen 2Bit Bankregister gesteuert abhängig von der Addresse auf dem AVR Addressbus. Darum muß man sich also nicht im AVR kümmern. Bei Zugriff auf die anderen Memory Mapped Devices kann man das 2 Bit Bank_register_0 zusätzlich so befüllen das an A15,A16 für diese Geräte zwei Steuerleitungen zur Verfügung stehen. Der XC9536 VQ44 5Volt kostet bei Reichelt 5.25 Euro statt wie der XL Typ nur 1.80 Euro. Tja, ich weis auch nicht. Denn wird der Latch extern umgesetzt dann würde der CPLD ja nur noch das NAND und die 4 INV ersetzen. Dazu wäre der nötige Mehraufwand eventuell nicht gerechtfertigt. Andererseits stünden dann 8 Pins mehr zur Verfügung da AL0-AL7, die gelatchten Addressen, wegfallen. Wie's Matthias eben sagte. Gruß hagen
@Matthias: > man müßte mal die In-High-Pegel der beteiligten Chips am Bus messen > ob die mit 3,3V High klarkommen. Wenn ja wären die XL-Typen ne > Option da die billiger sind. Nicht nur das, ich glaube das sogar die 3.3V SRAM's billiger als die 5V Typen sind. Müsste ich aber nochmal abchecken. @Guido: sagt mir wie ich's machen soll. Ich baue dann das VHDL und Matthias kann es ja eventuell querchecken. Gruß Hagen
Hi Kurz noch was anderes... es war ja mal die Rede von den RJ45 Buchsen mit integriertem Übertrager. Wo gibts die denn?? Weiß da vielleicht jemand Bezugsquellen? mfg Andreas
@Guido, beim WEBPack und VHDL kann ich dir helfen. Ich würde dir per EMail das komplette Projekt mailen mit vielen Bemerkungen. Mit ein bischen Anleitung habe ich es selber innerhalb von Tagen gelernt. Ich maile dir auch noch par PDF's mit deutschen Kurzanleitungen. Aber mit dem Schematik-Editor würde ich erst garnicht anfangen, VHDL ist einfacher. 3.3V <> 5V: der AVR und Realtek laufen weiterhin mit 5V. Der CPLD mit 3.3V der aber 5V tolerante Inputs hat. Wichtig ist halt nur ob der CPLD H-Pegel für die Ansteuerung der 5V Chips ausreicht. Allerdings kann ich eben da auch nicht mit praktischen Erfahrungen helfen. Ich habe hier irgendwo im Forum gelesen das das mit den Xilinx CPLDs zu Problemen führen kann. (war aber widersprüchlich). Falls VQFP64 kein Problem wäre dann müsste man nur noch in Erfahrung bringen wo's den XC9572XL in VQFP64 zu kaufen gibt. Das Memory Banking ist im Grund einfach. In WinAVR zb. definiert man sich einfach eigene Sections für jede Bank und jede Variable kann man nun in diese Sections legen. Die restliche Aufteilung in den Speicher macht dann der Compiler. Man versucht natürlich mit möglichst wenige Bankswitch's auszukommen. Die Steuerung des Bankswitchselber ist ein einfacher Schreibzugriff in den Speicherbereich des CPLD. Das könnte in WinAVR so aussehen: #define CPLD_MM_ __attribute_ ((section (".cpldmm"))) #define FTDI_MM_ __attribute_ ((section (".ftdimm"))) #define USB_MM_ __attribute_ ((section (".usbmm"))) #define BANK0_ __attribute_ ((section (".bank0"))) #define BANK1_ __attribute_ ((section (".bank1"))) im Makefile müssen nun die Addressen zu den obigen Sections stehen: LDFLAGS += -Wl,--section-start=.cpldmm=0x801100 LDFLAGS += -Wl,--section-start=.ftdimm=0x801200 LDFLAGS += -Wl,--section-start=.usbmm=0x801300 LDFLAGS += -Wl,--section-start=.bank0=0x802000 LDFLAGS += -Wl,--section-start=.bank1=0x808000 Der Addressbereich des CPLD's startet also physikalisch an Addresse 0x1100. Im Source kann nun eine Memory-gemappte Variable zu diesem Addressbeeich definiert werden. uint8_t CPLD[256] CPLD_MM; Beim Zugriff auf diese 256 Char Array wird nun physikalisch in die Addressen 0x1100 bis 0x11FF gemappt. Will man nun das Bankregister schreiben so macht man das so: CPLD[0] = 0; Oder der FTDI: uint8_t FTDI[256] FTDI_MM; mit FTDI[0] = 0x55; schreibt man also ins erste Register des FTDI den Wert 0x55. Gruß Hagen
@Andreas: Die RJ-45 Buchsen mit Übertrager gibt es zum Beispiel bei Segor, Bestellnummer HFJ11-2450E-L12 Kosten 7 Euro pro Stück und haben außerdem noch zwei LEDs integriert. Gruß Torsten
Hallo Guido, ich bin prinzipiell an einer Platine interessiert. Allerdings möchte ich erst die Ergebnisse sehen, also eine laufende EileVollmiSau. Ich persönlich würde das CLPD nehmen, da Du sicher sein kannst, das nicht die Ansteuerung des CLPD's sondern auch des RTL, CAn und USB für 95% der Leute schon eine MII bedeutet. Ich selber hab ziemlich respekt von dem RTl, werde ihn aber warsch. selbst in nicht zu ferner Zukunft einsetzen. In wie weit Dein System Leute abschreckt hängt in erster Linie davon ab, ob Du eine gute APi hast, die ich relativ leicht ansteuern kann. Z.B für den RTL: void set_IP(); void send_Byte(); char Recv_Byte)(; usw. Alles andere geht zu sehr ins Detail und dann will ich das Ding auch selber entwickeln, anstatt auf eine vorgefertigte Lösung zurück zu greifen. Ich würds drauf lassen! GRuß MArcus
Nabend Also ich würde den CPLD drauf lassen. Wenn man dann mit den Ramabschnitten nicht klar kommt lässt man es halt denn der erst Bereich ist ja immer beim Start aktiv. Aber so wie ich das verstanden habe schreibt man auf eine bestimmte Speicherstelle als wäre es externes Ram. Dort wird die aktuell einzublendende Bank angegeben. Danach ein weiterer Zugriff aufs externe Ram und fertig. In Assembler etwa so denke ich: (ich mag kein C) ldi r16, zuAktivierendeBank sts Bankingregister, r16 ldi r16, Datenbyte sts startRam, r16 Oder liege ich da völlig daneben? Gruß Topsoft
Wenn man mit RAM-Banking und solchen Späßen anfangen muss, lohnt es sich dann nicht vielleicht gleich einen Controller zu nehmen der mit einem größeren Speicherbereich umgehen kann? Die zwei Bereiche für ROM und RAM sind beim AVR schon lästig genug.
@TopSoft: du liegst richtig. Aber statt diese Speicherstelle umständlich über Addresszeiger anzusprechen definiert man sie wie oben einfach mit uint8_t CPLD CPLD_MM; Damit liegt sie zb. immer an Addresse 0x1100 in Section CPLD_MM, also im memory mapped Bereich des CPLD's, was über das Makefile konfigurierbar ist. Nun kann man die externen SRAM Bänke auswählen indem man zB. CPLD = 0x10; setzt. In diesem Moment würde der externe Speicher ab Addresse 0x0000 bis 0x7FFF im internen an Addresse 0x0000 bis 0x7FFF liegen. Dann noch die zweite Bank vom externen Speicher 0x8000 bis 0xFFFF im internen an Addresse 0x8000 bis 0xFFFF. Man hat also die ersten 64Kb linear gemappt. Bei CPLD = 0x23; würde an Addresse 0x0000-0x7FFF der externe SRAM ab 0x18000-0x1FFFF, und an Addresse 0x8000-0xFFFF eben 0x10000-0x17FFF. Man hat also die zweiten 64Kb gemappt aber diesmal umgedreht. Bei CPLD = 0x00; würde an Addresse 0x0000-0x7FFF der externe SRAM ab 0x0000-0x7FFF liegen, und an Addresse 0x8000-0x7FFF ebenfalls 0x0000-0x7FFF vom externen eingeblendet. Also doppelt und man hat nun über Addresse 0x8000 Zugriff auf den Shaddow RAM der normalerweise über das Registerfile + internes SRAM verdeckt wird. Man hat nur die ersten 32Kb gemappt dafür zweimal. Und so könnte man auch die externe RAM Bank 0 mit der externen Bank 2 oder 3 oder 1 usw. einblenden. Dadurch würden Kopieroperationen zum großen Teil direkt von einer Bank zu einer anderen Bank möglich ohne das man zwischenbuffern müsste. @Guido: wieviele globale Variablen erwartest du denn ? Ich meine das wenn man viel RAM benötigt der meistens für große Buffer draufgeht. Du kannst aber auch bei so viel RAM eine dynamische Speicherverwaltung nutzen. Wer selber auf PC's programmiert weiß was für viele Vorteile so eine Veraltung nach sich zieht, Klassen, echte PChars, C++ usw. WinAVR hat schon eine integriert und wenn ich richtig informiert bin brauch man dieser nur die Start + Stop Addresse des verfügbaren Bereiches mitteilen. Der obige Weg war nur ein Vorschlag um die Sache bzw. Zugriffe zu vereinfachen. Allerdings lässt es sich nicht bestreiten das ein Memory Banking immer wie eine Speicher-Segmentierung auch Nachteile haben kann. Im einfachsten Falle würde man die Section .noinit per Makefile umdefinieren, zb. in den festen SRAM Bereich von 0x1200 bis 0x7FFF. Alle globalen Variablen würde der Compiler dann automatisch dort ablegen. Der interne SRAM von 0x1000 Bytes wäre dann komplett für den Stack frei. Normalerweise müsste man ja zu jeder globalen Variable die im externen SRAM gespeichert werden soll eine absolute Addresse vergeben. Der Compiler durch unsere Vorschriften keine Möglichkeit diese Variablen selber im Speicher zu verteilen. Nun obige Methode ist der Weg wenn man dem Compiler mitteilen möchte das es einen Speicherbreich mit Namen XYZ im Addressbereich von X bis Y gibt. Nun brauch man nur noch dem Compiler mitteilen das er Variable Z im Speicher XYZ ablegen soll. Alle Variablen die dort abgelegt wurden werden aber weiterhin vom Compiler selber organisiert. Nun, das Gleiche kann man aber auch für die Speicherbreich die die Memory Mapped Devices enthalten machen. Auch das habe ich oben mit CPLD_MM gezeigt. Diese Form der Programmierung lässt es nun zu das man im Makefile die Speicherorganisation dynamisch anpassen kann. Also nochmal genauer: > Z.B. Frage ich mich gerade, was mit stink normalen Variablen > passiert? Liegen die im Ram des AVR oder liegen sie extern? Ich gehe von WinAVR aus. Alle globalen Variablen wie uint8_t i; char Name[12]; liegen in der Section .noinit da sie nicht intialisert wurden. Diese Section .noinit wird vom Compiler automatisch auf den maximal verfügbaren internen SRAM ausgelegt. Der Linker weis aber, da es statische Variablen sind, wieviel Bytes sie insgesamt benötigen. Die Section .noinit endet also an Addresse 0x10FF beim ATMega128 und beginnt bei 0x10FF - SizeOf alle Variablen im SRAM. Davor legt der Compiler den Stack an. Somit reduzieren solche globalen statischen Variablen den verfügbaren Stackspace. Alle initialisierten globalen Variablen wie uint8_t i = 0; werden ebenfalls im .noinit abgelegt, allerings Topdown im SRAM gruppiert als erstes. Man bezeichnet das zwar des öfteren als .bss Segment das ist aber nicht ganz korrekt. Denn WinAVR legt im .bss, der im Flash liegt, die Initialwerte dieser Variablen an. Im .init0 Code wird nun die .bss Section automatisch in den Bereich der .noinit Section kopiert und somit die globalen und preinitialisierten Variablen eingerichtet. So ich hoffe das ich da jetzt nichts falsches geschwätzt habe. So jedenfalls habe ich den Startupcode den WinAVR generiert verstanden. Es ist nun ohne weiteres möglich diese Sections selber im Makefile für den Linker vorzugeben. Auf alle Fälle hat man im WinAVR die Freiheit eigene Sections anzulegen, ihnen einen Namen zu geben und dann eine Variable per Zuweisung mit attribute() in dieser Section abzulegen. Alle Variablen in der gleichen Section werden aber immer noch vom Compiler organisert, d.h. der Linker hat die Freiheit wie er sie in dieser Section addressbezogen speichert. Andererseits sollten nur die Anforderung des angestrebten Zieles die eingesetzten Mittel bestimmen. Damit meine ich ob ein WEB Server auf einem AVR, der zusätzlich noch bis zu 1Gb an SD/MMC Flash zur Verfügung hat um dort unveränderliche Bilder, HTMLS usw. zu speichern, überhaupt 512Kb an SRAM benötigt. Oder ob eben 64Kb nicht ausreichen würden. Auch ich würde mit 64Kb SRAM bei weitem auskommen und sehe eigentlich nicht die Notwendigkeit für einen WEB Server auf'm AVR das er mehr bräuchte. Wichtig wäre dann das die SD/MMC Library + zugehöriger FAT Library möglichst hoch effizient ist um auf die externen Daten schnell zugreifen zu können. Im Falle eines HTML Servers ist es glaube ich wichtiger das die rauszusendenen HTMLs möglichst effizient geparsed werden können. Die einkommenden HTMLs um Interaktionen zu ermöglichen sind meistens nur 1-2 Kb groß. Klar einen SSL Client für Verschlüsselungen wird man da eh nicht reinkriegen. In diesem Falle würde ein kleiner Xlinix ausreichen um alles unterzubekommen. Wie gesagt, falls du dich für den CPLD entscheidest bin ich gerne bereit meinen Beitrag zu leisten. Ich kann aber deine Bedenken durchaus nachvollziehen und weis selber was es heist Support leisten zu wollen ;) Gruß Hagen
Ich denke es gibt da zwei unterschiedliche Richtungen: entweder mit AVR und alles möglichst einfach halten, oder gleich ein richtig dickes Ding mit ARM-Controller und RAM so weit das Auge reicht. Ein Hybrid mit AVR, gebanktem RAM und CPLD ist weder Fisch noch Fleisch: zu aufwändig und umständlich für's Hobby, zu leistungsschwach für größere Anwendungen.
Hi Andreas, normalerweise würde ich dir zustimmen, zumindestens stimmt das im übertragenem Sinne in meiner Arbeit als professioneller Programmierer. Allerdings habe ich's auch erleben dürfen das man mit unglaublich kleinen Mitteln denoch was Großes aufbauen kann :) Das wurde aber nur möglich weil sich Enthustiasten nicht an die "Norm" gehalten haben und experimentierten. Ich denke da nur an Igor und die vielen anderen Leute wie hier im Forum. Und im grunde ging es Guido ja nur darum den Latch, die NANDs und INV's wegzubekommen um die Platine übersichtlicher zu machen. Und falls es nur das sein sollte dann wäre ein CPLD schon eine Möglichkeit. Die Wünsche der Einzelnen sind halt nur ein bischen abgeschweift :) Gruß Hagen
Hi. Mir scheint, dass das ganze jetzt langsam immer mehr in eine endlose Diskussion ausartet. Ich will mich ja nicht unbedingt einmischen, da ich ja mein eigenes Projekt habe, aber naja... irgendwie treten die selben Probleme auf wie Linux teilweise hat. Viele Leute, die als Entwickler helfen wollen, haben zwar gute Ideen und sind auch gut, um Fehler in Layouts zu finden und überall dort wo mehr Augen mehr sehen als zwei, aber leider kommt es dabei auch oft zu einer Schwierigkeit: jeder möchte seinen Hardware-Teil dabei haben (auch verständlich) und damit kommt es zu vielen Änderungen am Layout und das Ding wird im Prinzip nie fertig. Ich kann da Andreas zwar teilweise zustimmen, muss aber trotzdem sagen, dass auch die relativ "kleinen" AVRs sehr leistungsfähig sein können! Mal etwas projektbezogener: Wenn man den CPLD verwendet, dann sollte auf jedenfall - wie es schonmal angesprochen wurde - die Programmierung auch über den AVR laufen, damit Änderungen leicht ohne zusätzliche Schnittstelle bzw. Kabel gemacht werden können. Sind ja auch nur 4 Leitungen, die mit dem AVR verbunden werden müssen! Falls kein CPLD verwendet werden soll, weil den die wenigsten zu Hause rumliegen haben, ist für die Chipselectgenerierung vielleicht ein 74HC138 interessant. Dann könnte man z.B. 32kByte SRAM auf Adresse 0x8000 - 0xFFFF legen und 8 CS-Signale mir A14,A13,A12 machen. Man könnte dann auch eine Schnittstelle definieren, wobei 8 CS-Signale, die 8 Datenleitung, 16 Adressleitungen, WR, RD, 5V, 3.3V und GND draufliegen. Damit könnte man extern noch bis zu 8 weitere Devices anschließen. So könnte sich jeder noch seine eigenen Sachen (IDE, USB Host, ...) anschließen und so wird das Board langsam wirklich zur absoluten eierlegenden Wollmilchsau. mfg Andreas
Hi ach so hätte auch interesse an ner platine ev auch nur am layout zum platine selber machen Gruss Flo
Hi guido Als Levelshifter könnte ich nen max3000 empfehlen hab ich auch schon verwendet und geht gut. Den gibts bei maxim als sample ;) Gruss Flo (auch wenn du mich hasst ;) )
Hallo Guido, ich hätte Interesse an drei Stück von den Platinen. Gruß Torsten
Hi ich muß zwar meine Zusage für eine Platine zurückziehen (bin an ein anderes Board mit aVR und Ethernet gekommen) aber trotzdem würde ich den 74LVX125 als Levelshifter vorschlagen. http://www.fairchildsemi.com/ds/74/74LVX125.pdf Auf irgendwelche Bauteile die nur als Muster zu beschaffen sind würde ich verzichten. Matthias
Hallo Guildo, wie sieht der CMOS 4041 aus? Ich benutze den zwar zum Hochshiften eines VFD; aber der kann IMHO auch inver arbeiten. Gruß Marcus
Sehr interessanter Tread werde ich weiter beobachten. @Guido super Leistung cu Fred
mich würde auch eine oder zwei kaufen wenn möglich danke oe6kug kern helmut bitte um info
hab die seiten schon im archief und wie gehts weiter wo bekommt mann die platinen danke
Hallo, habe mir die Sachen angesehen, gefällt mir gut. Passt da noch ein RS485 Treiber mit drauf, anstatt RS232 ???
Hallo, Lediglich der RS232 Treiber müsste durch einen RS485 Treiber ersetzt werden (Bestückungsoption oder Jumper) + 100Ohm Terminator. Der Ausgang kann auf die Sub-d Buchse gehen. Tschau
jetzt mal langsam, mit großem Interesse habe ich diesen Thread verfolgt. Solch eine Platte hatte ich auch schon mal designt. Bin aber inzwischen von der eierlegendenden Wollmilchsau (EWMS) abgekommen. Habe mich auf ATMega128 Takt Reset ISP JTAG + Stromversorgung + SRAM + EEPROM + 10BT Ethernet + RS232 + Addressdecoder beschränkt. So eine EWMS braucht man nicht, schließlich ist ein Mikrokontroller. Beim Experimentieren stört die überflüssige Peripherie nur. Für besser halte ich, dass man die grundlegende Schaltung erweitern kann, eine Art BUS-System und das sie auf ein Steck-Board paßt, dh Abstand der IO-Pins im Steck-Board Raster. Für Erweiterungen kann man dann Module aufstecken. Eine EWMS wird zu teuer, nie werden alle Schnittstellen benötigt. Es geht auch mal was kaputt beim Experimentieren, dann löte mal so einen Tausenfüßler ohne Verluste (wenn auch nur optisch) raus. Ich komme aus dem Bereich KFZ-Technik, hätte dann gern noch MOST, FlexRay, LIN, K-Bus, I-Bus... Also, ich fände es besser, ein Grundmodul ATMega128 Takt Reset ISP JTAG + Stromversorgung + SRAM + ggf. EEPROM + Addressdecoder zu bauen. Links und rechts einreihige Stiftleisten, die zum Stapeln der Module dienen und die im Raster eines Steckbretts liegen. Ich glaube solche Module gibt es schon massenhaft, wenn man sich den Arbeitsaufwand überlegt sind die auch recht preiswert. Gruß G.
Ja, RS485 würde das ganze Schnittstellenmäßig abrunden :-) Die Treiber sind leicht erhältlich und preiswert. Und ein bis zu 1,4 Kilometer langer Bus ist ja eine schöne Option :-) Gruß Andreas
Hallo Guido, hab mir mal das Layout angeschaut. Werden das 2 oder 4 Layer? Mit 2 Layern wirst du das nicht schaffen. Ich spendiere 150 Euro, wenn du das fehlerfrei mit 2 Layern, wenigen Brücken und allen geplanten Eigenschaften hinbekommst... Gruß
Hallo super Thread. Falls die Sache was wird, hätte ich da auch Interresse an ner Platine. Ist bei diesen tollen Schnittstellen auch an einen I2C BUS-Treiber bzw. Multiplexer oder 1-Wire Bustreiber gedacht? Ich möchte damit Temperaturen erfassen. Nin leider ein Hardwarnobody. Viele Grüße Achim
Hallo Achim, so wie das bisher sehe - Guido bitte korrigiere mich falls ich falsch liege - werden die I2C Ports nach aussen weitergeführt. @Guido: der RS485 kan doch IMHO per VIA auf die Unterseite verbannt werden oder? GRuß Marcus
Der dient der Richtungsumschaltung und braucht einen Portpin, wenn die Richtung vom MC geschaltet werden soll. Du willst doch Senden und Empfangen, oder? Wieder eine Leitung mehr für 2-seitige Layout... Gruß
Hi, ich verfolge diesen Thread schon einige Zeit und hatte mich fuer 2 Platinen bei Guido gemeldet. Die RS485 Schnittstelle wurde in meinen Augen durch den Can Bus abgeloest. Es ist somit in meinen Augen ein bischen Oversized jeden denkbaren Bus zu implemetieren. Zum Schluss muss Guido noch GPIB, Bluetooth , Firewire und IRDA mit auf die Platine quetschen. Ich moechte niemanden auf den Schlips treten , deshalb würde es mich interessieren wieso die RS485 Schnittstelle noch mit eingebunden werden soll. Mfg Dirk
Hallo Guido, wenn Werner 150 Euro spendiert, haben wir ja die Einmalkosten für eine Kleinserie zusammen :-) Dann kostet jede Platine noch vielleicht 6-7 Euro. Ich duck mich schonmal wenn ich das jetzt frage :-) Meinst du man könnte noch über die Farbe der Platine abstimmen, ich finde das blaue Basismaterial einfach optisch genial. Dann noch ein gelber Bestückungsdruck :-) ... Ich weiss, das Layout ist ja noch nichtmal fertig, aber kann ja nichtmehr lange dauern. Grüße Andreas
Und ich habe den CPLD soweit fertig. Eventuell könnte ja mal jemand mit mehr Erfahrung da reinschauen. Guido möchte bei 5 Volt und VQPF44 bleiben was die Wahl auf den XC9536 VQPF44 beschränkt hat. Der CPLD wurde voll ausgelastet, d.h. es stehen keine freien Pins und nur noch 1 Makrozelle zur Verfügung, leider. Diese Entscheidung hatte mehrere Gründe. Die meisten die das Board aufbauen werden haben keine Ahnung von VHDL und CPLDs. Die Leute die aber Ahnung haben können die Funktionalität an ihre Wünsche anpassen. Aus dem gleichen Grund wurde auch auf die Programmierung des CPLD's per AVR verzichtet. Man kann ja immernoch über die Header und eine spezielle Software auf dem AVR das so verdrahten das man den CPLD Onboard programmieren kann. Die Funktionalität sieht so aus: bis zu 512Kb externer SRAM wird per 32Kb Memory Bänke angesprochen. Dabei können immer eine/zwei der maximal 16 Bänke in den AVR Speicherbereich eingeblendet werden. Es gibt insgesamt 5 Memory Mapped Geräte in den Addressbereichen: 0x0000-0x10FF ATMega128 Register + interner SRAM 0x1100-0x11FF CPLD.Memory Controller 0x1200-0x12FF CPLD.externer 8 Bit Port 0x1300-0x13FF FTDI 0x1400-0x14FF Realtek 0x1500-0xFFFF externer SRAM Der CPLD hat einen 8 Bit breiten Ausgabe Port, sozusagen eine Memory Mapped Port Erweiterung des ATMega128. An diesem Port sind bis jetzt 4 SPI Chip Selects vorgesehen. D.h. die Chip Selects für MMC/CAN/seriell Dataflash usw. Desweiteren übernimmt der CPLD die Ansteuerung der RD# und WR# Signale des FTDI Controllers. Diese Signale werden abhängig von der Addresse (0x1300-0x13FF) und von WR\ und RD\ erzeugt. Sozusagen eine implizite Addresdekodierung über die WR# , RD# Signale am FTDI Chip. Im ZIP File findet sich ein Jpeg -> "Simulation.JPG" in dem man sich die simulierten Signale anschauen kann. Je nach Ausbaustufe des Boards kann das VHDL wieder "gestutzt" werden. Wer zb. nur 64Kb SRAM anschließt kann 4 Pins freimachen und eine Menge an Makrozellen einsparen. Wer keinen FTDI lötet kann 2 zusätzliche Pins freimachen. Wer mehr Memory Mapped Geräte benötigt kann den 8 Bit Port auf 7 Bit verkleinern usw. usw. Denoch, auf die Festlegung auf 5 Volt und VQPF44 ist die Wahl des CPLD's sehr beschränkt, mehr als 36 MM's sind nicht drinnen. Gruß Hagen
Nein ist es nicht. Beide, RD und WR, sind am FTDI Low-Aktiv alles andere wäre auch irgendwie nicht so Standardkonform. In allen Schaltbildern ist zwar nur RD ein invertierter Eingang, wenn man aber im Datenblatt genau nachliest so findet man schon auf den ersten Seiten einen Text indem WR# statt WR geschrieben wurde. Ich habe dann einige Schaltbilder mit dem FTDI analysiert -> Jasper,und dort ist WR low aktiv, auch wenn das Schaltbild anderes suggeriert. Allerdings, dreifach hält besser, es wäre also schön wenn du auch nochmal ins Datenblatt schauen könntest. Viel dir sonstnochwas am VHDL auf was geändert werden muß ? Gruß Hagen
Warum RS485: Einfach und billig, kaum Overhead bei der Hardware (8pol. IC).
Hi http://www.ftdichip.com/Documents/DataSheets/ds245b15.pdf <Zitat> Writes the Data Byte on the D0..D7 into the Transmit FIFO Buffer when WR goes from high to low. </Zitat> Zusätzlich das Timing-Diagramm auf Seite 11. Zeit T9. Data Setup Time before WR inactive. Sollten mind. 20ns sein. http://www.atmel.com/dyn/resources/prod_documents/doc2467.pdf Seite 330. Zeit 13. Data Setup to WR Low. Sind hier 0.5*tclcl-20. Das sind 11ns bei fosz=16MHz. Wenn du WR invertierst passt das Timing wunderbar. Matth*schoneinigFT245BMverbauthabend*ias
@Matthias: Ok, nochmal um die Sache 100%'tig richtig zu machen: >Writes the Data Byte on the D0..D7 into the Transmit >FIFO Buffer when WR goes from high to low. das heist für mich wenn WR = Low dann wird geschrieben, ergo WR# ist Low Active. Zweitens: Ich gehe davon aus das der FTDI bei WR# = High und RD# = High seinen Datenbus auf High-Z setzt. Das muss er da ansonsten Buskonflikte mit anderen Geräten zu erwarten sind. Demzufolge darf der CPLD FTDI_WR# und FTDI_RD# nur solange auf Low ziehen wie AVR_RD# oder AVR_WR# auf Low sind UND auf A8-A15 der Addressbereich des FTDI's anliegt. Würde ich nun das FTDI_WR# Signal invertiert zum AVR_WR# Signal gestalten dann würde der FTDI ja alles was am Datenbus anliegt,unabhängig von A8-A15 in seinen FIFO schreiben. Ok, ich weis er ist Flankengetriggert. Ich ging bei meinem Design aber von einem ganz anderem Timing aus. Im Datenblatt des ATMega128 auf Seite 27 ist das Bustiming grafisch dargstellt. Wenn ich das richtig interpretiere ist es auf Grund des asynchonen Konzeptes notwendig das am Datenbus schon vorher und auch nach den Flanken auf WR# und RD# ein korrektes Signal anliegt. Ergo: FTDI_WR# geht par ns später auf Low wenn AVR_WR# auf Low fällt und nur dann wenn A8-A15 die Memory Mapped Addresse vom FTDI enthält. Eigentlich müsste dann mein VHDL korrekt sein. Hast du dir mal "Simlation.jpeg" im ZIP angeschaut ? Ich bin mir aber eben unsicher in diesen Punkten, eben weil ich so'nen Ding noch nicht praktisch verbaut habe. Von daher, wenn du sagst es ist definitiv besser das Signal zu invertieren dann mache ich das auch. Ich möchte halt sicher gehen und Guido unnötige Fehlersuchen ersparen. Gruß Hagen
Hi es ist definitv besser denn wenn du das Signal nicht invertierst wird das Timing bei 16MHz nicht mehr in den Spezifikationen sein. WR ist, wenn mans mal genau nimmt weder High- noch Low-aktiv. Es ist flankengetriggert. Wenn also eine negative Flanke auf WR kommt wird das was gerade an D0 bis D7 ansteht in den FIFO geschrieben. Wird das Signal jetzt nicht invertiert reicht die Setup-Zeit die D0-D7 vor der negativen Flanke brauchen nicht mehr aus. Bei CMOS ist Eingang == HighZ. Da gibt es keinen Unterschied. Beim WR wird also der Port nicht kurz niederohmig. Matthias
@Matthias: >Wenn also eine negative Flanke auf WR kommt wird das > was gerade an D0 bis D7 ansteht in den FIFO geschrieben. > Wird das Signal jetzt nicht invertiert reicht die Setup-Zeit die > D0-D7 vor der negativen Flanke brauchen nicht mehr aus. Ok, ich habe jetzt nochmal die FTDI Timings genauer angeschaut. Im Datenblatt Seite 11 -> T9 und T10. Vor der Pegeländerung an WR# von High nach Low müssen die Daten min. 20ns auf dem Datenbus stabil liegen == T9. T10, die Haltezeit dieser Daten nach der Pegeländerung ist 0 ns. Die Vorhaltezeit der Daten durch den AVR beträgt 0.5 * Tclcl -20ns == 11ns bei 16 Mhz. Der Skew des CPLD von AVR_WR + AVR_AH zum FTDI_WR beträgt minimal 5ns, ergibt 16ns. Das ist zu kurz. Das Problem düfte es also sein das der AVR die Daten nicht 20 ns vor dem Schalten von FTDI_WR# anlegt. Man müsste einen Delay für FTDI_WR definieren, nur wie geht das mit'm XC9500. Ok, wenn ich jetzt das FTDI_WR# invertiere gibt es aber keine Probleme falls bei FTDI_WR# == Low zusätzlich noch FTDI_RD# auf Low geht oder ? In meinem VHLD war's bis jetzt so: FTDI_RD <= '0' when (AVR_RD = '0' and AVR_AH = "00010011") else '1'; FTDI_WR <= '0' when (AVR_WR = '0' and AVR_AH = "00010011") else '1'; Wie soll ich jetzt diese Logik ändern ohne das ich AVR_WR als Taktsignal definiere ? Gruß Hagen
@Mattihas: Ich habe jetzt das Signal invertiert. Der Geist sträubt sich zwar aber die Timing Simulation sagt das es richtig ist. Der AVR hält nach AVR_WR von Low auf High bei 16 MHz die Daten noch für 47ns auf dem Bus. Der Skew von AVR_WR nach FTDI_WR ist maximal 15ns. Somit haben wir die komplette AVR_WR Zeit + den CPLD Skew als Setuptime für die Datenleitungen am FTDI. Sonst noch was zu beachten ? Gruß Hagen
@Guido: Auch ich gehöre zu denjenigen die diesen Thread verfolgen und (spätestens durch die Integration des CPLDs) Interesse an ein paar Platinen haben. @Hagen: Ich habe mir Dein VHDL mal angeschaut. Meine Erfahrungen sind zwar schon ein paar Tage (oder besser Jahre?) her, hätte aber dennoch die eine oder andere Anmerkung. Prinzipiell scheint es ja zu funktionieren, doch frage ich mich, warum Du die CS-Signale für den RTL8019 und das SRAM innerhalb eines Prozesses definierst. Ich würde die Definition auseinanderziehen, so wie Du es auch unten für den FTDI gemacht hast. Auch würde ich die Adressbereiche zentral definieren, dann ist es für diejenigen übersichtlicher, die Änderungen vornehmen wollen (auch wenn es eigentlich schon recht übersichtlich ist). Volkmar
@Volker: das hatte ich schon alles so gemacht gehabt. Seltsamerweise verbrauchte das dann beim Fitten mehr Makrozellen als jetzt. Es waren um einiges mehr Makrozellen als inden 36'er reingehen. Insgesamt habe ich wohl 12 verschiedene VHDL's entwickelt und ausprobiert. Nimmt man das obige VHDL und compiliert es für einen MAX7000 unter Quartus II Free Edition, dann verbraucht es 65 Makrozellen. Auch dies ist seltsam. > Prinzipiell scheint es ja zu funktionieren, doch frage ich mich, > warum Du die CS-Signale für den RTL8019 und das SRAM innerhalb eines > Prozesses definierst. Ich würde die Definition auseinanderziehen, > so wie Du es auch unten für den FTDI gemacht hast. Das ist prinzipiell richtig. Nur dachte ich schon ein bischen weiter, denn so, mit den separaten Processen, ist es für die Zukunft möglich gezielt MMD_CS zu erweitern, zb. A18 und A17 fallen weg da nur ein 128 Kb SRAM benutzt wird oder der 8 Bit Port wird auf 6 Bit verkleinert. Man hat so 2 zusätzliche CS's in MMD_CS zur Verfügung. Deren Dekodierung würde dann im separaten 1. Process programmiert werden. Die beiden Prozesse zum Lesen/Schreiben der internen Register des CPLD's habe ich so gebaut damit man diese so umprogrammieren kann das sie Flankengesteuert auf AVR_WR und AVR_RD reagieren können. Pro Prozess kann es aber nur ein Clock Eingangssignal geben. Die globale Definition der einzelnen Addressen per Konstanten habe ich nicht gemacht weil es unter Umständen vorkommen kann das man die Adressauswertung, nicht so wie jetzt, sondern Bitorientiert und zerlegt durchführt. Dann würden uniforme globale Konstanten den VHDL nur schwerer lesbar machen da ja dann diese Konstanten ebenfalls im Source per Masken zerlegt werden müssen. @Guido: da fällt mir doch ein, du solltest AVR_WR und AVR_RD beim Pinning auf GCLK Pins (globale clock's) legen. Gruß Hagen
Ich habe verschiedene Konfigurationen für den CPLD getestet. Zb. eben das man AVR_RD und AVR_WR als Clocksignale betrachtet und intern Flankengetriggert auswertet. Dies hat keine Änderungen im Resourcenverbrauch gebracht (sprich weniger Makrozellen), aber es hat das Timing im CPLD verbesster. Falls wir nun feststellen das das jetzige Timing zu kritisch ist hätten wir somit die Möglichkeit das VHDL ohne neues Layout anzupassen. Desweiteren habe ich zB. den 8 Bit SPI_CS Port auf 7 Bit reduziert und das freie Signal SPI_CS(7) als zusätzliches MMD_CS(2) umdefiniert. Somit hätte man ein zusätzliches Memory Mapped Gerät verfügbar, zB. CF Karte, IDE Fetsplatte oder parallele ADC/DAC die alle am Bus angeschlossen werden könnten. Dieses geänderte VHDL beötigt dann 31 Makrozellen und passt somit ohne Probleme rein. Das gleiche habe ich dann noch mit A18 des SRAM's gemacht. Wenn man also statt 512Kb nur 256Kb SRAM's anschließen möchte so bliebe ja A18 ungenutzt. Nun das geänderte VHDL nutzt diese A18 als zusätzliches MMD_CS(2). Auch diese Konfiguration habe ich getestet und sie benötigt 32 Makrozellen. Somit habe ich verschiedene gänderte CPLD Konfigurationen ausgetestet und versucht das Pinning so zu gestalten das es ohne Layoutänderungen mit verschiedenen Konfigurationen funktioniert. Ergo: ich habe geprüft ob es flexibel ist. Zb. habe ich mal testweise den SPI_CS Port in zwei getrennte 4 Bit Ports zerlegt. Der eine Port wird als 2 zu 4 Dekoder angesprochen, für die SPI CS Signale. Der andere Port ist ein 4 Bit paralleler Port. Bei dieser Konfiguration werden denoch 33 Makrozellen verbraucht obwohl ich annahm das es weniger benötigen könnte. Somit ist das jetzige Design mit einem 8 Bit parallelen Port wesentlich flexibler. Allerdings, mehr als "Anpassungen" sind bei einem XC9536 eben nicht drinnen. Gruß Hagen
@Hagen: > Zb. habe ich mal testweise den SPI_CS Port in zwei getrennte 4 Bit > Ports zerlegt. Der eine Port wird als 2 zu 4 Dekoder angesprochen, für > die SPI CS Signale. Der andere Port ist ein 4 Bit paralleler Port. Bei > dieser Konfiguration werden denoch 33 Makrozellen verbraucht obwohl ich > annahm das es weniger benötigen könnte. Somit ist das jetzige Design mit > einem 8 Bit parallelen Port wesentlich flexibler. Hast Du den 2zu4 Dekoder 'hinter' den Speicher für die 2 Bits gebaut? Ich habe mich zwar noch nicht mit Xilinx beschäftigt (damals war Altera und Lattice an der Reihe), aber es könnte sein, das Du etwas einsparst, wenn Du den 2zu4 Dekoder vor die Zellen baust. Aber ich fürchte, wir schweifen hier etwas vom Thema ab. Volkmar
Hallo Leute, ich muß jetzt dochmal etwas zu dem "so flexibel wie möglich sagen": Prinzipiell finde ich das ja alles supter, wenns so flexibel ist. Aber bedenkt auch, dass hierdurch noch mehr Probleme entstehen und zwar für die Leute, die ein CLPD weder kennen noch programmieren können. Zudem wernn ich jetzt da noch mehr Devices anbauen würde, würde die Firmware irgendwann so komplex, dass es diese Leute wieder abschreckt. Also bitte irgendwann macht mal einen Punkt und dann solltet ihr das mit dem Vorschlaghammer durchziehen und zwar ohne Kompromisse, sonst wid dat nüs, jeschweige denn irgendwat bruchbahres - wie der Rheinländer zu sagen pflegt. So, in diesem Sinne, mir fehlt da so langsam mal Schlußstrich. Gruß Marcus
Das Port Register wurde von 8 auf 6 Bits reduziert. 2 Bits dienen dann als Input für den 2 zu 4 Dekoder. Man spart 2 FF's für die 2 Bits ein, man benötigt aber wieder zusätzliche Makrozellen für den Dekoder. Sogesehen habe ich den 2 zu 4 Dekoder "hinter" die 2 Bits gebaut. Auch aus dem Grunde um deren Inhalt wieder aus dem CPLD durch einen Lesezugriff aulesen zu können. Auf diese "Lesefähigkeit" wollte ich von Anfang an nicht verzichten. Ich sollte denoch mal testen was ein Port + Memory Banking im writeonly Mode bringen könnte. Gruß Hagen
Hallo Guido, erstmal Respekt vor deinen Routingkünsten, ich hätte da warsch. irgendann die Lust dran verloren! Ich mahce mir bzgl. des CPLD's keine Sorgen, wollte lediglich die PRoblematik aufzeigen. Wie da noch ein RS485 Treiber drauf kommen soll ist mir wirklich ein Rätsel ;) Gruß Marcus
Hallo Guido, erfahrungsgemäß dauern bei solchen Projekten 90% Fertigstellung 10% der Zeit und die restlichen 10% duern dann 90% der Zeit. Ich stehe zum Sponsoring, wenn ... siehe Text weiter oben du das fehlerfrei mit 2 Layern, wenigen Brücken und allen geplanten Eigenschaften hinbekommst...
Hallo Guido, da ich (leider) nur die Freeware-Version von Eagle habe, kann ich vom Schaltplan leider nur die erste Seite sehen. Kannst Du zB eine PDF-Version des Schaltplans bereitstellen? Danke Volkmar
Hallo Guido, ab wann gibts das Ding denn in den Händen ;-) Du darfst Dich nun geehrt fühlen, weder Target noch Eagle haben dieses Layout ohne 500 VIAS hinbekommen. Ich bin zwar bzgl. der RS485 etwas traurig aber ich habe schon an der Voraberversion experimentiert und keinen Platz gefunden. Gruß Marcus
An alle interessenten: Leute, SUCHT FEHLER! :-) Es kann einfach nicht sein, daß da so wenig verdrahtungsfehler drauf sind...das würde Murphy widersprechen oO
Hallo Guido, vias hab' ich bisher mit 0,4 Bohrung und 0,75 außen machen lassen - gibt keine Probleme. Aber was unbedingt gesagt werden muß: Du machst einen klasse Job! Vielen Dank dafür. Einhart
Hallo Guido, zur Kontroller wäre es gut, wenn wir auch das Shematic haben könnten. Alle die Eagle mit Multilayerschematic nicht bedienen können sei gesagt, oben in der Mitte gibts so ein Pull-Down Menu 1/8 ... . Dann könnten wir mal genauer schauen ob alles richtig ist. @Oldbug: Wenn im Schematic kein Fehler ist, dann brauchste Dich um das Layout nicht zu sorgen. Gruß Marcus
Das Schematic ist im athernet.zip enthalten! Beim manuellen Routen würde ich es trotzdem begrüßen, wenn man sich das Resultat noch einmal anschaut. Bitte nicht nur auf falsch angeklemmte Nets prüfen, sondern auch, wenn etwas merkwürdig erscheint, bescheid sagen...
Sorry, hab nicht aufgepasst ;) Im moment müssen "wir" uns dann halt mit dem PDF zufrieden geben... Aber das sollte ja auch kein Problem sein!
Hi. Hab da jetzt nochmal eine Frage bezüglich der Dimensionierung der Kondensatoren am Übertrager/Filter für Ethernet. Für die auf der Seite des Ethernet Chips kann man ja ganz normale z.B. SMD Kondensatoren verwenden (soviel ich bis jetzt gesehen habe). Die auf der Ethernetbuchsen-Seite hab ich bei einem anderen Board (Ethernut Board) als 10nF/1kV gesehen. Ich schätze mal, dass die als Überspannungsschutz dienen sollen, damit keine zu hohen Spitzen an an den Ethernet Chip gelangen. Jetzt fragt sich nur, wo man die Dinger herbekommt (sind die bei diesem Board auch so dimensioniert??)?? mfg Andreas
Großes Bravo! Auch für die schönen Renderings. Willst du die Platine wirklich in blau fertigen lassen oder soll das nur cooler aussehen? ;) Gruß, Christof
Morgen @Guido Wo lässt du die Platinen machen?? Blaues oder rotes Basismaterial würde mich für meine eigenen Platinen auch interessieren! Kann man das den PCB Firmen sagen, welches Basismaterial man haben will?! mfg Andreas
www.ethernut.de/en/enut13/index.html schau mal auf diese seite da gibts schon so was in der richtung viele grüse kern helmut
@Kern Helmut Die Seite kenn ich. Hab auch dort mal wegen den roten Platinen angefragt. Aber die haben jetzt ihren PCB Hersteller gewechselt, da sie Probleme mit den Platinen hatten (Black-Pad Problem falls das jemanden was sagt). @Guido Hab noch was vergessen. Ich hab die USB Buchse aus der con-berg library schon des öfteren benutzt. Hab de Buchse aber nicht auf Masse gelegt (funktionieren tuts so auch ;-)). Aber vielleicht wärs wirklich besser das zu machen (hatte zwar noch nie Probleme, aber wer weiß). mfg Andreas
Hallo. Grüsse esrt mal an jeden. Dies ist mein erster Beitrag hier in diesem Forum. @Guido Ich verfolge diesen Thread schon seit den ersten Tagen und würde auf jeden Fall mal zwei Platinen vorbestellen. Super Arbeit, was du hier machst! @all Wenn der Prototyp fertig ist, wird dann auch ein Wiki dafür angelegt bzw. eine "Erstinbetriebname"-Anleitung geschrieben? Wer will/kann das machen? Es gibt nämlich meiner Meinung nach viele, die das Thema sehr interessant finden, aber halt erstmal eine Funktionsfähige Basis als Muster benötigen. (Mich eingeschlossen ;-) ) Gruss Menz
Also: ich habe mich der Inbetriebnahme-Software verschrieben. Ich werde diese Software zuerst "Modulweise" aufbauen, d.h.: - Tests für einfache Schnittstellen (UART etc) - Tests für die MMDs - Gesamttests Dabei wird wohl einiges an Sopftware hinten rausfallen, was ich natürlich frei zur Verfügung stellen werde. Mal sehen, vielleicht ist ja noch jemand interessiert...
Guido: Notier mich doch auch einfach mal für 2 Platinchen. PS: Mich hat die blaue Farbe überzeugt!
Hi, habe den Thread auch vom Beginn mit größtem Interesse verfolgt! Respekt, was hier entstanden ist. Und wenn es schon ans Bestellen geht... Interesse an einer Platine habe ich auch! Gruß Christian
@guido Ich möchte mich für 3 Platinen vorbestellen danke kern helmut oe6kug@aon.at
Super, Guido! ich wollte wegen der Stecker nicht meckern - aber die waren mir suspekt. Jetzt ist die Sache rund. (na gut, ich hab' bei meinem letzten Projekt aus Platzgründen einen Mini-USB Stecker vorgezogen). Das mit der Mail zu Vorbestellung ist OK. Dann hast du auch eine richtige Antwortadresse. Mach's aber bitte nicht zu billig. Deine Arbeit läßt sich zwar nicht bezahlen, aber Prototypen, Bauteileausfall Versandkosten bei der Beschaffung müssen wieder 'reinkommen. Danke und viel Erfolg beim Testen Einhart
@Guido: Ich denke auf einen Euro hin oder her an der Platine kommt es auch Florian nicht an. Ob 8,80 EUR oder 9,95 EUR wäre mir jedenfalls egal (solange nachher nicht die Versandkosten unverschämt sind:o) Aber auch mir sind noch ein paar Sachen unklar: CPLD: Damit will ich mich eigentlich nicht beschäftigen müssen. Kannst du das programmiert bereitstellen und was kostet das dann (muss nicht cent-genau sein. 1, 2, 4, 6, 8, 10 EUR?) Falls nicht, welches ist es nun eigentlich (was kostet es z.b. bei reichelt) und wie kann ich es mit möglichst wenig Aufwand programmieren (wird es eine SW für den ATmega geben die das auf der Platine macht?) Du hattest mal geschrieben, dass du es nur programmiert anbieten kannst wenn es bestückt ist. Dann wäre auch der ATmega schon bestückt? Was würde der dann kosten (den hätte ich nämlich schon hier...) Oder würdest du das mit einem Adapter per PC-SW machen? Was wäre denn dann schon bestückt? Ich denke, es wird einigen so gehen. Man könnte viel leichter verbindlich etwas bestellen, wenn man die Gesamtkosten halbwegs abschätzen könnte. "Platinenpreis (ohne CPLD) < 10,-" ist so ähnlich wie "zwei bis drei Platinen":o) -> Also, was ist der circa Preis pro Platine inkl. programmiertem CPLD? Bauteile allgemein (mit Ausnahme der R's und C's): Gibt es eine Art Bauteilliste mit (z.B. Reichelt-) Bestellnummern, oder wird es sowas geben? Natürlich haben einige schon einige Bauteile herumliegen bzw. wollen diverse Bestückungsvarianten nutzen. Aber diejenigen, die das meiste bestellen müssen, werden von der Vielzahl der Möglichkeiten richtig gefordert:o) Daher wäre so eine Art "Standardbestückungsvorschlag" nicht schlecht, zumindest für mich. Mir ist es letztlich egal, was für einen SDRAM ich bestücke. Er sollte halt "nicht zu klein" sein und ein günstiges Preis/Leistungsverhältnis haben... (Das ist aber letztlich nicht zwingend erforderlich, um mich für das Projekt zu begeistern:o) VCC / GND an Stiftleiste: Für die eigenen Erweiterungen auf der zweiten halben Europlatine wäre Versorgungsspannung nicht schlecht. Steht das auf einer der Stiftleisten bereit? Ich meine jetzt nicht das AVCC und AGND Potential, sondern würde das Netzteil mitnutzen wollen. Oder hab ich da was übersehen? Nimmt man da im Betrieb die ISP Schnittstelle? In Abhängigkeit dieser Fragen wäre ich an bis zu 5 Platinen interessiert, von denen du vermutlich zwei schon gezählt hast (Sammelbestellung für Kollegen:o), sobald mir die Kosten ein bischen klarer sind meld ich mich dann zwecks Bestellung per email (reicht Montag noch?). Btw: Die Standard-Stiftleisten gefallen mir auch besser:o) Gruß, Jochen
Hallo Guido, ich finde dieses von Dir angetrieben Projekt super. Ich habe relativ neu die Atmegas als Hobby mit niedriger Priorität für zu Hause entdeckt. Ich habe mal den Webserver von Ulrich Radig aufgebaut. Ich bin dann über Dein Projekt gestoßen. Ich habe solche Initiativen mal in einem früheren Thread angeregt, da ich von Hardware bzw. vom Leiterplatten herstellen keine Ahnung habe. Um das "Ganze" zu fördern würde ich auch 5 Platinen verbindlich ordern bzw. mich bei den Prototypkosten beteiligen. Kann man die "schwer" beschaffbaren Teile auch von Dir bekommen. Normalerweise bestelle ich nur bei Reichelt. Vorschlag: Deponiere doch bei der Leiterplattenfirma Dein Layout, dass man dort bestellen kann. Nach erfogreichem Test, sollte man dann mal 100 Stück fertigen lassen und die Prototypkosten auf dies umlegen. Ich bin gerne bereit das damit verbundene Risiko mitzutragen. Bei Überschuss könnte mann einen neuen Prototypen finanzieren...etc. Aufnahme des Projektes und dess Aufbau ins WIKI? Viele Grüße Achim PS: ==>Open Source Pool für Leiterplatten ==>http://www.mikrocontroller.net/forum/read-1-117398.html
Hallo Sorry: Schrotthändler ist womisa. Die Bestellung und das Angebot gilt. "Schrotthändler" hat nicht mit dem Projekt zu tun. Entschuldigung Viele Grüße Achim
Hallo Guido: wenn du mir keine Platine schicken willst muss ich sie halt selber machen oder machen lassen, wobei ich ne blaue gefertigte für um die 10 Euro natürlich nehmen würde. Porto wäre ja etwa bei 4 euro wenn ich das noch richtig in Erinnerung habe. Gruess Flo
Versand innerhalb DE (nach CH hab ich keine Ahnung) als Vorschlag: Warensendung http://www.deutschepost.de/dpag?check=yes&lang=de_DE&xmlFile=901 Maxi min 10 x 7 cm max 35,3 x 30 x 15 cm bis 500 g 1,65 EUR Gruß, Jochen
Hi Guido: Hab gedacht, dass du mir keine Platine schicken willst, den Grund kennst du ja ;) Gruss Flo
Kann ich annehmen, dass meine Frage nach dem ungefähren Preis pro Platine inkl. programmiertem CPLD (s.o.) einfach übersehen wurde? Gruß, Jochen
Zum CPLD: bei eBay kann man schon längere Zeit den XC9536 für 1.40 Euro/Stück ersteigern. Das ist also erheblich billiger als bei Reichelt. Für die Programmierung des CPLD's gibt es mehrere Möglichkeiten: 1.) mit ersternem Programmer übers Xilinx WEBPack un dem JTAG header auf dem Board 2.) mit einem bestücktem Board selber. Über die Header könnte man das SPI des ATmega128 an den JTAG des CPLD's legen. Eine spezielle Software auf dem AVR könnte den CPLD programmieren. 3.) wie in 2.) könnte man ein bestücktes Board mit einem teilbestückten Board (nur CPLD) verbinden und so mit der gleichen AVR Software programmieren. Gruß Hagen
Hi Kurz was zum CPLD: Anscheinend ist jetzt ja die Wahl auf einen 5V CPLD gefallen (ohne XL in der Typenbezeichung). Da dieser aber gekauft wesentlich teurer ist als die XL Variante, möchte ich noch kurz was anmerken. Und zwar gibts bei den XL-CPLDs die Möglichkeit auch die Ausgänge mit 5V Pegel zu betreiben. Und zwar wird der Ausgang einfach per Pullup auf 5V gezogen (muss dann aber entsprechend anders programmiert werden, glaub ich). Auf der Xilinx Seite gibts dazu entsprechende Appnotes als PDF. Damit könnte man zum Beispiel den Preis des CPLDs von 5,25 Euro auf 1,90 Euro (Reichelt-Preise) senken. Es müssten dann aber die Ausgänge z.B. per Widerstandsnetzwerk gegen 5V gezogen werden, was wieder Platz im Layout benötigen würde. Ich wollte das nur als kleine konstruktive Anmerkung hinzufügen. Die Bauteile sollten ja auch billig von Händler bezogen werden können und nicht nur von eBay ;-). mfg Andreas
Sorry... wollte nicht wieder eine Diskussion beginnen. Es war nur Information, falls mal wieder die eine oder andere Änderung ansteht, bzw. wenn jemand versuchen will, die billigeren CPLDs einzusetzen usw. mfg Andreas
@Guido bitte nicht falsch verstehen. Es macht doch nix, wenn ne Antwort länger dauert (egal warum). Du hattest schon zweimal wieder gepostet, und mir ist es schon mehrfach passiert, dass ich Beiträge erst mal übersehen habe (aber man sollte halt nicht von sich auf andere schliessen:o) Der Unterschied zwischen 8,80 und 9,95 wäre mir nicht so wichtig, weil beides unter 10,- liegt und ein bischen was für dich ja ruhig rausspringen sollte. Gegen 8,80 habe ich natürlich trotzdem nix einzuwenden. Das "circa" hatte ich eingefügt, weil mir ja klar ist dass du keine centgenauen Angaben machen kannst. Ich hatte mich zuvor bei reichelt umgeschaut, war mir aber halt letztlich (wg. "CPLD 95xx") nicht sicher welches verwendet wird. Danke für den Link. Von CPLD hab ich wirklich keine Ahnung, und daher bin ich nicht sicher, ob ich die Platinen aufbauen kann wenn ich die Dinger nicht programmiert auftreibe. Mit dem programmieren hättest du ja noch weiteren Aufwand, und deswegen hätte ich es nicht für abwegig gehalten das da noch eine Art "Programmieraufschlag" draufkommt (Horror Szenario z.B.: 10,- Platine + 10,- CPLD + 5,- Auflöten und Programmieren = 25,- = zu viel für mich). Schon ganz anders sieht das für mich aus, wenn z.B. 8,80 Platine + 2,20 programmierter CPLD = 11,-. Bei 6 Platinen macht das dann doch was aus. Da letztlich jeder ein CPLD braucht, wäre es ja vielleicht eine Idee, wenn jemand mit einem Programmer einen Posten bei ebay ersteigert, programmiert, und dann an dich weiterschickt. Du könntest dann einfach ein programmiertes CPLD zu jeder Platine legen. >>Gibt es eine Art Bauteilliste mit (z.B. Reichelt-) Bestellnummern >Ja - nicht nur eine Art sondern eine ausführliche Liste Dachte ich mir doch. Ich hab den ganzen Thread gelesen, und versucht hinter die "Geheimnisse" des Shematics.pdf zu kommen (bin eher Richtung Software veranlagt), aber nix gesehen. Dann muss es wohl in der athernet.brd irgendwo im eagle sein. >Hab ich was vergessen? Nur ob es Montag oder Dienstag nächste Woche noch reicht, wenn die Mail mit der Bestellung bei dir eintrifft:o) Gruß, Jochen
> Da letztlich jeder ein CPLD braucht, wäre es ja vielleicht eine > Idee, wenn jemand mit einem Programmer einen Posten bei ebay > ersteigert, programmiert, und dann an dich weiterschickt. So ähnlich sind wir ja schon vorgegangen. Ich habe 10 Stück ersteigert, 5 sende ich an Guido der dann erstmal den Prototypen aufbauen und testen muß. Ich habe leider bisher noch nie eine CPLD per AVR programmiert und kann somit keine verbindliche Aussage treffen. Aber im Grunde wäre es ganz einfach. Du lötest deine Platine mit unprogrammierten CPLD. Dann programmierst du den AVR mit einem speziellen HEX-File in dem das ROM des CPLD's integriert ist. Danach verbindest du den AVR mit dem JTAG vom CPLD auf dem Board und beim nächsten Reset des Boards programmiert der AVR seinen CPLD selber. Es entstehen doch zwei Probleme: 1.) Du hast keinen ISP + Softare zur Programmierung des CPLD's 2.) Guido hat keinen 170 Euro teuren Sockel zur Programmierung der CPLDs und aus meiner Sicht sollte er auch nicht 50 Platinen für uns löten. Also würde es am einfachsten sein wenn jeder selber seine Platine zusamenlötet, den AVR mit einem speziallen HEX-File programmiert und dann so den CPLD per Header zum AVR sich selber programmiert. Es ist also nur eine Frage der Software für den AVR. Eventuell hat ja hier jemand im Forum schon ähnliches gemacht und kann da mit mehr Erfahrung was beisteuern. Ansonsten müssen wir halt durch und dieses HEX-File selber coden. Gruß Hagen
Moin Guido, ist ja zwar nur virtuel, aber Dein RAM auf der 3D-Darstellung ist um einen Pin verschoben. MooseC
ist das zusammenlöten der platine eigentlich sehr schwierig? ich hab bisher nur lochraster dips gelötet.
Hallo Guido, warum nutzt Du für die LEDs der Netzwerksignale und für die LEDs der CAN-Schnittstelle unterschiedliche LED-Gehäuse? Volkmar
Schon lustig, hab noch son Ding gefunden. Sieh Dir mal die UNC-Bolzen der SUB-D an - einer ist mit Links und einer Rechtsgewinde. Kann man Dir Spezialkabel dann bei Dir für einen Spezalpreis kaufen ;) MooseC
Hast Du da an Tippkick gedacht? "nun wenigstens sechseckick und nicht irgendwas sind" Nun ist aber gut mit OT.. ;) MooseC
Jochen fragte: >>Gibt es eine Art Bauteilliste mit (z.B. Reichelt-) Bestellnummern und Guido antwortete: >Ja - nicht nur eine Art sondern eine ausführliche Liste der >Bauteile nebst Bestellnummer, Preis des Tages an dem die Liste >erstell wurde und Bezugsquelle Also entweder hab ich den Witz nicht verstanden, oder ich sitze auf der Leitung, jedenfalls kann ich das nicht finden. Krieg ich bitte noch nen Tipp wo ich suchen soll? Gruß Jochen
Hi, sind die Stiftleisten auch in einem 2,54 mm raster zu einander, damit man problemlos eine lochraster platine draufstecken kann? Gruß Tobias
Hallo Guido, 1. Extrem geile Aktion. 2. Eine verständnisfrage für mich: Wenn can auf dem board sein soll, weswegen dann den mega128 & nicht gleich den can128 nehmen? der hat den controller 'on board' und braucht nur noch den Treiber. Ist ansonsten pin-kompatiblel. 3. Frage zum Can-Treiber: Der ist ja 24V Highspeed. Eine Idee, ob es dazu Pinkomptible versionen f. 12V Lowspeed gibt? Schoene Gruesse
Ich dachte bisher, dass der AT90CAN128 zwar angekündigt, aber noch nicht wirklich verfügbar ist. Wenn das nicht stimmt, dann bitte korrigieren. Der "normale" ATmega128 ist dagegen so gut wie überall zu "normalen" Preisen auch in Einzelstückzahlen zu bekommen.
Hab hier 'ne Handvoll rumliegen. War anfangs sehr zäh zu bekommen und hatte noch die -AE (Angeblich Engeneering ;) Kennung. Die letzten 3 die ich bekommen habe waren dann aber schon -AI (industrial?). Die Doku ist noch Preliminary. Aber zu bekommen definitiv schon. Preis in Stückzahlen wohl bei 7 EUR. Weiss nicht was der Mega kostet. Schoene Gruesse
bei Reichelt kostet der ATmega128 in 1er Stückzahlen 10,50 Aber du hast den Grund, warum man den can128 nicht einsetzen sollte, ja schön aufgelistet.
Ich sag ja nicht, dass er nicht zu bekommen ist. Ich sage nur: Am Anfang (vor 1/2 Jahr ca.) war es eher kniffelig. Bezugsquellen gibts inzwischen Massenhaft. Hab leider gerade keine parat, weil sich um sowas der Kollege kümmert. Da es am Anfang schwierig war, haben wie alle möglichen Bezugsquellen ausprobiert & inzwischen sogar einen kleinen Vorrat an sowohl -AE als auch -AI Versionen der wohl auch noch für die nächsten Projekt reicht. Wenn es interessant ist, könnte ich aber auch mal fragen, woher die nun alle kahmen. Ach ja. Irgendwo im Forum hier haben sich auch schon Leute das Teil f. 14 Eur von Reichelt geordert. Wobei ich den Preis eher überzogen finde. Wie gesagt: 7 EUR schon gesehen (50 St. oder so. Wäre ja kein Problem hier wenn eh der FPGA auch über Sammelbestellung geht). Interessant an dem Teil ist halt die hohe erziehlbare 'Packungsdichte' und die recht einfache Benutzung. Simpelstes 'Entwicklerboard' das ich hier rumliegen habe ist eine Adapter-Platine von Olimes f. den mega128 (4 EUR oder so) + Quarz + CAN-Tranceiver über Flachbandkabel angelötet. Funktioniert zum Testen einwandfrei. Schoene Gruesse,
@Namenloser Scheintod: Wäre vielleicht nicht schlecht, wenn du mal angibst, WO das Teil "definitiv" zu bekommen ist. Das Schöne an Guido's Planung ist ja gerade, dass jeder jedes Teil einfach z.b. bei Reichelt bekommen kann. Soweit ich verstanden habe, meint ihr das hier: http://www.atmel.com/dyn/resources/prod_documents/doc4313.pdf Bitte darauf achten, dass diejenigen, die CAN (m.E. eine Option, kein Muss) nicht bestücken wollen, dieses auch weiterhin (ohne Mehrkosten) weglassen könnnen. Ich hab z.B. keine AT90CAN128 rumliegen, brauche auch kein CAN, und schon gar nicht in Stückzahlen. Gruß, Jochen
@jochen: Das schöne am cann128 is ja die pinkompatibilität zum mega128. Unterschied ist einzig: PIN ist beim can NC. Der Link von Dir ist ja schon die Migration-Guide mit den Unterschieden. (Hab selber aber bisher noch keinen mega128 benutzt sondern gleich den can128). Ich frag mal nach, woher wir die Teile bekommen haben. Schoene Gruesse
Das schlechte am AT90CAN128 ist, daß man sie definitiv nicht in großen Mengen ordern kann! Nicht mal übern Distri! Das war für mich der einzige Grund, einen PIC18 einzusetzen urks Ich hatte zum Schluss einen Angebotspreis von ca. 9,50 bei Abnahme von ca. 3000 Stück. Der PIC18 kostet 5,70... Noch fragen? So wie Guido das entwickelt hat, finde ich, ist es die beste Lösung. Für jeden ist was zum Spielen drauf...
Hallo zusammen! Habe mich schon länger mit dem Gedanken getragen mich doch mal mit Mirocontrollern zu beschäftigen, bislang hat mich aber meist die Bastelei abgehalten und der Umstand daß mir für mich persönlich kaum sinnvolle Anwendungen außer dem Spaß an der Freude einfielen. Warscheinlich braucht man erstmal nur den Einstieg und dann kommt man nicht mehr davon los. Nunja, ich glaube dieses Projekt hier könnte für mich eben dieser Einstieg sein. Ich arbeite privat und beruflich viel mit Netzwerken und da wäre so ein flexibel zu verwendendes Modul mit Netzwerkanschluß ein tolles Einstiegsobjekt. Ich hätte also prinzipiell auch Interesse an so einem Modul. Stellt sich für mich aber von vornherein erstmal eine Liste von Fragen: - wieviel würde so eine Platine mit kompletter Bestückung (Mikrocontroller, Ethernet Chip, externer Speicher, Anschlüsse, Kleinteile, Gehäuse und alles was dazugehört) kosten? - gibt es hier jemanden der willens ist für jemanden wie mich der lieber programmiert als lötet das komplette Modul gegen Aufwandsentschädigung zusammenzubauen? (ich bin nicht wirklich in der Übung für feine Lötarbeiten, da würde diese Platine mein Können um Längen überfordern) Da meine Assemblerkenntnisse noch aus alten DOS-Zeiten stammen sind sie entsprechend eingerostet aber ich hoffe das sich das leicht wieder auffrischen läßt. Knifflig stelle ich mir noch die Interaktion mit der Außenwelt vor (insbesondere wenn's um komplexere Protokolle wie TCP/IP geht), sowas hätte ich mir früher nicht im Traum überlegt es in Assembler zu schreiben. Ist aber vielleicht eine Herausforderung wert. Einen Aldi-PC nehmen, Linux draufspielen und einen Apache-Webserver installieren kann ja schließlich inzwischen (fast) jeder. ;) Was ich mir als mögliche Anwendung einer solchen Platine vorstellen könnte wäre z.B.: - Statusanzeige eines entfernt stehenden Servers über mehrzeiliges Alphanumerisches Display (laufende Prozesse, Serverload, wichtige Systemmeldungen), eventuell noch mit Blinklicht oder Summer bei kritischen Fehlern - Überwachung eines Gerätes oder Raumes mit Sensoren und übermittlung der Daten via Ethernet an einen Server zur Aufzeichung/Analyse - Mini-Webserver (einfach weil's Spass macht;) Na jedenfalls hoffe ich mal daß dieses Projekt Früchte tragen wird. Über ungefähre Preisabschätzungen würde ich mich freuen. Ich schau jetzt erstmal dass ich den gesamten bisherigen Thread nochmal -in Ruhe- durchlese. Ist ja schon irre viel geschrieben worden.
Wie schon gesagt, für die Platine selbst musst du ungefähr 10 einplanen, der ATmega128 kostet ebenfalls um die 10, externen Speicher + CPLD musst du für den Anfang zwar nicht unbedingt haben, wenn doch, dann rechne nochmal 10 drauf. Den Kleinkram kann man schwer schätzen, Guido wird irgendwann demnächst sicherlich eine Bestückungsliste angeben. So viel ich bisher gesehen habe, wird die VOLLE Bestückung so um die 70 kosten, dann aber auch mit USB/MMC etc. Man kann Mikrocontroller nicht nur direkt per ASM programmieren (was natürlich ein anderer ASM ist als auf der i386 Architektur!), es gibt u.a. BASIC und C-Compiler. Für das Platinchen wird voraussichtlich auch eine Software geschrieben, aber das weiss OldBug sicherlich mehr, der wollte das machen. Also um Geschichten wie TCP/IP bräuchtest du dir dann keine allzu großen Sorgen machen, allerdings solltest du noch etwas Geduld haben.
@ Rüdiger Winkelmann Naja ich weis nicht ob dieses Projekt wirklich gut für den Einstig ist.
@Christof: Das ist ja von der Materialliste noch ein überschaubarer Betrag. Nur müsste ich dann in der Wartezeit entweder noch eine Menge Lötübungen mit meinem 15 Watt Lötkolben machen den ich irgendwann vor zwei Jahren das letzte Mal gebraucht habe oder ich bräuchte nen versierten Bastler der mir beim Zusammenbau hilft. Ja, warscheinlich gibt es für die Prozessorarchitektur schon fertige TCP Stacks als Libraries. Ich habe grad mal so überschlagen was effektiv für mich so für Heimanwendungen in Frage kommen und mit Ausnahme von dem Spaß-Webserver dürfte für das meiste eh UDP ausreichen, viel einfacher zu verwalten. Dass man für die Atmel Prozessoren einen anderen Befehlssatz braucht ist klar, schockt mich aber auch nicht weiter. Unter x86 Architektur kommt man heutzutage eh kaum noch dazu sinnvoll Assembler einzusetzen, da hätte man jetzt wenigstens einen Anreiz mal ganz neu einzusteigen. Eilig habe ich es mit dem Ethernet Board auch nicht, ist zum direkten Einstieg wohl auch etwas zu komplex. Vielleicht sollte ich mir daher vorher noch ein einfaches Experimentierboard zulegen um mal ein Gefühl für die Atmel Programmierung zu kriegen. Irgendeinen guten Vorschlag was ich da nehmen kann? Wie gesagt: Löten ist nicht so mein Ding und ausser ein paar Taster, LEDs und wenn möglich ein kleines Display nebst Programmierschnittstelle und Software brauche ich für den Anfang nicht. Ist hier im Thread etwas off topic, darum vielleicht lieber per Email. Meine Adresse ist Duncan Punkt Blues bei Gmx Punkt de.
@Thomas: Für den direkten Einstieg nicht, aber als Anreiz um darauf hinzuarbeiten. Für jemand wie mich der bislang eigentlich ständig mit Netzwerken zu tun hatte ist das Projekt der erste richtige Anreiz sich intensiver mit der Materie zu beschäftigen. Ich weiß nicht wie es euch geht aber mich interessieren ganz allgemein interagierende Systeme mehr als Insellösungen.
Soweit ich bisher verstanden habe, ist das CPLD in jedem Fall erforderlich (oder was kann ich ohne machen?). Die von Christof genannten 70,- erschrecken mich schon ein bischen, kann da auch nicht ganz folgen. Ist das wirklich noch ohne Gehäuse? Ich ging bisher (optimistisch blauäugig:o) von folgendem aus: 10,- Platine 10,- ATmega128 3,- CPLD 1,- neue ISA Netzwerkkarte mit RTL8019AS+FB2022+Buchse+LED's 0,- (da vorhanden) serielle Buchse, Stiftleisten, R, C, Quarz x,- MCC Einschub, RAM, Versorgungsbuchse, (eben "größere Kleinteile") y,- USB z,- Gehäuse Wobei x (pauschal geschätzt) = 7..12 y = mir völlig unklar, wäre ggf. interessant z (nicht erforderlich, von Guido genanntes ProMa3) = 8,50 und CAN nicht beachtet, da für mich nicht interessant. Damit wäre ich (ohne CAN und USB) bei 45,- EUR inkl. Gehäuse. Falls ich da drastische Denkfehler mache bitte darauf hinweisen, dann kann ich nämlich nur eine statt zwei Platinen für mich bestellen. Ansonsten wäre es vielleicht doch nicht schlecht, wenn Guido die Bestückungsliste veröffentlicht, bevor letztlich die Platinen bestellt werden. Gruß, Jochen
Mal das Hühnerfutter (Rs und Cs) nicht mitgerechnet, kommen ja schon ein paar Bauteile dazu: Max3232, kostet bei Reichelt doch knapp 5, der DC/DC-Wandler schlägt mi 8,80 zu Buche, der FT245 mit etwas über 6. Die RJ45-Buchse kostet dann nochmal 7, evtl. kann man ja aber eine von der Netzwerkkarte runterlöten. Du siehst also, die 70 sind wirklich worst case.
Hallo Leute... Wie waere es denn, wenn man fuer einige Teile eine Sammelbestellung machen koennte. Ich komme z.B. nicht an einen RTL (ausser von einer alten Karte). Gruss Alex
Ich denke, die meisten von uns werden den RTL von einer alten Karte löten, denn ansonsten kostet der neu mehr als einige alte Karten bei eBay kosten.
Zum Thema "Netzwerkkarte ausschlachten": Davon ist ja überall die Rede, wird wohl oft gemacht. Ist das jedem klar, wie das am besten gemacht wird? Mir nämlich nicht so ganz. Gibt's da irgendwo ein (vielleicht sogar bebildertes) Tutorial? So im Stil von "Zuerst die Leds ablöten. Dann den Filter, indem die einzelnen Beinchen nacheinander entlötet werden. Nun mit einem Heissluftföhn die Kartenrückseite gleichmäßig abfackeln (dabei IC Seite nach unten halten, im Freien durchführen) bis der IC runterfällt. Dann die Buchse raussägen..." oder so ähnlich eben:o) Gruß, Jochen
ich hätt gerne auch einen RTL9019 und ne platiene.
+++ NEWSFLASH +++ ACHTUNG! Es gelang eine phänomenale Beobachtung! Die ungeklärten Fälle unerklärlich verloren gegangener bzw. verlegt geglaubter ICs können nun aufgeklärt werden. Aus gegebenem Anlass wird geraten, ICs besonders gut an der Platine festzulöten bzw. in besondere Gehegen aufzubewahren. http://xs14.xs.to/pics/05056/yetanotherkaefer.gif +++ NEWSFLASH +++
Hi @all, die einen RTL8019AS suchen: Es gibt eine gute und eine schlechte Nachricht! Als erstes gleich mal die Schlechte: Meine Sammelbestellung für die RTL8019AS Chips ist schon abgeschlossen. Wir hatten schon genug Leute zusammen, und haben die Bestellungs schnell abgewickelt (ich brauchte die Dinger schon -> mein Board läuft bereits)! Die gute Nachricht ist, dass ich über eBay aus Amerika noch einige RTL IC's ergattern konnte. Die sind zwar noch nicht da, aber zumindest schon bezahlt! Falls also jemand wirklich noch dringend RTL8019AS Chips soll er sich direkt bei mir melden! Was die Dinger kosten, weiß ich noch nicht genau! Wird aber so um die 5-7 Euro + 1-2 Euro Versand liegen! mfg Andreas
Hallo, ich verfolge den Thread schon eine ganze Weile und bin am Überlegen ob ich mir eine Platine bestellen soll oder nicht. Was mich am meisten Abschreckt ist das Löten der SMD Bauteile, da ich bisher nur Bauteile im normalem 2,54mm Pin Abstand gelötet haben. Nun habe ich http://www.mikrocontroller.net/wiki/SMD_L%F6ten gelesen und wie es aussieht scheint das SMD Löten nicht all zu schwer zu sein wenn die Pads vorverzinnt sind. Ist das bei den Platinen der Fall?
Hi, das SMD loeten ist echt nicht schwer. mit ein bischen entloetlitze und flussmittel geht das ganz prima. Ein bischen ueben sollte man zwar aber dann stellen die auch kein hinderniss mehr da. Ich hab mir am wochenende auch ne kleine platine mit rtl und nem mega 8 draf gemacht. http://kudd-radio.com/~schneider/mega8ethernettop.jpeg http://kudd-radio.com/~schneider/mega8ethernetbot.jpeg hab den rtl von einer alten nic runtergenommen und die platine bei den zwei smd ics mit fittingsloetpaste verzinnt. Funktioniert bis jezt auch prima, die pings kommen wieder zurueck :) Das design basiert auf der netzwerkkarte von uli, die ich ein bischen abgeandert und einen mega8 auf die andere seite gesetzt hab. Das ding soll kein mmc webserver werden, sondern einfach nur fuer einfach steuer und messaufgaben im netz dienen. daher braucht man auch keinen großen mega und man kommt mit vll. 6 euro materialkosten aus. Gruß Tobias
Hallo, Guido hatte gestern eine EMail verfasst das ich an der Platine interesse habe. Gruß Topsoft
@Tobias Hast du zu deinem Projekt schon nähere Infos. Die minimale Größe ist echt reizend. Wird das was mit der Codegröße? Man sieht in anderen Treads, dass sich oft über den Platzbedarf unterhalten wird.
Hat hier jemand mitgeboten? nicht das wir uns hochbieten ... http://cgi.ebay.de/ws/eBayISAPI.dll?ViewItem&category=26807&it... Gruss Flo
hi florian, ich wollte heute abend versuchen mir ebay artikel 5750787358 bzw 5750787363 zu ergattern. die ganzen 10 karten brauche ich nicht, würde die hälfte (5 stück) zum preis weiter geben, den ich bezahlt habe. kannst dich ja per email melden, gegen seitig hoch bieten währe ja blöd. kann ja einer bieten und der andere muss dann eben 2-3 tage länger warten. bei deinem link kommt leider ein fehler, aber ich nehme an, das wir über die selbe auktion reden. gruss john
Das stehende Gebot ist von mir. Von den 15 auf die ich biete würden mir ebenfalls 5 reichen. Würde den rest auch abgeben.
Hallo Stefan Hätte Interesse an 5 Stück der Platinen, falls du sie bekommst. Dieter
Hoffentlich im Interesse aller: Macht es vielleicht Sinn, eure ganzen ebay Absprachen in einen eigenen Thread "ebay Netzwerkkarten" zu verlagern? Nix für ungut, Jochen
hi stefan, hatte dir ne mail geschickt ich würde auch gerne 5 stückl haben für florian und mich gruss john
wieder einlogen habe falsche zeile getibt danke Ps. wann kann man platinen bestellen damke kern helmut
Hallo Guido deine Platine finde ich einfach klasse. Ich habe mir auch schon überlegt eine eigene zu machen, hat sich jetzt wohl erledigt. Wie kommt man an deine Leiterplatte ran ? Nimmst du Bestellungen auf Zuruf an oder wie ist das Vefahren ? Gruss Michael
@michael107 Schick Guido eine Mail mit "Ethernet AVR Modul" als Betreff @Guido: Dass mit dem Betreff hab ich eben erst gesehen, nachdem ich heute morgen eine Mail für die Bestellung einer Platine an dich geschickt habe. Ich hoffe die Mail wurde trotzdem nicht als Spam aussortiert.
Hallo! Nochmal ne Frage zum Verständnis: Der USB Anschluß auf der Platine, wird das ein USB Device Anschluß oder ein USB Host Anschluß? Sprich wird die Ethernet-Platine über USB an einen PC angeschlossen (z.B. zum Upload von Daten) oder werden an die Ethernet-Platine über USB Geräte angeschlossen (wie Webcam oder sowas. Wäre schön, stelle ich mir aber kompliziert vor. Die meisten Webcams kriegt man ja nicht einmal unter Linux auf einem "vollwertigen" Computer zum laufen)? Ansonsten: Ich finde es Klasse dass der Prototyp funktioniert und verfolge den Thread weiterhin mit höchstem Interesse. Noch einmal die Anfrage: Wenn jemand bereit wäre mir beim Bestücken einer Ethernet Platine unter die Arme zu greifen, bitte melden.
Sieht ja nett aus / hört sich gut an.. ich frage mich gerade ebend nur, wie man die LP im Gehäuse befestigt?? wenn man nicht das Gehäuse mit den schienen an den seiten nutzt?? nur eine Anregung
Hi Jens123, das mit den nicht vorhandenen Befestigungslöchern frag ich mich schon seit Wochen:o) Ich tippe auf irgendwelche Klebefüße. Hallo Guido, der kurzen Notiz auf deiner HP entnehme ich, dass die Platinen bestellt sind? Wirklich in blau? Damit ich nachher nicht als einziger ohne Bauteile dastehe, sollte ich dann wohl langsam mal an die Bauteil Bestellung gehen. Dazu wäre es gut, wenn ich wüßte, ob die Bauteilliste inzwischen offiziell ist oder wann sie ggf. nochmal angepasst wird. Und natürlich, ob sich jemand gefunden hat, der dir programmierte CPLD's bereitstellt, oder ob ich das CPLD selbst besorge (und dann auf vom Himmel fallende SW für den AtMega hoffe, die das programmiert). Gruß, Jochen
@Guido: [Re: USB] Dachte ich mir schon, wollte aber nochmal zur Sicherheit nachfragen. Hast du die Platinen nun schon bestellt (sprich bin ich zu spät mit noch Interesse anmelden)? Um hier auch endlich mal etwas produktives beizutragen: Ich habe zwischenzeitlich sieben ISA Ethernet Karten mit RTL8019AS ergattert. Da ich bestenfalls eine Ethernet Platine haben möchte habe ich damit sechs Netzwerkkarten zu vergeben. Die Karten haben zudem einen Eprom-Sockel (28 pol), zwei 8-fach und eine 5-fach Steckleiste (für Adress bzw IRQ Jumper und optionalen AUI Anschluß. Kann man wohl recyclen), gewinkelte Doppel-LED (Link/Activity grün/rot) und folgende Bausteine (ich schreib die Bezeichnungen einfach mal ab): DC-101 YCL 5V->9V 9645 16PT-005B YCL 9646 20F001N YCL 9642G MYSON MTD392N 9645 EA ATMEL 632 93C46 PC 20 MHz Quarz plus RJ45 Buchse und Kleinkram Die Karten müssten eigentlich alle OK sein. Biete 6 Karten. Suche (immer noch) Lötbeistand ;) (email: duncan Punkt blues at gmx Punkt de)
@Stefan: meld ;) ...vorausgesetzt ich krieg von Guido noch eine Platine und es ist nicht zu spät dafür. @Guido: Hätte gerne (nur) eine Platine. (Wenn ich mit Stefan einig werde wegen Bestückung und er auch Platinen haben will, dann kann meine gleich mit an ihn geschickt werden und ich geb ihm vorher das Geld dafür oder so)
Hallo @Guido wenn man an Dich eine E_Mail schickt, kommt eine "leere" E_Mail zurück. MfG Achim
Hallo @Guido nochmals E_Mail Attachment. Seltsam? Deine "Anlage" wird nicht als Attachment angezeigt (Firefox). Sobald man jedoch "InlineView" aktiviert, wird Dein Text angezeigt. Habe ich normalerweise deaktiviert. Sorry Achim
Vielleicht hatte ich das zu undeutlich formuliert: Ein nicht programmiertes CPLD zu beschaffen ist nicht schwierig, und wir waren uns einig, dass Guido sie nicht alle auflöten soll, nur um sie zu programmieren. Die Frage ging also eher dahin, ob sich z.B. Hagen oder sonst jemand schon bereiterklärt hat, die Dinger (ohne sie aufzulöten) zu programmieren und sie dann programmiert beizustellen. Guido hat ja soweit ich verstanden habe keinen Programmer dafür. Was macht es sonst für einen Sinn, wenn Guido auch noch die CPLD's handhaben muss? Vielleicht habe ich auch nur wieder alles falsch verstanden:o) Jochen
Also ich kann sie nicht programmieren da mir einfach der 170 Euro teure Sockel fehlt, schenkt mir einen :=) und ich mach es. Was ich dagegen vorziehe ist das jeder selber den AVR auflötet und den AVR mit einem speziellen HEX File programmiert und diesen erstmal testet. Danach lötet man den CPLD drauf und verbindet den AVR mit dem CPLD über die Header und schaltet das Board ein. Der AVR programmiert dann sofort das CPLD. Das HEX File könnte sogar noch einen kleinen Gesamt-Hardware-Test enthalten der gleich im Anschluß gemacht wird. Nur könnte es damit ein ganz kleines Problem geben :) Ich habe Guido 5 CPLD's geschickt die ich bei eBay als "vorprogrammierte" Teile ersteigert hatte. Guido berichtete das nach dem Einbau dieser Teile durch das alte CPLD Program der CPLD sehr heis wurde und 250 mA verbrauchte. Gruß Hagen
Ok, der Typ bei ebay hat CPLD's und möchte die möglichst schnell losweden. Wenn Guido 60 Platinen bestellt so bräuchte man auch max. 60 CPLDs. Scheiß auf Vorbehalte usw. wir könnten dem Typ ne EMail schicken und einen fairen Preis für 50 CPLD's aushandeln. Ich würde mal sagen < 1 Euro pro Stück. Guido würde das dann auf den Platinenpreis draufrechnen. Ok, mir persönlich würde das nichts mehr bringen da ich meine 5 Teile schon habe :) Gruß Hagen
er hat auch auf seiner WEB Seite die Preise erhöht http://www.xeyon.de/4984.html waren mal bei 1.20 Euro Gruß Hagen
Ja, sieht sich hier jemand dazu im Stande das zu implementieren? Wenn nicht, dann kann man die Option unter den Tisch fallen lassen.
@Guido: ich mach mir einfach zu viele Gedanken:o) Aber wer kann auch ahnen, dass du die inzwischen selbst programmierst?*g* Dann brauchen wir ja jetzt "nur" noch einen anderen günstigen Anbieter finden. auf die Suche machend
Zum JTAG programmieren per AVR: ich habe bei Xilinx den Sourcecode zur Interpretation der XSVF Dateien runtergeladen. Es müsste ziemlich einfach sein auf dessen Basis das für den AVR zu kompilieren. Einige kleinere Änderungen und schon dürfte das laufen. Man muß dann nur die normalen textbasierten SVF Dateien in das prohibitäre binäre XSVF Dateiformat von Xilinx konvertieren. Auch dafür gibts schon eine fertige Software. Nur würde ich ungern diese Arbeit machen ohne vorher zu wissen ob man auf diese Weise auch andere SVF Dateien anderer Hersteller benutzen kann, also nicht nur auf Xilinx Devices beschränkt ist. Wenn ja, es also kompatibel ist, dann kann man mit einem AVR + dem Source CPLD's und auch FPGA's über JTAG programmieren. Der große Vorteil wäre das man diese XSVF Dateien auf ganz unterschiedliche Art in den AVR bekommen kann. Zb. im FLASH als kombiniertes HEX File für den AVR. Oder mit gleichem Code wäre es auch möglich ein XSVF über MMC/FAT in den SRAM zu laden und von dort aus auszuführen, oder eben per TCP/IP/CAN/RS232 zu übertragen. Gruß Hagen
Um auch mal was dazu beizutragen. Ich würde anbieten, die Platinen fertig nach Wunsch zu bestücken. Inklusive der Programmierung der CPLDs und eines Testprogramm oder Bootloder im AVR. Wer also das ganze Projekt fertig bestückt haben möchte, der sollte sich bei mir melden. Ist bestimmt für die ganzen Lötungeübten und SMD-Angsthasen im Forum hilfreich. :-) Zur Programmierung: Kann man nicht statt eines Sockel eine Platine nehmen und den CPLD einfach mit dem Finger draufhalten? Sollte doch genügend Kontakt geben. Wenn es viele zu programmierende CPLDs sind, könnte man das ganze auch mechanisch etwas eleganter gestalten, so daß man den Chip nur noch festhalten muß. ciao, Stefan.
Hallo Stefan, das mit dem "auf die Platine drücken" hat beim Tiny funktioniert. Aber der hat auch nur 8 Pins. Bei den CPLDs wird das kaum gehen. Die Pins sind nicht elastisch genug. Wenn da einer leicht verbogen ist klappt das nicht mehr - und richten wird man sie auch kaum können. Gruß Einhart
Ich hab mich ein bisserl umgeschaut bei xilinx...weil wenn es eine update-cpld funtkion nicht gibt würde ich sie über kurz oder lang nachimplementieren ;) also das hab ich gefunden... sollte doch alles sein was man so braucht ... http://direct.xilinx.com/bvdocs/appnotes/xapp058.pdf ich hoffe das hilft unseren schon board besitzern ;) 73 de oe6jwf / hans
Hi Hans, jo genau die sprach ich oben an :) Ich habe den dazugehörigen Source schon gezogen und analysiert. Es dürfte nicht schwierig sein diesen anzupassen. Nur, würde ich eben gerne damit beliebige JEDIC Dateien per JTAG verwenden können, zb. auch Alteras Quartus II. Leider ist das Ding heute schon 4 mal abgekackt, und ich bekomme es einfach nicht hin ein JAM, JEDIC oä. File aus meinem VHDL zu erzeugen. Ich möchte also, wenn ich schon die Sourcen transliere, auch möglichst nicht nur auf Xilinx beschränkt sein. Gruß Hagen
Nicht schlecht, Wieviele Platinen hast du denn bestellt und wann ist Liefertermin? Wie wird das denn jetzt mit den CPLDs gehandhabt? Schickst du mir einen mit?
@Guido: Ist bei mir etwas "schief" gelaufen? 1. Bestellmail über 5 EA erstellt. 2. Antwortmail erhalten. Das ist bisher alles. Habe ich irgendwelche Mails übersehen oder nicht bekommen? Wenn ich deine Antworten im Forum richtig interpretiere, ist die Bestellung für die Platinen raus? Keine Bankverbindung, kein Geld vorab? Ist das der Sachstand, oder habe ich gepennt? Gruss Volker
"Sorry, aber ich sitze selber auf heißen Kohlen." Na, bei einer Erkältung wie bei dir scheinen doch heiße Kohlen zu helfen. Schwitz dich aus und gute Besserung :) Gruß Hagen
So, habe mir jetzt mal das SVF/XSVF Format reingezogen und den Sourcecode von Xilinx analysiert. Aus zwei wichtigen Gründen kann man das nicht auf AVR's portieren. 1.) eine XSVF Datei ist ca. 600% größer als die reinen Daten, ein XC9532 benötigt also ca. 45Kb für die XSVF Datei. Das würde ja noch in den ATMega128 reinpassen, aber auch nur dort. 2.) das SVF JTAG Protokoll benötigt riesige Datenbuffer im SRAM um die Daten für TDI + TDO + Masken zu speichern. Dies ist protokollbedingt. Um den Xilinx Sourcecode zb. für einen FPGA zu benutzen braucht man mindestens 10Kb an SRAM. Ok, auch hier gibt es Verbesserungen, da ein CPLD von Xilinx nicht diese riesigen Buffer benötigen würde. Beide Einschränkungen würden aber dazu führen das ich 7 Tage an dem Source arbeite nur um ihn speziell für kleine CPLD's und AVR's mit wenig SRAM anzupassen, die Flexibilität geht dabei flöten. In 2 Stunden hat man aber das ParPort JTAG Kabel selber gelötet und WEBPack installiert, und in +30 Minuten schreibe ich euch eine Anleitung dafür. Der Aufwand lohnt sich also nicht, und ehrlich gesagt habe ich nicht den Bock die gemachten Protokoll-fehler irgendwie umgehen zu müssen. Aber als positive Erkenntnis kann ich sagen: Alteras SVF Dateien erzeugt mit Quartus II sind kompatibel zu den Xilinx SVF Dateien. Man kann diese also ohne Probleme in das XSVF Format konvertieren. Gruß Hagen
@Hagen: Das billigste JTAG-Kabel für die Xilinx ist in gut 10 Minuten selbst gelötet. Siehe "Programmierbare Logik"-Forum. Dieses Kabel funktioniert bei mir einwandfrei und besteht aus nur drei(?) Widerständen und ein wenig Silberdraht :) Ich habe aber auch die Möglichkeit, die CPLDs in einem dafür geeigneten Gang-Programmer zu beschreiben, was ich Guido heute morgen schon mitgeteilt habe. Mal sehen, wie wir das machen. Vielleicht gibts ja wirklich jemanden, der sich das CPLD selber Programmieren möchte usw...
das blöde an den Xilinx ist das sie nur über JTAG programmiert werden können. Die Altera Steine kennen verschiedene Modis, wie auch den PS Modus. Dort wird einfach der reine Bitstrom übertragen. Wie gesagt, der Aufwand mit den SVF Dateien lohnt sich nicht. Ein XC9572 würde eine XSVF Datei benötigen die mehr als 70Kb groß ist, ein Altera MAX mit 128 Makrozellen benötigt eine XSVF Datei die sage und schreibe 400Kb groß ist. Bliebe nur eines übrig: man baut sich sein eigenes Protokoll und Dateiformat das die JTAG Befehle besser und effektiver speichern kann. Nur wozu dieser Aufwand ? Gruß Hagen
Ja, ich seh da auch keinen Sinn drin! Kann Dir da nur zustimmen: entweder selber JTAG-Adapter basteln oder Programmiert über Guido einkaufen...
Weiß schon jemand eine Alternative Bezugsquelle für die CPLDs? Eine Anfrage an materialboerse.de ergab einen Stückpreis von 2.85 Euro/Stück zzgl. MwSt und Fracht bei einer Abnahme von 100 Stück. ciao, Stefan.
Und noch was zum programmieren der CPLDs: http://www.ethernut.de/en/xsvfexec/index.html ciao, Stefan.
@Stefan: das wäre das gewesen was auch ich vorgehabt hätte :) Allerdings in xsvfExec.c findet man ab Zeile 336 eben 6 Buffer mit MAX_BITVEC_BYTES Größe, wobei MAX_BITVEC_BYTES = 5 gesetzt wurde. Das funktioniert zwar mit den kleinen CPLD aber bei Altera CPLDs oder FPGA's müsste MAX_BITVEC_BYTES auf mindestens 2048 angehoben werden. Das wären weit mehr als 10Kb SRAM. Aber interessant ist es schon da auch in deren Einführung über das XSVF Format sich meine Meinung wiederspiegelt :) @Bezugsquelle CPLD: 2.85 Euro pro Stück ist zuviel, für 1.60 das Stück könnte man die immer noch beim eBay Händler kaufen den Guido aber boykottieren will :) Gruß Hagen
Hallo, Ihr sprecht hier immer davon, dass das CPLD Programmieren so ein großes Problem ist. Wieso? Kann ich nicht einfach TCK, TDO, TMS und TDI anlöten und schwup die wup fertig??? Habe ich vielleicht etwas übersehen?? Danke
Hi, welcher typ des XC9536 wird exakt benötigt ? Bauform temperaturbereich voltzahl .... ? mfg Moritz
:) Jo, das wäre es wenn du mit einer Software auf dem PC über ein paralleles Datenkabel den CPLD programmierst. Das ist aber einigen Bastlern zu kompliziert und deshalb kam ich auf die Idee den CPLD direkt durch den ATMega128 Onboard programmieren zu lassen. Das ist schon was anderes da du ja in den AVR das JTAG Protokoll reinbekommen musst, nebst den Daten für den CPLD. Als Ergebnis der Suche kam das SVF/XSVF Format raus, das schon als Sourcecode bei Xilinx rumliegt. Aber nach Analyse der Komplexität ist es einfach Schwachsinn sich 7 Tage damit rumzuschlagen, wenn ein simpler ParPort Programmer nur 30 Minuten Arbeit benötigt. Gruß hagen
@Moritz: der XC9536 eben. Das ist der 5 Volt Typ und sollte < 60ns haben. Bisher funktionstüchtig getestet wurde der 7ns Typ. Die längste Singallaufzeit ist laut Simulation dabei 16ns. Der AVR steuert seine Leitungen mit ca. 64ns an. Bauform TQPF44. Temperaturbereich ? hängt von dir ab, wenn du das Board in der Kühltruhe betreiben willst sollte es schon einer mit erweiterten Bereich sein :) Gruß Hagen
@Moritz: Guido hat wenn ich nicht irre folgenden genannt (reichelt): XC 9536-15 VQ44 5V ISP CPLDs, 15ns In Anbetracht des $-Kurses hab ich hier im Forum noch http://www.digikey.com gefunden. Gruß, Jochen
Hallo, Guido hat in seiner Bauteil Liste den 628512-70 M als SRAM stehen. Spräche irgendwas dagegen den durch den 628512-55 M zu ersetzen? Letzterer sollte dank des schnelleren Timings weniger Probleme machen, wenn der AVR mit 16MHZ getaktet wird - nebenbei ist er auch noch 30Cent billiger. Für beide Chips gibt es nur ein Datenblatt - wohl gleiches Gehäuse + Pin-Belegung. Übrigens bietet jetzt auch Reichelt den AT90CAN128 an, hat sich allerdings in der Kategorie Drams/Srams versteckt. Ansonsten noch eine Idee/Anfrage, da der externe SRAM wegen seiner Größe nicht komplett automatisch vom ATMEL Adresssiert werden kann, sondern immer nur einzlene Blöcke ansprechbar sind: Läge es nahe einen Scheduler für mehrere Tasks zu schreiben, der jedem Task automatisch seinen eigenen Speicherblock im externem SRAM auswählt? Also so dass sich die einzelnen Tasks nicht um die Auswahl der Speicherbank kümmern müssen? Oder besteht hierdran kein Bedarf, bz. wäre die Realisierung zu kompliziert?
Ich denke das Ethernut projekt mit seinem NutOS ist da was du suchst. Das kann schon mit threads und banked memory umgehen und ich werde wenn ich bei mir was am laufen hab mal versuchen eine portierung zu wagen(falls ueberhaupt erforderlich) Gruß Tobias
"Spräche irgendwas dagegen den durch den 628512-55 M zu ersetzen?" Nein nichts, schon garnicht wenn billiger :) Guido hat das Pinning der verschiednene SRAM Typen -> Speichergrößen schonziemlich clever geroutet. Es können alls SRAM's von 32Kb bis 512Kb benutzt werden. Für Typen <= 64Kb macht aber das Banking durch den CPLD keinen Sinn. @Banking in Threads per Sheduler: würde alles gehen, nur warum sollte man das nutzen wollen ? So wie es derzeit aussieht werden Stack + globale Variablen im internen SRAM liegen, 1.) ist da das Program schneller und 2.) das Handling mit WinAVR , AVR Studio unkomplizierter. Oberhalb von Addresse 0x1500 bis 0x7FFF liegt der dynamisch verwaltet Heap mit 27Kb Gesamtkapazität. Das dürfte ausreichend sein. Der Speicherbereich 0x8000 bis 0xFFFF, also 32Kbin Bank 1 kann beliebig in die externen SRAM Pages mappen. In diesen Page liegen wohl meistens große Datenbuffer, zb. für die MMS/SD FAT Routinen oder für den TCP/IP Stack. Diese Pages werden mit hoher Wahrscheinlichkeit nicht dynamisch verwaltet sondern per Konfiguration statisch durch den Programmierer verteilt. Diese Vorgehensweise dürfte die optimalste sein, in Bezug auf Einfachheit und Flexibilität. Bedenke, willst du Pageübergreifend arbeiten so musst du mit 32Bit Zeigern arbeiten und deren Addressen vor jeden Zugriff dekodieren und die entsprechenden Bänke einblenden. Das dürfte viel zu langsam und kompliziert werden. Davon mal abgesehen frage ich mich warum ein Task ansich soviel Speicher benötigen sollte. Der Task selber als Datenstruktur wird im OS verwaltet. Gruß Hagen
Danke, und von Adresse 0x1000-0x1500 liegen da dann die Buffer/Register des RTL Chips? PS: Wenn die Infonmationen soweit sicher sind, könnte ich die mal auf die entsprechende WIKI Seite http://www.mikrocontroller.net/wiki/AVR_Ethernet_Platine eintragen, sonst ist es nur ne Sache der Zeit bis die Frage wieder gestellt wird :-)
Ich nehme Hagen da einfach mal ein bißchen Arbeit ab, das VHDL ist wirklich Beispielhaft! Danke! Ich habe inzwischen die Verschiedensten Varianten ausprobieren können: Die eben von Hagen angesprochene wird die effektivste sein, da man sonst viel zu viel Verwaltungskrempel (Zeigerdekodierung/Kontextwiederherstellung etc.) vor jedem SRAM-Zugriff erledigen müsste. Ein Beispiel: Legt man die Variablen (sections .data/.bss) in die Page 0 des externen SRAM und den Heap in die Page 1, müsste man entweder bei jedem Zugriff auf eine Variable, oder bei jedem Zugriff auf einen mit malloc reservierten Block gewährleisten, daß das Bank_Reg im CPLD korrekt gesetzt ist, wenn man das gesamte SRAM nutzen möchte. Legt man die Variablen und den Stack in das interne SRAM, so kann man durch Bank_0 in Page 0 des ext. SRAM ab Adresse 0x400 des SRAMs (0x1500 im Adressraum des AVRs) den Heap Platzieren und gleichzeitig auf eine der maximal 8 Pages des SRAM durch Bank_1 zugreifen! Das kann dann das Shadow-RAM unterhalb von 0x400 (0x1500) der Page 0 oder eine der restlichen 32kByte-Pages sein. Das ganze ist natürlich ein wenig trocken, ich bastel grad an einer "einfachen" Implementierung der ganzen Geschichte, um das etwas besser "an den Mann" bringen zu können. Ich denke, morgen werde ich da etwas zur Verfügung stellen können.
1. Quatsch, nicht 8 sondern 16 Pages (16 * 32k = 512k)!!! 2. Oh, ich hab was vergessen: Ich wollte Malte noch Anworten! Hier mal die Speicherbelegung: Address-Space of "Ethernet AVR Modul": -------------------------------------- __________________ | | 0xFFFF . external SRAM . "Bank_1" . max. 16 x 32kByte . 0x7FFF . = 512kByte . "Bank_0" | | 0x1500 |--------------------| | | 0x14FF . Ethernet . . Realtek RTL 8019 . . . | | 0x1400 |--------------------| | | 0x13FF . USB . . FTDI245xx . . . | | 0x1300 |--------------------| | | 0x12FF . CPLD . . external 8Bit Port . . . | | 0x1200 |--------------------| | | 0x11FF . CPLD . . Memory Controller . . . | | 0x1100 |====================| | | 0x10FF . ATMEGA128 . . Registers . . internal SRAM . | | 0x0000 __________________ Ich hoffe, das bringt etwas Licht ins Dunkle... ;)
CPLD Beschaffung: Der von Stefan genannte Preis von 3,30 EUR (wir rechnen ja mit MwSt:o) ist doch gar nicht schlecht. Eine Anfrage beim Distributor direkt ergab einen Preis (für mittelständischen Bestandskunden) von ca 2,50 EUR (bei Abnahme von 100 Stück). Dieser Preis wird angeblich direkt von Xilinx kalkuliert. Was die Frage aufwirft, warum die ebay Teile so günstig sein können. Leider ist eine Bestellung über meinen AG nicht möglich, allenfalls könnte ich anfragen ob die an mich privat zum gleichen Preis liefern würden. Dazu müßte ich aber erstmal wissen, wie ich schnell, einfach und sicher 95 Stück davon wieder loswerde, und damit meine ich keinen Einzelversand, weil ich z.B. kein Verpackungsmaterial dafür habe. @Hagen: Danke für die Grafik. <ironic>Lässt mich wieder drüber nachdenken, den RAM und das CPLD einfach wegzulassen:o)</ironic> Eigentlich will ich die ja für future-use bestücken, um alle Optionen zu haben obwohl die aktuellen Anwendungen keinen Bedarf für viel RAM oder Flash haben. Gruß, Jochen
Vielleicht sollte Dir jeder nochmal mailen, wieviele CPLDs er braucht und ob die eventuell programmiert sein sollen. Ich brauche 5 Stück bei einem Preis von 2 Euro (oder günstiger) ohne Programmierung. ciao, Stefan.
Ich fänd's übersichtlicher, wenn Guido dazu ne Rundmail raushaut, auf die jeder antwortet.
Hallo.. Das mit der Rundmail ist eine gute Idee. Ich brauche zwar keine, aber diejenigen, die welche brauchen, koennen sich das bestellen. Vielleicht sollte man beim naechsten mal so etwas wie einen WEBShop zum Projekt einrichten, so dass man die Daten dementsprechend gleich fuer eine Bestellung (und so..) vorbereiten kann und denjenigen (in diesem Fall Guido) nicht so viel Arbeit macht. Vielleicht kann man das auch grundsaetzlich so machen!? Alex
Also ich halte die Einrichtung eines WebShops für noch viel aufwendiger, oder liege ich da falsch? Habs selber noch nicht gemacht... :)
Hallo.. Ich habe das mit dem WebShop auch noch nicht gemacht, aber es soll ja sehr viel und einfaches geben. Aber mal etwas anderes (hab ich vorhin vergessen): -Wenn ich die CPLDs selbst Programmieren moechte, wo bekomme ich den VHDL Code her? Alex
Ich denke mal, das wird noch alles auf einer Webseite zum Download angeboten, genauso wie mein Testcode und der ganze Ethernet-Krempel. Aber sowas bereitet natürlich auch unheimlich Arbeit, und da müssen wir Guido einfach ein Bißchen Zeit für geben! Wichtiger ist jetzt erst mal, daß die Leiterkarten und CPLDs rankommen, und das ist schon "genug" Arbeit ;) ...
Hallo, es liegt mir natürlich fern, Guido letztlich fertige Bausätze verschicken zu lassen. Das kann ja nicht das Ziel sein. Wenn ich mich recht entsinne, war er es aber selbst, der die Frage nach einer Sammelbestellung der MMC-Kartenhalterung aufgeworfen hatte. Jedenfalls wäre m.E. jetzt die richtige Zeit, um diese Frage zu diskutieren, oder wie seht ihr das? Es ist das einzige Farnell Bauteil, wird doch vermutlich von fast allen benötigt, und kaum einer hat sowas rumliegen... Btw: Das letzte dann noch verbleibende Nicht-Reichelt Bauteil ist übrigens der Flash. Bei der in der Bauteilliste genannten Bezugsquelle ist die Mindestbestellmenge 10 Stück, aber das bestückt sicher nicht jeder, oder? Ich werde das wohl erstmal weglassen (und 628128-70M statt 628512-70M bestücken, oder spricht da was dagegen?) Gruß, Jochen
Hi Jochen, Bestück doch soviel Du willst. :-) Ich lasse auch einige Sachen weg, den USB-Chip und den CAN. Wenn es eine Sammelbestellung für den MMC-Slot gibt, dann bin ich dabei. Ansonsten kann ich erst mal darauf verzichten. ciao, Stefan.
Hallo, wie ist es denn mit Vorkasse? Der Preis steht ja im Gegensatz zu den Platinen vorher fest? Ansonsten würde ich das auch übernehmen. Gruß Topsoft
Ich denke, für Guido wird es schon aufwändig genug, wenn er von jedem einmal einen Geldeingang abhaken muss, oder? Ich würde anbieten, ihm einen Vorschuß für meine Platinen zu geben. Wenn das noch einer macht, der auch 5+ Platinen nimmt, kann Guido die Dinger gleich zu sich liefern lassen. Gegen die Vorschläge von Topsoft hab ich natürlich auch nix einzuwenden. Gruß, Jochen
Hallo, ich habe auch 5 Platinen + Cpld geordert und habe nichts gegen Vorkasse, aber bei denn Platinen steht der Preis ja noch nicht fest. Also dürfte das so nichts werden. Gruß Topsoft
Warum nicht? Wir machen einfach eine vorläufige (etwas zu niedrige) Annahme: Platine 8,80 CPLD 1,60 MMC-Halterung 1,80 = z.B. 12,- Anzahlung pro Platine. Und nachher gibt's ne Endabrechnung, da kriegt Guido statt dem Gesamtbetrag eben den noch fehlenden Rest. Sonst muss er auch noch anfangen und was rücküberweisen. Von uns beiden muss er eben zweimal abhaken. Dafür würde das für ca. 70 MMC-Halterungen reichen. Gruß, Jochen
Wenn es um eine Sammelbestellung geht, bin ich auch dabei. Ich habe ebenfalls 5 Platinen + CPLD bestellt. Von den MMC-Halterungen würde ich allerdings 10 Abnehmen. Bei dem Verfahren der Anzahlung (s. Jochen/Topsoft) wuerde ich mich sofort beteiligen. Kurze Mail von Guido genügt. Gruss Volker
Haltet euch doch mal daran, was Guido sagt, er hat mit der ganzen Sache eh schon genug um die Ohren, also wie Topsoft schon sagte: Eigeninitiative zeigen und einfach mal machen, und nicht noch überlegen, wie man die ganze Angelegenheit noch komplizierter machen kann!
Hallo Christof, das ist doch nur ein Vorschlag. Und zwar einer, den ich für einfacher halte, als wenn ich das bestelle und zu mir liefern lasse, das Päckchen dann zu Guido schicke (nachdem ich meine rausgenommen habe), dabei nochmal Versandkosten entstehen und Guido mir dann den Differenzbetrag erstattet, nachdem er mir die Platinen mit CPLD und ohne Halterungen geschickt hat. Ist aber natürlich Ansichtssache. Ansonsten hab ich genau das gleiche gemacht wie Topsoft, nämlich einen Vorschlag, der das Problem lösen will "was Guido gesagt hat", nämlich "Problem der Sammelbestellung ist bei mir das Vorstrecken". Keiner hier versteht, warum Guido die Platinen unbedingt vorfinanzieren will, also bleib locker:o) Es braucht ja nicht jeder ne Anzahlung machen, nur ausreichend viele. Jochen
Ich bin Jochen's Meinung und wäre auch bereit auf Vorkasse an Guido zu überweisen. Eine Überweisung kostet nichts, aber dreifacher Versand schon. Klar, keiner will hier das Guido noch mehr Arbeit bekommt, aber in diesem Falle wäre es cleverer wie es Jochen vorschlägt und vereinfacht zudem noch die Abrechnungen aller die bei Guido bestellen. Den Differenzbetrag der durch die großen Sammelbestellungen entsteht kann Guido meiner Meinung nach behalten, als Aufwandsentschädigung. Immerhin macht es einen Unterschied ob 20 Leute jeweils 5 Slots einkaufen, oder 1 Mann eine Sammelbestellung über 100 Slots auf einmal. Ich erachte es als wichtig das möglichst viele Leute zur gleichen Zeit ihr Board vor sich liegen haben. Denn das bringt dann einen rießigen Aufschwung in der Softareerstellung und davon haben wiederum alle was. Zudem kann man die dann auftretenden Probleme gemeinam viel schneller lösen. Gruß Hagen
Der arme, kranke, alte Mann sitzt nächtens in seinem Sessel und läßt sich von euch feiern - so habe ich den Eindruck, würde er sich gerne sehen. Ihr solltet euch mal reden hören. Es wird philosophiert wie und ob welche Lösung Godfather Guido am wenigsten Arbeit bereitet, wie man möglichst einfach, alle, mögen sie noch so gegensätzliche Meinungen sein, unter einen Hut bringen kann. Besinnt euch mal was hier wirklich vorgeht. Guido hat mit sehr großer Fleißarbeit ein LAYOUT für eine Platine erstellt, den Schaltplan aus vielen Hinweisen von euch und diversen AppNotes erstellt. Momentan ist er gerade dabei das Logistische der Bestellungen zu planen/abzuwickeln. Was noch? Die Software dazu (was ich als größte Leistung ansehe ist der IP-Stack (der wird afair von Uli Radig übernommen) und die restlichen Treiber/Module sind wohl noch gerade am entstehen... Guido ist soweit ich das von hier aus sehe, an deren Codierung/Entwicklung weniger beteiligt (eher mehr am Testen...). Zudem beschäftigt mich die Frage, warum ich in diesem Thread nicht einen einzigen Beitrag von den "Großen" dieses Forums lese? (Mal von Matweis nützlichen Hinweisen am Anfang mal abgesehen). Sinn meines Schreibens, ist nicht Guido hier niederzumachen, sondern ihm seinen hohen, herablassenden Stil mal von einem Außenstehenden aufzuzeigen und ihn vielleicht wieder auf den Boden bringen. Und auf die, meiner Meinung nach, übertriebene Untergebenheit der restlichen Diskussionsteilnehmer hier aufmerksam machen. Was wäre das ganze Projekt ohne Hagen und Oldbug? Nüchtern technisch betrachtet: Alles in allem ein sehr interessantes Projekt. Weitermachen
Ist doch egal, Guido, OldBug die vielen anderen Interessenten und natürlich ich wollen ein interessantes Projekt durchziehen. ICH will ein fertiges Board haben, das ist mein Ziel. Das was Guido an Arbeit geleistet hat kann ich nicht, also bin ich froh das er's macht und erbringe meinen Beitrag eben an anderer Stelle. Ob einer schwarz, weiß, grün, arrogant oder erhaben ist ist für mich erstmal egal, solange was dabei rauskommt. Ich verstehe die Sorge um die Belastung von Guido mehr als aktive Rücksichtnahme und dem Willen der Leute ihren Beitrag leisten zu wollen. Was ist so schlecht daran. Wenn dann jeder seine Boards fertig hat, die Software korrekt läuft, ja dann können wir zurückblickend nochmal darüber diskutieren :) Kritiken wie diese, und nochdazu von Leuten die sich hinter Pseudonymen verstecken müssen, sind mir Schnuppe. Egal, konzentrieren wir uns lieber auf das Projekt, wie alle Interessenten ihre Hardware bekommen sie aufbauen und eine gute Software dazu entwickelt wird. Gruß Hagen
Ich finde, es könnte sich auch noch jemand anders bereit erklären, ein paar Bauteile zu beschaffen. Kann doch nicht sein, daß alles an einem hängen bleibt, oder? :) Bei ~100 bestellten Platinen macht das ganz schön Aufwand, und das Risiko wird bei jedem Bauteil höher. Wenn es mehrere Leute geben würde, würde sich das Risiko zumindest ein kleines Bißchen verteilen... Doppelte Versandkosten? Na und, rechnet die Kosten doch einfach in die Bauteile ein ;-)
>> Was wäre das ganze Projekt ohne Hagen und Oldbug? > Wird das hier ein Boykottierungsversuch? [von Oldbug] Nein, sollte nur euer beider Engagement/Kompetenz herausheben, das/die ich persönlich sehr hoch einschätze. Ich hätte rhetorisch geschickter schreiben sollen: "Wie wäre das ganze Projekt (bisher) ohne Hagen und Oldbug verlaufen?"
Nuja, jeder das, was er kann, siehe Hagens Posting. Ich kann auch nicht so gut Layouten, wie Guido, deswegen beschränke ich mich halt auf ein Bißchen Schaltungsentwicklung und Software... Aber wer da wo und wie mehr oder weniger geleistet hat, spielt keine Rolle, weil wohl alle Beteiligten schnellstmöglich fertig werden wollen. Ich fand Deine paar Zeilen jedenfalls äusserst destruktiv, weil man damit schon mal mindestens einen Demotiviert...
> Ich fand Deine paar Zeilen jedenfalls äusserst destruktiv, weil man
damit schon mal mindestens einen Demotiviert...
Du hast (leider) recht.
Aber genauso wie ich (heute morgen) von euch "kritisiert" wurde,
nicht für das was ich gesagt habe, sondern wie ich es gesagt habe,
möchte ich auch nur Guidos Stil (also Guidos wie bzw. das wie der
restlichen Threadteilnehmer) und nicht das was kritisieren. Das
Projekt ist wie gesagt sehr interessant und in dem Umfang (zumindest
hier; mikrocontroller.net) erstmalig!
Tut mir leid Guido, daß ich dich damit verletzt habe. Manchmal braucht
man aber auch mal eine 'Rekalibrierung' - und im virtuellen Internet
muß diese schon recht heftig vorgetragen werden, um nicht ungehört zu
verschallen... ich bin sicher, daß dich die ganze Geschichte jetzt noch
eine Weile beschäftigt, aber am Ende gewinnen alle davon...
(Fast hätte ich jetzt Amen geschrieben. :-)
Der 'Außenstehende' tritt jetzt ab
Zurück zum Thema. Um Guido Arbeit abzunehmen, würde ich mich bereit erklären die Sammelbestellung bei Farnell durchzuziehen. Ich setze mich dazu mit Guido noch in Kontakt. Wegen Versandkosten; Rechnungs- und Lieferadresse müssen ja nicht übereinstimmen. Insofern treten die auch nicht doppelt auf. Nun ist der von Guido vorgeschlagene Connector mit der Bestellnummer 4381610 im Moment scheinbar nicht lieferbar. Leider passen die Alternativen 4381609 oder 4381592 scheinbar nicht auf das Board. Irgendwelche anderen Vorschläge? Oder was kompatibles? ciao, Stefan.
Hallo OldBug in http://www.mikrocontroller.net/forum/read-1-138024.html?reload=yes#158801 Ich bin (was die Bauteilbeschaffung angeht) eher Hagen's Meinung und verstehe dein Posting nicht ganz: > Ich finde, es könnte sich auch noch jemand anders > bereit erklären, ein paar Bauteile zu beschaffen. Genau das hat Topsoft doch schon gemacht. > Wenn es mehrere Leute geben würde, würde sich das > Risiko zumindest ein kleines Bißchen verteilen... Welches Risiko meinst du? Das finanzielle Risiko zu verteilen ist doch genau mein Vorschlag, und das logistische Risiko wird doch eher größer, wenn mehr Leute und Postboten die Teile in die Hand nehmen und weiterverschicken. Und das Verschicken an den "Enduser" zusammen mit den Platinen hat Guido doch angeboten, obwohl es hierbei der zeitaufwändigste Job ist. Andererseits macht sein Angebot auch beliebig viel Sinn, da er sowieso an jeden einen Umschlag schickt und den adressiert. Der Aufwand, da noch in eine weitere Kiste zu greifen, ist Guido soweit ich rausgehört habe nicht zuviel. Die Alternative wäre, dass jemand anders die Teile bestellt, auslegt, getrennt von den Platinen an alle verschickt und irgendwie wieder an sein Geld kommt. Meinst du das? Aus meiner Sicht kann Guido jetzt zwischen zwei Angeboten wählen, einmal dem das er hören wollte und einem, das einigen hier auch nicht schlecht vorkommt. Gruß, Jochen
Nachtrag: Oder er nimmt Stefan's soeben gemachten Vorschlag, den hatte ich noch nicht gesehen.
Hallo Steffan, unter http://www.mikrocontroller.net/forum/read-4-87092.html#new habeich ein paar Angaben zu der Platine gemacht. Wenn man den Webserver noch dazukompiliert(einfach noch httpd.c hinzufuegen und im code aktivieren komtm man auf ca 5kb Code. Das reicht dann also noch fuer ca 3kb html oder ne anstuerung eines externen eeproms per i2c. Ansonsten sidn nazuerlich alle anderen module bis auf icmp abgeschaltet. Gruß Tobias
Ich hab endlich mal ein bißchen Code in den Downloadbereich gestellt. http://www.ispf.de/modules.php?name=Downloads&d_op=viewdownload&cid=4&min=10&orderby=titleA&show=10 Ich weis, es ist nicht "sehr gut" Dokumentiert, aber mit den Beschreibungen, die hier im Forum so rumschwirren, sollte das ganze einigermaßen leicht verständlich sein. Wenn es an die Doku des Systems geht, dann kommt da sicher noch mehr :)
Achja, noch was vergessen: Das Progrämmchen verwendet die USART1 des ATMega128 um debug-Ausgaben zu machen. Diese Konfiguration stammt daher, daß ich zum Testen noch keinen 4053 zur Verfügung hatte, und einfach ein paar Leitungen "Hard-Wired" habe ;). Quarz auf dem Board: 14,7456MHz; Baudrate: 115200bd ...bei Fragen: Fragen!
Hallo, ich habe noch eine Verständnisfrage zur HW. Guido schrieb in http://www.mikrocontroller.net/forum/read-1-138024.html?reload=yes#154509 > Die Stromaufnahme liegt bei ca. <120mA mit laufendem > uIP mit bis auf MAX3232, CAN und USB bestücktem Board. Laut Bestückungsliste ist F801 als 1A Sicherung ausgelegt. Wäre da nicht eine 500mA Sicherung ausreichend oder sogar besser? Gibt es eine Abschätzung über die Stromaufnahme inkl. RS232 und USB? Irgendwo muss das 1A in der Liste ja hergekommen sein. Reicht womöglich ein 600mA Steckernetzteil hierfür nicht? Danke, Jochen
Die Regler liefern aber leicht bis zu 1 Ampere. Insofern finde ich die Wahl der Sicherung nicht wirklich falsch. Was mir nicht so gut an der Sicherung gefällt: das ist keine Standardsicherung, die man in irgendeinem Elektronikladen bekommt. Auch scheint es die Sicherungen bei Reichelt nicht einzeln zu geben. Oder? Bei der Größe der Platine ist die Auswahl aber verständlich. Soviel Hardware auf so kleinem Raum ist schon phänomenal. ciao, Stefan.
Hi Superflink heißt bei diesen Sicherungen wirklich superflink. Ein etwas größerer Elko hinter so einer Sicherung kann diese recht fix auslösen. Ich hatte den gleichen Typ auf meinem USBisp verwendet und in der zweiten Version wieder verbannt da die Dinger einfach zu schnell auslösten. Matthias
Hallo Guido, also wie man das Portforwarding mit Windows eigenen Mitteln macht, weiss ich momentan nicht. Kann sein das geht nur mit der Server Edition. Aber vielleicht passt dieses Programm für deinen Zweck : http://www.analogx.com/contents/download/network/pmapper.htm Grüße Andreas
Nur um mal zu verdeutlichen, wie fein Guido geroutet hat. Frei verdrahtet würde arthernet allein nur mit SRAM und RTL8019AS so aussehen: http://xs18.xs.to/pics/05093/dcp_3558.jpg Was die DC Buchsen angeht: bestellt ruhig so viele vor, wie ihr wollt, also evtl. auch mehr als ihr Platinen braucht, denn je mehr bestellt werden, desto günstiger werden sie und das würde (abzüglich Versandkosten) auch weitergegeben werden.
Hi doch doch. Doe Sicherungen sind sehr flink. Ein verpolter IC zieht zwar im vergleich viel Strom aber ein entladener Elko zieht halt sehr viel mehr Strom. IIRC waren 1000µF über die Sicherung an 5V genug um sie auszulösen. Also nicht wundern wenn jemand ein Erweiterungboard anschließt und beim Einschalten die Sicherung fliegt. Aber man kann ja immer noch die Sicherung überbrücken. Matthias
Hi, ob zu flink, 1A oder 500mA, ich bin kein Elektronikentwickler, deswegen habe ich ja euch gefragt:o) Mir ist schon klar, dass es da sicherlich verschiedene Meinungen geben kann/muss. Betrachten wir also bitte den Normalfall; ein Erweiterungsboard mit Elkos zähle ich da jetzt mal nicht dazu. Wenn man "nur" das athernet-Modul baut, und auf der Erweiterungsplatine nur ein paar Sensoren usw unterbringt, kann es doch sicherlich eine Empfehlung für 500mA oder 1A oder sonstwas geben, oder? Denn wenn die später dauernd oder nie auslöst bringt sie ja nicht wirklich was. Insbesondere hab ich nicht verstanden: > Stefan: Die Regler liefern aber leicht bis zu 1 Ampere. Insofern > finde ich die Wahl der Sicherung nicht wirklich falsch. Ich dachte, die Sicherung wählt man danach, was die Schaltung zieht und vor allem abkann, und nicht was vielleicht mal angeboten wird? Oder bezog sich das darauf, dass das 1A gezogen werden könnte, wenn man eine "Elko-Erweiterung" anschliessen würde? Gruß, Jochen
Wann soll diese Sicherung denn auslösen? => Wenn irgendwas defekt ist! Meiner meinung nach nicht um die Elektronik in letzter Instanz zu schützen, sondern um den Stromfluss zu unterbrechen, damit nicht abbrennt oder ähnliches. Selbst bei ner Superflinken Sicherung: auslösen sollte die im Normalfall nie!
Hallo, habe ich dies soweit richtig erkannt? 1: Der CPLD ersetzt den 74HCT 573, also wird bei der Verwendung von externem SRAM nur einer der beiden IC's benötigt? 2: Wenn ich auf die MMC Karte und den Dataflash verzichte, so wird der 3,3V Spannungsregler und der 74HCT125 nicht mehr benötigt oder habe ich ein Bauteil übersehen welches 3,3V benötigt?
Das CPLD ersetzt den 573 NICHT!!! Also mitbestellen... Für den 74xxx125 muss, so weit ich mich da erinnere, ein LVX-Typ eingesetzet werden!
Ist die Bauteileliste eigentlich auf dem neuesten Stand bei ispf.de? Ein Fehler hat sich dabei eingeschlichen. Die Reichelt-Bestellnummer für den 74HCT573 ist falsch. Sie muß lauten "SMD HC 573" statt "74HCT 573". ciao, Stefan.
Hm, auf der Seite von Guido hat sich doch jemand bereit erklärt, die 573er zu besorgen!?!?
Jaja, das schon. Aber ein Fehler in der Liste ist doch trotzdem blöd. ciao, Stefan.
Nochmal für die, die Ihre Mails nicht so regelmäßig checken: Bis morgen mittag werden Vorbestellungen für ATmega128-16AI zu einem Preis von 6,99EUR entgegengenommen. Sind bis dahin keine 90 Stück zusammengekommen, werden leider KEINE bestellt, da eine VPE nun mal 90 Stück enthält und sich alles darunter nicht lohnen würde. Gruß, Christof
Hi Christof, es steht nicht dabei, aber ich gehe natürlich davon aus, dass die AtMega vom Gehäuse her zur Platine passen (also TQ und nicht nur ein günstiger Posten DIL oder so sind). -> Coole Idee, danke! Gruß, Jochen
Ja, es sind natürlich TQFP, siehe auch Seite 370 vom ATmega128-Datenblatt: ATmega128-16AI = TQFP, Industrial temp range Achja: Wer sich keine Platine von Guido gesichert hat aber dennoch an den atmega128's zu 6,99EUR (+Porto) interessiert ist, der kann sich bei mir melden. Wenn bis morgen mittag die momentan noch übrigen 30 Stück nicht weg sind, sind diese dann für "die Allgemeinheit" verfügbar. Gruß, Christof
Hallo Guido, warum kann man die 74ACT573, 74HCT4053, HM628512 55ns nur begrenzt, in Abhängigkeitvon der Anzahl der bestellten Platinen, ordern kann obwohl noch viele da sind? MfG Achim Ps: Leider reagierst Du auf E-Mails nicht.(Da vermutlich zuviele)
Guidos Spam-Filter ist wohl recht progrressiv ;) Bei mir sind die Höchstmengen bei einer Abnamhe von 2 Platinen auf 4 gestellt, das legt also nahe, dass man maximal doppelt so viele Bauteile wie Platinen bestellen kann. Das machte insofern Sinn, dass jeder Zeit haben sollte, sich welche zu sichern, bevor jemand kommt und gleich 50 Stück eingibt, da die Preise durch die verfügbare Menge ja doch kleiner sind als z.B. bei Reichelt. Aber warten wir einfach mal ab, was Guido dazu sagt ;) PS: Die megas sind jetzt alle weg, die Bestellung ist raus!
Hallo @Christof, mit Deiner Information kann ich vermuten, dass es Platinenanzahl + 2 Stück sind. Ich habe 10 Platinen und kann 12 ordern MfG Achim
Also dann: Es gibt was "vorzeigbares"! Ist zwar noch nichts wirklich Großartiges, aber immerhin! Guido und ich haben in den letzten Tagen ein wenig "gespielt". Das Ergebnis könnt ihr euch hier ansehen: telnet://ispf.dyndns.org:3333 '?' liefert einen kleinen help-screen. Das externe SRAM ist von 0x1500 bis 0x7FFF mit malloc belegt, Stack und Variablen liegen im internen SRAM. malloc wird dazu verwendet, den "Sendepuffer" zu verwalten. Viel Spaß :-)
Hallo @OLDBUG super! Kann man schon mal als "Vorfreude" und zum "Warmlaufen" den Code sehen Viele Grüße Achim
Uhm, öhm, klar, wenn Guido wieder da ist, bestimmt. Aber nicht über Dokumentation meckern, die ist nämlich "nicht vorhanden" :-)
Hallo @OLDBUG da gibts doch nichts zu meckern wenn man was für "omme" bekommt odder? Gibts Leute die noch meckern? Ne Steckdose, die man Fernschalten kann, ware noch so ne Einstigssache? Ich habe großes Interresse an der Anschaltung von dem TempSensor. Im Atmelgeschäft bin ich noch neu. Super Leistung von Euch, da gibs nicht zu meckern! Eher konstruktive Beiträge oder Kritik zur Fortentwicklung! MfG Achim
@OldBug: Kann mich Achim nur anschliessen: Super! Allerdings kann mit der Temperatur was nicht stimmen, so warm kann es doch gar nicht sein:o) (Hier hat es heute immerhin -5 statt -15) Btw: Am Anfang hieß es athernet, jetzt arternet? Wofür steht denn das R? Gruß, Jochen
Der Source ist jetzt auf Guido's Homepage unter "Downloads" verfügbar! Es gibt auch einen Beitrag in dessen Forum dazu! Viel Spaß ;)
@ Guido Fischer und OldBug Wenn ich versuche den Source zu downloaden bekomme ich nur ein: You don't have permission to access /files/ether_avr/ on this server.
nur so als Idee und Denkanstoss, zu dem ich gerne einige Meinungen hoeren wuerde: Wenn zur Verwaltung und Erstellung der Software ein CVS-System (a la SourceForge.net) herhalten muesste, haette das einige Vorteile: - mehrere koennten gleichzeitig an der Software arbeiten - Aenderungen muesste nicht jeder einzeln einarbeiten - Harwareabhaengige Module koennen auch so verwaltet werden. .... oder ist das ein viel zu grosser Overhead? (nur mal so als Idee in den Raum (INet) geworfen) Volker
Hallo Leute, kann mich jemand aufklären, welche Funktion die Doppel-led Led301_Link bzw. Led302_act haben. Oder sind das jweils 2 Leds an unterschiedlichen Positionen. Doppel-Leds kenn ich nur mit Polaritätswechsel (DUO-LEDS 2pin) bzw. mit 3 Beinchen. Kann mich da jemand aufklären. Welche nimmt man da von Reichelt (Led, Widerstand)? Noch ne Frage an die SMD Lötprofi: Welches Flußmittelvon Reichelt sollte man nehmen? EDSYN FL22? FL88? CR44? oder was anderes? Ist "normales" Lötzinn 0,5mm Ok? oder eins mit Silberanteil? Weitere Tipps,Links für die Einführung in die SMD Löttechnik? (WIKI ist bekannt) Fragen über Fragen. Bin für jeden Tipp dankbar. Viele Grüße Achim
Hallo @Guido super schnelle Antwort, vielen Dank. Betrag wird heute Abend überwiesen. MfG Achim
Hallo, besonders an Guido und OldBug:o) Nochmal zur Sicherung: Natürlich soll die auch das Haus vor Feuer schützen, ich würde mich aber noch mehr freuen, wenn ich die Platine noch benutzen kann, nachdem sie ausgelöst hat. Klar, normalerweise löst die Sicherung nie aus, aber wenn ich nicht den Fehlerfall betrachte dann hätte Guido sie ja auch weglassen können... Kurz: Hat einer von euch mal gemessen, was die weitgehendst bestückte Platine nun im Normalfall an Strom aufnimmt? Gruß, Jochen
Also obs jetzt 1 Ampere, 0,8 oder 0,5 sind, ist bei 5Volt imho egal. Es ist m.M.n. besser, die Sicherung etwas höher anzusetzten, als in Wirklichkeit notwendig. LG Michael
Versteh mich bitte nicht falsch, denn von Schaltungsentwicklung hab ich nicht wirklich viel Ahnung. Wozu ich eine 1A Sicherung bestücke, wenn ich dann ein 600mA Netzteil anschliesse, hab ich einfach noch nicht kapiert. Natürlich würde auch ich das nicht exakt auf den zu erwartenden Strom dimensionieren, aber wenn ich z.B. 300mA erwarte (von weniger als 120mA hat Guido mal gesprochen!) würden mir 500mA schon als ausreichend Puffer erscheinen. Ich verstehe einfach noch nicht den Nutzen einer Sicherung, die so weit vom Normalbetrieb weg ist. Gruß, Jochen
Ganz einfach... Denk Dir mal, daß ein Kondensator im ungeladenen Zustand einen Kurzschluss darstellt -- wenn auch nur für sehr kurze Dauer!
Hallo, existieren zu diesem Projekt auch eagle 4.13 files? (Hoffentlich habe ich den Link nicht übersehen ;-)) Viele Grüße moin
Hallo Leider habe ich bei 3 Bauteilen echte Schwierigkeiten an die ranzukommen. Das Problem ist, Reichelt sendet erst ab 100 Euro nach Österreich. Die Bauteile sind: MCP2515-E/SO ISPF001V2 SIM1-505 FT245BM Könnte man dafür vielleicht Ersatztypen nehmen ? Oder wäre jemand so nett diese für mich mitzubestellen ? LG Michael
> ISPF001V2 Das ist der CPLD Xlinx XC9536, den Du über Guido beziehen konntest. Hast Du den eventuell schon mitbestellt? ciao, Stefan.
Hallo Stefan Danke!!! Nein habe ich nicht mitbestellt, weil ich den zu Hause schon besitze. Somit bleiben noch diese 3 über: MCP2515-E/SO SIM1-505 FT245BM LG Michael
Hallo Sorry ich möchte euch hier nicht zuspammen,... Der FT245 hat sich nun auch erledigt, was bleibt sind die 2 ICs für Can : MCP2515-E/SO SIM1-505 LG Michael
@moin: es gab mal unter http://www.ispf.de/modules.php?name=Downloads&d_op=viewdownload&cid=4 eine Datei athernet.brd. Ich denke mal Guido wird da irgendwann eine aktualisierte Version zum Download stellen.
Der bei Reichelt doch recht teure MAX3232 CWE (4,75) sollte eigentlich durch einen MAX202 ECWE (1,85) ersetzbar sein. Wichtig ist hierbei das "W" in CWE bzw. ECWE, da es bedeutet, dass der IC im 300mil breiten Gehäuse kommt. Der MAX202 ist auch ein 100nF-Typ, verbraucht laut Maxim aber typ 8mA Strom, während der MAX3232 mit 0.3mA dabei ist. Wäre aber nett, wenn jemand nochmal überprüfen könnte, dass der MAX202ECWE wirklich geeignet ist. Für die meisten wäre er nämlich wohl eine gute (günstigere) Alternative, falls es auf die 8mA nicht ankommt.
Hallo Christof >>> Wäre aber nett, wenn jemand nochmal überprüfen könnte, dass der MAX202ECWE wirklich geeignet ist. Für die meisten wäre er nämlich wohl eine gute (günstigere) Alternative, falls es auf die 8mA nicht ankommt. <<< Habe mehrere von den MAX202ECW zu Hause, bin mir jedoch nicht sicher, ob es ECWE sind. Wenn die Bauform passt, werde ich es ausprobieren. LG Michael
Ich hab jetzt mal den MAX 202 ECWE bei Reichelt bestellt, wehe der passt nicht ;) Was ist mir dem Flash Speicher IC202 udn IC 204? Müssen die bestueckt werden? Beide? Muss ich im Source was aendern wenn ich die weglasse und die SD Karte als Flash benutze? Fuer welche Bauteile wird alles 3,3V benoetigt außer die Flashs und SD? Der DC/DC Konv. ist doch nur fuer CAN?? Wird es eine Doku geben in der das ganze Wissen dieses Threads hier aufbereitet steht? zB. Welche Bauteile optional sind, Welche Speicherbereiche was machen, was der ISPF genau macht etc? Gruss Mode
> Ich hab jetzt mal den MAX 202 ECWE bei Reichelt bestellt, wehe der > passt nicht ;) Sollte eigentlich, ansonsten war er ja nicht sooo teuer, und woanders gebrauchen kann man den sicherlich dann auch noch! > Was ist mir dem Flash Speicher IC202 udn IC 204? Müssen die > bestueckt werden? Beide? Na das möchte ich sehen, wie du beide bestückst! Steht alles im Thread. Siehe auch http://ispf.de/modules.php?name=Downloads&d_op=viewdownload&cid=4 Da hast du das gesamte schematic, da kannst du sehen, was wo liegt und ob du alles bestücken willst oder nicht, liegt vollkommen bei dir. > Muss ich im Source was aendern wenn ich die weglasse und die SD > Karte als Flash benutze? Welchen Source? Hängt natürlich immer von der Software ab. Vielleicht ist es etwas spät, das nochmal explizit zu sagen, aber: Das ist kein Anfängerplatinchen ;) Sourcen stehen ja einige zur Verfügung, natürlich wird man hier und da etwas anpassen müssen. Es wird auch einige Software, zugeschnitten auf arthernet, entstehen, aber wann genau das fertig sein wird steht in den Sternen. Geplant ist z.B. ein UDP-Bootloader mit Java-Frontend. > Fuer welche Bauteile wird alles 3,3V benoetigt außer die Flashs und > SD? Siehe schematic. > Der DC/DC Konv. ist doch nur fuer CAN?? Siehe schematic. > Wird es eine Doku geben in der das ganze Wissen dieses Threads hier > aufbereitet steht? zB. Welche Bauteile optional sind, Welche > Speicherbereiche was machen, was der ISPF genau macht etc? Wie gesagt: Das meiste erschließt sich aus dem Schematic. Die Pinbelegung ist hier auch im Thread zu finden, es wird sicherlich noch ne Seite als Zusammenfassung hochgezogen, aber auch hier gilt: Geduld. Das ganze ist mehr Aufwand, als sich die meisten vorstellen. Eines muss dann natürlich noch gesagt werden: Es handelt sich bei arthernet nicht um ein fertiges Produkt mit kompletter Software und Support. Das ist kein Ethernut o.ä. und will es auch nicht sein. Als Konsequenz folgt daraus, dass jeder zunächst selbst gucken muss, was er mit seinem Board anfängt. "Wir" werden hier und da sicherlich etwas Software schreiben, die auch veröffentlicht wird. Aber es wird kurzfristig keine "arthernet software" geben, d.h. jeder muss sich seine Software entweder selber schreiben oder eben vorhandene Softwarepakete so anpassen, dass sie zu seiner Zufriedenheit arbeiten. Die nötigen Informationen hierzu finden sich dann im schematic + Memory-Mapping.
Achja, noch eine wichtige Sache: Guido hat das Projekt initiert und ohne ihn wäre das alles nicht so weit gekommen, allerdings sind jetzt, vor allem was die Software angeht, noch mehrere Personen involviert. Daher sollte dieser Thread hier weiterhin zentrale Anlaufstelle bleiben. Ich würde also bitten, von privaten Mails abzusehen. So kann zentral auf Fragestellungen eingegangen werden und alle haben was davon. Was die weitere Entwicklung angeht: Wenn es etwas vorzeigbares gibt, wird das an dieser Stelle bekanntgegeben.
Ok, DIe Frage mit IC202 und IC 204 haette ich mir wirklich selber beantworten koennen. Hatte nur den Bestueckunsplan nicht gesehen. Ich denke schon das ich das mit der Platine hier hinbekommen werde. Alles Infos die man braucht stehen zwar hier, aber ziemlich durcheinander. Daher meine Frage. Und wenn man eine laufende Software hat kann man sie ja mit leichtigkeit an seine Anforderungen anpassen. Aber was ist denn mit der SPule L102? Ist die wegrationalisiert worden? Auf der Bauteilliste ist sie noch vertreten doch im Schaltplan als auhc im Bestueckungsplan finde ich sie nicht wieder. Gruss Mode btw: Wer hat denn seine PLatine schon bekommen und bestueckt
Investiere die Zeit und lies mal alle Beiträge über Dir. > L102, die Induktivität vor dem AVR von der wiederum L101 nach AVCC > geht, wird ersatzlos gestrichen. Wenn alle Ports, also PORTA bis PORTG > mit einer Zählvariable durchgewobelt werden, liegt an AVCC eine > Störspannung von >1V an. Ohne L102 beruhigt sich das ganze auf <=200mV Ich warte noch ganz ungeduldig. Guido schrieb, daß die Platine am Donnerstag bei der Post aufgegeben wurde. Eigentlich hätte ich die heute erwartet, aber Schneckenpost ist wohl der richtige Ausdruck. :-( Naja, vielleicht Montag. ciao, Stefan.
@Stefan: Dann bin ich ja nicht der einzige, der noch warten muss. Meine wurde ebenfalls am Donnerstag aufgegeben und war heute noch nicht da. @mode: Dir steht es frei all die Infos in die Wiki zu schreiben :-) http://www.mikrocontroller.net/wiki/AVR_Ethernet_Platine
Hallo Platinen und Bauteile sind Heute eingetroffen!!! Und das wo sie doch den weiten Weg nach Österreich hinter sich hat. Danke Guido!!! Die Platine schaut mega genial aus, so routen zu können ist eine mega Leistung! Eine Frage, wo bekommt man eigentlich das proMa Alugehäuse, für das die Platine entworfen wurde ? LG Michael
Bei Eisenkarl, oder bei Reichelt. :-) Bestellnummer ist "GEHÄUSE EFG 1S". Aber nach Österreich liefern die doch erst ab 100 Euro? Ansonsten sind das Standard-Gehäuse für Euro-Platinen, die man auch bei Conrad bekommt. Gibt es den in der Alpenrepublik? ciao, Stefan.
Also mich würde mal interessieren, was all die Leute mit dem Arthernet anfangen wollen. Was habt Ihr für Ideen? Oder ist es nur zum Kennenlernen? Ich finde das Projekt toll, weil - es eine kleine Platine mit allen möglichen interessanten Schnittstellen zum Kennenlernen ist (Ethernet, CAN, USB) - ich mich immer schonmal mit Netzwerkprogrammierung beschäftigen wollte (bisher immer nur Anwender eines fertigen IP-Stack auf großen Rechnern) - alles in so ein schönes schnuckeliges Blechgehäuse passt, auf dem man auch mal mit schwerem Schuhwerk drauflatschen kann Was habe ich vor? Ich möchte eine Software entwickeln, die die Abfrage von Sensoren über eine SNMP-Schnittstelle erlaubt. Anwendungsbereich könnte z.B. Klimaüberwachung in 19" Schränken sein oder aber eine Wetterstation mit Ethernet-Anschluß. Komplettiert werden könnte das mit einem Ethernet-seriell-Konverter, mit dem man auch Server managen kann. Das alles in einer Box wäre schon sexy und ich könnte das auch privat ganz gut gebrauchen. ciao, Stefan.
Also ich plane einen Stand-alone mp3 Player bei dem man die Dateien übers Netzwerk uploaden kann. Nebenbei soll der dann noch einen Temperaturverlauf aufzeichnen können. Allerdings bis ich soweit bin, kann das (bei mir) ne halbe Ewigkeit dauern. Ich baue im Moment gerade eine Schaltung, bei der ich mit die Teile schon vor 1,5 Jahren gekauft hatte.
@ Malte Ich plane einen MP3 Player welcher Shoutcaststreams aus dem Internet abspielt. Siehe auch: http://www.mikrocontroller.net/forum/read-4-164078.html Die Adressen der Shoutcastserver sollen ueber ein kleines Webinterface ins EEPRom geschrieben werden Das aber nicht mit der Hardware aus diesem Projekt. Dazu reicht was abgespeckteres Mode
Dann auch mal von mir die Info, an was ich bei der Platine gedacht habe: - An/abschalten einer Webkamera - Unsere Katze hat eine Katzenklappe: Registrieren wann sie raus und rein geht ;-) - Und auch hier evtl. die Temperatur Volkmar
Hallo Volker, die Zeit, die sie draussen verbringt könnte umgekehrt proportional zur Temperatur sein ;-). Ich will versuchen meine Haustechnik und Heizungssteuerung auf den µC zu bringen - läuft z. Zt. in Turbo-Pascal im DOS-Fenster. Gruß aus Lingen Einhart
Hallo zusammen! Meine Platinen und Bauteile sind auch gekommen. Dank an Guido, Hagen und Oldbug!!! Ich habe auch vor eine Art Ueberwachung fuer mein Haus zu machen. Bis es aber so weit ist, muss ich noch ein paar andere Sachen fertig haben. ;-(( Alex
Also ich bin jetzt gefrustet. Gestern 10 Minuten aus dem Haus und genau in der Zeit kommt natürlich der Briefträger. Wie immer. Hinterlassen hat er einen blauen Zettel mit Abholung am nächsten Tag angekreuzt. Ich also heute morgen froh und glücklich hin da hin und was erwartet mich? Am Dienstag den 15.3.2005 ist die Filiale wegen einer Betriebsversammlung nach dem Betriebsverfassungsgesetz geschlossen. Wir bitten um Ihr Verständnis. ICH BIN STOCKSAUER. Hätte der Bl...mann von Postbote das nicht auf dem Zettel vermerken können? Immerhin ist er des Schreibens doch mächtig. Oder? Für ein Kreuz und das Datum und meine Anschrift hat es jedenfalls gereicht. Soviel also zum Serviceunternehmen Deutsche Post. Das mußte jetzt sein, Danke für Euer Verständnis. ciao, Stefan.
prust Heut morgen, ich will zum Briefkasten, sehe schon die Postdame aus dem Nachbarhaus gehen, in ihren gelben Kangoo steigen und wegfahren... Im Briefkasten ein blauer Zettel... morgen, jedoch nicht vor 10 Uhr grml Ich schnell wieder hochgelaufen, Latschen aus, Schuhe an, runter, aufs Fahrrad, Postfrau suchen. Bei der FH fündig geworden, Postkutsche überfallen, Platinen da g
Also meine Platine ist jetzt auch da. Der Postbote hat das Päckchen ziemlich wackelig (hätte leich nen Meter runter auf Steinboden fallen können) über den Briefkasten gelegt, hat geklingelt und ist dann sofort weitergegangen ohne darauf zu achten ob überhaupt jemand zu hause ist. @mode: Dein Projekt sieht interessant aus. Web Radio wär natürlich auch was feines. Nur bei mehr als 1-2 Std täglich gäbs dann doch Probleme mit unserem Frei-Traffic Limit.
@Einhart: Proportional ist das aber auch nicht, ist mehr eine Sprungfunktion. Ab einer gewissen Temperatur (und auch Jahreszeit) ist sie nur noch zum Futtern zu sehen... Finde ich einfach eine nette Spielerei, wenn ich im Büro sehen kann, ob der Kater da ist oder nicht. ;-) Und wer weiß, was mir noch so alles einfällt (Lichtsteuerung in der Scheune, ...) Volkmar
Wer weiss, wer da noch so alles durch die Klappe von der Mietze krabbelt ;-D Scherz beiseite: auf ispf.de im Forum hab ich nen neuen Beitrag hinterlassen, wens interessiert...
Hallo, es kann doch eigentlich nicht sein, daß in den aktuellen Versionen von arthernet.pdf und blist.htm unterschiedliche Werte für C307 und C309 stehen, oder? Welche Angabe gilt? Gruß, Jochen
Hallo Guido, nein nein, da hat sich bestimmt ein Fehler eingeschlichen: im shematic steht C307 10nF 1KV vs. 27pF in blist, und der C309 steht in blist gar nicht drin. Entweder hast du also nicht nachgeschaut, oder ich blamier mich grade. Ich hoffe auf ersteres:o) Gruß, Jochen
Ich habe mein erstes Platinchen aufgebaut. Leider hat Reichelt noch nicht geliefert, daher ist die Stromversorgung noch provisorisch von extern (mit Krokodilklemmen gebrückt). Bestückt ist alles bis auf MMC, CAN und Dataflash. Der MAX202 sollte morgen hoffentlich kommen, wenn DHL morgen klingelt. Weiterhin viel Spaß beim Basteln! Ich hoffe, ich mache diejenigen nicht allzu heiß, die noch keine Zeit hatten anzufangen. g
Achja, noch paar Anmerkungen zum Bestücken, die dem weniger aufmerksamen Leser evtl. nicht geistig gegenwärtig sind: 1. Die 10nF Kondensatoren C304, C305, C306, C307 sind keine "normalen" 10nF Cs sondern die großen 1KV Versionen, die man von der NIC heruntergelötet hat. Es sind auch wahlweise nur C304, C305 oder C306, C307 zu bestücken. Auf verschiedenen NICs war das unterschiedlich gelöst, jeder soll es so machen, wie er es für besser hält 2. Bei unsicherheit, wie herum die einzelnen ICs eingelötet werden sollen, notfalls im vorherigen Posting das angehängte Bild anschauen. 3. Beim Bestückungsdruck ist die Dokumentation einer Lötbrücke leider nicht komplett draufgekommen. Auf dem Bestückungsplan als PDF auf Guidos Seite ist es jedoch richtig zu sehen. 4. Zwischen RJ45- und SUBD-Buchse befinden sich ja die LEDs für Ethernet. Der Vordwiderstand kann entweder gegen Masse oder gegen Vcc gelötet werden. Davon abhängig müssen natürlich auch die LEDs richtig gepolt eingesetzt werden. Werden die Widerstände gegen Masse gelötet, so leuchtet die ACT-LED nur bei Aktivität und die LINK-LED, wenn eine Verbindung besteht, ansonsten ist es genau andersrum. 5. Der Kondensator C301 ist optional, er wurde auf einigen NICs im Layout angetroffen. Fälschlicherweise ist dieser mit 10nF angegeben. Meine Messungen haben ergeben, dass der Wert jedoch so um die 33pF sein müsste. Wer einen entsprechenden C auf seiner NIC vorfindet, kann diesen ja auflöten, ansonsten kann er wahrscheinlich ohne Bedenken weggelassen werden. 6. Wer sich den BSS123 ersparen möchte, kann diesen weglassen, indem er folgende zwei SOT23-Pads kurzschließt: das Pad direkt am RTL8019AS und das Pad, welches zur linken oberen Ecke hin liegt (also zum MMC-Card-Slot). Der RTL8019AS hat nämlich im Gegensatz zu den restlichen ICs einen Hogh-Aktiven reset, der FET sorgt also dafür, dass die eigentliche RESET-Leitung für den RTL8019AS invertiert wird. Wer meint, es müsse seinen RTL nicht hardware resetten, der kann es halt wie grad beschrieben überbrücken. 7. C107 bis C114 sind Kondensatoren für den ADC. Ich habe auf diesem Gebiet kaum Erfahrung, kann hier also keine Tipps geben. Man sollte sie aber nur dann bestücken, wenn man weiss was man tut. Vor allem, wenn die entsprechenden Pins evtl. noch zu anderen Zwecken als für den ADC verwendet werden (z.B. JTAG, welches auf demselben Port liegt) 8. R305, R306 und R307 (alle auf der Rückseite der Platine) sind optional. Sie werden so weit ich weiß für Ethernut-Kompatibilität benötigt. (inwieweit, keine Ahnung) 9. R401 und R402 (je 0 Ohm) sind nur dann zu bestücken, wenn das zweite UART auch durch den MAX202 bzw. MAX3232 auf geschleift werden soll, es liegt ansonsten auf den entsprechenden Pinheadern zur Verfügung. 10. Beim CPLD wurden programmierte ICs mit einem roten Edding markiert. Nicht auf die Idee kommen, dass die Position des Punktes den Pin 1 markiert. Dies tut wie gewohnt weiterhin der kleine eingelassene Punkt im Gehäuse. Auf dem Board ist in der entsprechenden Ecke auch ein Stück Lötstopplack in Punktform weggelassen, um Pin 1 zu markieren. 11. Statt des üblichen 7805 kann z.B auch der bei Reichelt erhältliche LM 2940 CT5 verwendet werden. Dieser ist Pinkompatibel, benötigt jedoch weniger Spannungsabfall. Laut Datenblatt ist jedoch ein dickerer Elko dahinter (C820) nötig, nämlich 22µF, den gibts bei geringerer Spannungsfestigkeit aber auch im selben Gehäuse wie der sonst eingeplante 4µ7. Die Spannungsregler legen sich übrigens auf die Rückseite der Platine! 12. Bei den Quarzen Q101 und Q501 darauf achten, dass diese nicht ohne weiteren Schutz bis nach unten durchgeschoben werden, da sich im "Einzugsgebiet" Vias befinden, die durch das Gehäuse kurzgeschlossen werden könnten. Es gibt spezielle Isolationskappen, ich hab dafür z.B. ein Stück Präsentationsfolie zurechtgeschnitten und auf die Beinchen gesetzt, das klappt auch. 13. Beim Sicherungshalter besonders aufpassen, da der Lötstopplack leider etwas zu groß ausgespart ist, so dass ein Stück Massefläche rund um das Pad ungeschützt blank liegt. Auf versehentliche Kurzschlüsse achten! --- Okay, mehr fällt mir erstmal nicht ein, ist ja auch schon ne ganze Menge. Hier nochmal das Foto von gradeben noch etwas größer: http://xs.to/xs.php?h=xs20&d=05113&f=dcp_3571.jpg Gute Nacht!
Update: Das Problem mit dem Sicherungshalter ist tatsächlich gegeben: http://xs.to/xs.php?h=xs20&d=05113&f=dcp_3575.jpg Es gibt zwei Möglichkeiten hier einen Kurzschluss zu umgehen. Zum einen kann man ein abgeschnittenes LED-Beinchen o.ä. biegen und als "Erhöhung" dazwischenlöten: http://xs.to/xs.php?h=xs20&d=05113&f=fuse1.png Was ich persönlich gemacht habe, ist jedoch folgendes: Die Metallpads aus dem Sicherungshalter entfernen und unten etwas überstehendes Blech abschneiden. Wenn man die Bleche wieder einsetzt und die Halterung recht zentral einlötet, dann kann nichts schiefgehen, mit genügend Flussmittel sowieso nicht. http://xs.to/xs.php?h=xs20&d=05113&f=op.jpg +++++ Zum anderen rate ich davon ab den BSS123 wegzulassen. Nachdem ich jetzt die OnBoard-Stromversorgung bestückt habe, wollte der RTL mit der Drahtbrücke nicht so wirklich. Das Auflöten des BSS123 hat hier Abhilfe geschaffen. +++++ Der MAX202ECWE funktioniert.
Sorry hab bei Reichelt nachgesehne, der Halter ist anscheinend bei der angegebenen Sicherung dabei. LG Michael
Hallo Guido, auf der Projektseite von Arthernet ist von einer Erweiterungsplatine zu lesen. Kannst Du uns genaueres dazu sagen? Volkmar
Hallo Volker, die Erweiterungsplatine enthält deine Schaltung und kann daher von dir nach Belieben gestaltet werden (Sensoren, Relais, ...). Wenn ich deine Frage damit beantwortet habe darf ich Guido stattdessen eine andere stellen: Hallo Guido, hast du in der Bauteilliste außer C305 .. C309 noch was geändert? Das shematic pdf wurde dabei nicht geändert, oder? Btw: ich fand das übrigens wirklich praktisch, als man vor dem Download sehen konnte, wann die Datei zuletzt aktualisiert worden ist. Gruß, Jochen
Ein paar Fragen, die beim Bestücken aufgekommen sind: Irgendwie erschließt sich mir der Sinn von SJ301 und SJ302 nicht. Kann mir das mal jemand erklären? Warum ist der MAX809 optional? ciao, Stefan.
@Jochen, das ich mir meine eigene Erweiterungsplatine bauen kann, ist mir klar. Ich habe nur das Bild von einer solchen auf Guidos Seite gesehen und wollte anfragen, was hierbei angedacht ist. Wenn die Antwort ist, daß dies nur ein Beispiel und nicht für die Allgemeinheit, dann habe ich kein Problem damit. Volkmar (und nicht Volker)
Hallo Volkmar, ich hatte den falschen Namen schon korrigiert, aber offenbar hat der Admin die Korrektur statt der falschen Version entfernt. Sorry nochmal. Gruß, Jochen
Hallo, nachdem meine beiden Platinen auch eingetroffen sind, habe ich drauf geschaut, nochmal geschaut und dann hat mich der Mut verlassen, die Platinen selber bestücken zu wollen, um nicht einen Elektronik Friedhof zu hinterlassen. Nun also die Frage, wer bereit wäre, mir zwei dieser Platinen zu bestücken, gegen eine Spende natürlich. :-) Platinen werden nur zum Teil bestückt, Flash und CAN gar nicht, USB nur auf einer. Hoffe mir werden geholfen :-) Gruß, Ralf Kirmis
Hallo Für alle Österreicher die ein Problem mit den SMD Teilen haben, sollte es welche geben, eklräre ich mich gerne bereit zu helfen. LG Rubi
Wer sich wundert, warum der UART vom Mega128 nix von sich gibt, der sollte mal die Fuses checken. Hab fast zwei Stunden gesucht, bis mir einschoß: "Da war doch mal was mit den Fuses!!!" Also nicht suchen, sondern die EFUSE zu 0xFF machen ciao, Stefan.
Christof schrieb: "3. Beim Bestückungsdruck ist die Dokumentation einer Lötbrücke leider nicht komplett draufgekommen. Auf dem Bestückungsplan als PDF auf Guidos Seite ist es jedoch richtig zu sehen." Jetzt frag ich mich schon die ganze Zeit, was damit gemeint ist, und komme nicht drauf. Hat die Brücke eine Bauteilnummer oder wo ist die zu finden? Jochen
Ach so. Die 128kB Beschriftung habe ich irgendwie gar nicht richtig wahrgenommen, da ich bei 512 aufgehört hab zu lesen:o) Danke.
C107 - 114, Die AD Kondensatoren. Habt ihr sie bestueckt? Falls ja, mit welchem Wert? Sind 100nf ok? Gruss Mode
Alles klar, dann loet ich 8stk 1nf drauf. Schaden koennen die doch in keinem Fall, oder? Gruss Mode
also ich würde die AD-Cs nur bestücken, wenn du sie wirklich brauchst. die verfälschen dir sonst dein signal, was man ja (meistens) nicht möchte.
Hi Man muß sich eben bewußt sein was man macht. Ist die Impedanz des Meßsignals relativ hoch (>=1k) und die Frequenz eher gering kann so ein C unbedingt nötig sein um überhaupt vernünftig messen zu können. Je größer die Messfrequenz wird desto kritischer wird der Kondensator. Wenn Quellimpedanz und maximale Signalfrequenz definiert sind kann man eine Aussage über die Beeinflussung treffen. Sonst ist eine genauere Aussage schlicht unmöglich. 100n sind aber auf jeden Fall unnötig da der interne S&H-C nur etwa 14pF hat. Wenn man da einen Faktor 100 drüber geht reicht die Ladung des externen C um den internen S&H-C zu Laden ohne zuviel Spannung zu verlieren. Einen weiteren Faktor 100 benötigt man nicht. Matthias
Hallo, ich krieg womöglich gleich den Preis für die blödeste Frage im Thread, aber ich komm nicht drauf: Wie funktioniert denn die Roka DC-Buchse? Fall a) Sicherung entnommen, Spannung direkt an Gleichrichter Eingang angelegt, Schaltung zieht 70mA. Fall b) Sicherung drin, Spannung direkt an Gleichrichter Eingang angelegt, Schaltung geht bei 100mA in die Strombegrenzung. Warum? Ich hab zwar rausgefunden, dass das mit dem Bügel der DC Buchse zusammenhängt, verstehe aber nicht wie. Der Bügel geht auf der Platinenunterseite auf das mittlere Pad, und das ist nirgends angeschlossen. Die Durchgangsprüfung sieht das auch so. Wenn Bügelkontakt offen = Fall a), wenn geschlossen = Fall b) Aber warum? Gruß, Jochen
Klar hab ich geguckt. Ich hab die Bleche gekürzt UND Nagellack drauf. Wenn Sicherung drin, und der Bügel der DC-Buchse oben (so als wäre ein Stecker drin) sieht es ja auch gut aus. Nur wenn der Bügel auf dem Mittelkontakt liegt nicht... Kann das dann der Sicherungshalter sein? Wenn Sicherung entnommen: - kein Durchgang zwischen links und rechts - Durchgang links und GND (MMC Pad ganz links oben) - 590mV aber kein Piep (bei Durchgangsprüfung) zwischen links und VCC (an DC-Buchse) Jochen PS Ich mach für heute erstmal Feierabend.
So, hab's gefunden: Ein klein wenig Zinn hat an der Stirnseite unter dem Kunststoffrand des Sicherungshalters geklebt (von allen Seiten unsichtbar), und hat genau dann einen Kurzschluss verursacht, wenn der Sicherungshalter mechanisch minimal bewegt wurde. Dazu hat des Anheben des Bügels der DC-Buchse gereicht. War erst zu finden, nachdem ich den Sicherungshalter wieder ausgebaut hatte. Das ist insoweit beruhigend, als dass ich wenigstens die Funktion der DC-Buchse verstanden hatte:o) Entschuldigt den Fehlalarm, Gruß, Jochen
Hi, hat vielleicht jemand eine von Guidos Ethernet-Platinen zuviel bestellt oder hat so noch eine über und will sie mir verkaufen? Gruß, Peter
Hi Guido, ich würde gerne 2 Stück nehmen. Wenn nicht würdemir auch erstmal eine reichen. Du kannst mir ja mal eine Email schicken an peter.wind@web.de. Danke schon mal. Gruß, Peter
Hallo ich würde mich auch für eine interessieren. wenn noch welche da sind schick mir doch bitte ne email :) gruss markus
@Guido Fischer hallo, falls du wiedermal welche haben solltest würde ich dir eine abnehmen. danke.
Hallo Guido Das war ja nun doch ein Projekt, an dem Du über 1 Jahr gearbeitet hast. Wäre schade, wenn es nicht weiterlebt,... Danke für deine Mühen. Btw.: Ich nehme an, Zeitschriften wie Elektor würden Dir das sicher abkaufen,... LG Michael
Hi nochmal, ich wollte mal nachfragen, ob jemand vielleicht noch jeweils einen Chip von den AT45DB041B bzw. AT45DB081 zuviel daheim hat und ihn mir verkaufen will. Einen SD/MMC-Slot von Farnell und eine DC-Buchse von Conrad würde ich dann auch noch nehmen. Gruß, Peter
Moin moin, ich habe nun meine Platine endlich auch soweit bestückt. Jetzt tauchen aber ein paar Probleme auf: Wie programmiere ich den Mega128 via ISP? Die Stiftleiste ist ja vorhanden, nur wenn ich mir dazu den Schaltplan ansehe, kann das doch so einfach nicht funktionieren. Da hängt ja noch der 4053 dran.... Und dann noch die Frage nach der RJ45-Buchse. Geht das Lämpchen am dazwischengeschaltetem Hub (Switch) an, wenn der Controller nicht programmiert ist? Mfg Jens
Hat jemand von euch den rtl8019as in der eagle bauteil libery weil den bräuchte ich nämlich????
Hi, kann man eigendlich jetzt die Sourcen von Ulrich Radig ohne weiteres aufspielen? Will nämlich nicht durch ein falsches File meine Platine abrauchen lassen. MFG Ingo
Ich hab auch schon gesucht. Leider auch nichts gefunden. Vielleicht kann Guido den Link zur Auktion mal posten... Dirk
Dann wäre es vllt ein netter Zug, wenn du den Link, bzw den richtigen suchbegriff posten würdest ---
Das ist ein ehrenwertes Argument. Alle anderen halten dich zwar für einen *rsch, aber lass dich nicht irritieren! Zieh dein Ding durch.
was andere hier von mir halten ist mir egal, sie kennen mich nicht aber lassen wir das.
Guido es hatte schon seinen Sinn, dass Andreas deinen ersten post gelöscht hatte
Hallo Peter
<<<
ein grosskotz, wie immer
>>>
Im Moment verhältst Dich Du wie einer.
Könnt ihr das bitte Privat klären, das interessiert
nämlich hier niemanden. Ich bezweifle sogar das es
Guido interessiert,...
@Guido
Hallo schön wieder mal was von Dir zu hören.
Ich hoffe die Arbeit hält Dich nicht all zu sehr
vom Basteln ab. Leute wie Dich braucht das Forum.
LG
Michael
Peter, Du nervst. Wenn Du nix sinnvolles beitragen möchtest, dann lass es einfach. Deine Kommentare sind überflüssig.
Hallo, habe jetzt zwar schon alles durchgelesen, aber sehe irgendwie den Wald vor lauter Bäumen nicht mehr. Vertreibe nebenberuflich eine kleine Anzahl von Geräten und wollte das dann über die VERE abwickeln. Ich habe das so verstanden, das die für mich den ganzen Papierkram übernehmen, und auch denen dann und nicht mir die Container vor die Tür gestellt werden. Leider antworten die nicht auf meine E Mails, sind wohl überlastet. Vielleicht hat ja hier schon jemand Erfahrungen mit denen gemacht, und oder gibt es noch andere Firmen die soetwas anbieten. In jedem Fall suche ich jemanden der mir den ganzen Schriftkram usw. abnimmt. - welche Einmalkosten würden entstehen - mit welchen Kosten müßen wir bei der Entsorgung von ca 100 Kleingeräten Geräten/Jahr rechnen Den Ablauf würde ich mir so vorstellen: - ich melde denen einmalig am Jahresende die Anzahle der verkauften Geräte in aktuelle Jahr, und die übernehmen dann den Rest - wenn ich im folgenden Jahr keine Geräte mehr verkaufe melde ich denen dann einfach die Anzahl 0 und es entstehen mir keine Kosten Wäre das so denkbar, oder bin ich da total auf dem Holzweg? MFG Peter
Hallo liebe Gemeinde, so vom durchlesen der Beiträge finde ich dieses Projekt genial. Aber wo kann man diese Platine bestellen?. Bei E... habe ich leider nichts under dem Begriff Arthernet gefunden. Gibs noch andere Bezugsmöglichkeiten? Wird nur die Platine geliefert oder gibts ganze Bausätze oder schon fertige Aufbauten? Gruß Theo
Hallo Theodor Schau mal auf www.ispf.de Das ist die Site von Guido. Da steht auch seine E-Mail Adresse. Schreib ihm doch mal eine E-Mail. Soweit ich weiß gibts nur die Platine und den programmierten CPLD bei ihm zu kaufen. Fertige Module oder Bausätze nicht. Gruß Robert
Hallo Guido, habe ich soeben gemacht. Nur mein E-Mail PGM , wirft die Hälfe der Ein- bzw. Ausgehenden Mails weg. Warum??? Meine E-Mailadresse lautet: teddy2baer at gmx.de gruß theo
Hallihallo! Nach langem tiefen Graben habe ich den Thread doch noch wiedergefunden. Scheinbar ist dieses eigentlich so tolle Projekt nach wie vor noch nicht auf den gebührenden Nährboden gefallen oder wie sehe ich das? Schade eigentlich. Hat in der Zwischenzeit überhaupt mal jemand einige Programmbeispiele oder wenigstens Erfahrungsberichte zu dieser tollen Platine zusammengetragen? Ich habe nach dem ich meine Platine damals in Betrieb genommen habe leider nur kurze Zeit damit experimentiert und sie danach mangels Zeit sauber verpackt in die Ecke gelegt. Immer mal wieder fällt mein Blick auf diese Schachtel und in meinem Hinterkopf habe ich diesen nagenden Gedanken "man müsste doch ENDLICH mal..." seufz Also... irgendwelche Erfahrungsberichte? Geräte die wirklich im Einsatz sind? Codeschnipsel? Irgendwas?
Meine eigene Platine, erweitert mit LCD und CAN-Bus, liegt auch schon relativ lange nutzlos auf dem Schreibtisch herum. Doch der Einsatzzweck sollte immer die Fernsteuerung meines Rechners sein, damit ich auch im Urlaub mal den Rechner ein- und auschalten oder reseten kann, wenn's nötig sein sollte. Doch durch Diplomarbeit & Job finde auch ich qausi keine Zeit mehr, eigentlich sehr schade. Die letzten Versionen, die ich im Netz fand, waren leider alle nicht sehr sauber programmiert und produzierten bei den neueren Compilern sehr viele Warnings. Hatte versucht, das auszumerzen. Doch dann verging die Lust und andere Dinge waren wichtiger. Was mir noch in Erinnerung blieb war die Tatsache, dass ein Freund in Bangkok quasi nicht sauber mit dem Webserver kommunizieren konnte. Scheinbar gibt's da Probleme mit den Laufzeiten im Protokollstack.
Hallo! Das ist echt schade alles. Ich hatte meine Platine damals quasi "mit allem" versehen. Extern ist noch ein schön großes LCD Display dran. Bis auf die Ansteuerung des Displays habe ich eigentlich auch nichts weiter ausprobiert. Meine ursprüngliche Planung (neben dem Vorsatz möglichst viel auszuprobieren) war auf der Platine einen Webserver aufzusetzen der sein Document-root auf einer MMC Karte hat und/oder ein Programm dass über Netzwerk regelmäßig einen POP3-Server nach neuen Emails abfragt und gegebenenfalls den Absender und das Subject auf dem LCD-Display anzeigt.
Ich hatte meine Platine soweit aufgebaut, dass der Telnet Server, den es hier als Code gab lief. Dann hatte ich versucht den Bootloader von Peter Danegger auf dem MEGA128 zu spielen, was jedoch scheiterte weil die Version für den ATMEGA128 nicht mit der Linux Version des PC Programm sprechen wollte. Und da für mich das Aufspielen von Software mittels LPT Ports etwas umständlich war* hatte ich die Platine erstmal zur Seite gelegt. Und dann begann mein Studium... Daneben fehlt mir für den Netzwerk Teil schlicht die Erfahrung. Mein ursprüngliche Idee war ein MP3 Player mit Festplatte und FTP Server. Inzwischen würde ich statt der Festplatte eine SD Karte nehmen. > Immer mal wieder fällt mein Blick > auf diese Schachtel und in meinem Hinterkopf habe ich diesen nagenden > Gedanken "man müsste doch ENDLICH mal..." So geht es mir auch. *Der ISP Anschluss auf der Platine hat Vorwiderstände, mein ISP Programmer aber auch und beide in Reihe sorgten dafür dass der PC die Signalne nicht mehr erkannte. Also überbrückte ich die beim Flashen immer Vorsichtig mit Krokodilklemmen.
Hallo kennt jemand den Hintergrund warum Guido seine Beiträge löschen ließ. Die Platine war und ist immer noch genial. Auf die anderen "Webserver" gehen alle los wie die Geier...leider ist diese Projekt Sofware-seitig nie so richtig in die Gänge gekommen. Hat jemand das vollständig aufebaut und am laufen? Es liegt wohl an den SMD's, dass die Resonanz nicht so groß ist.
Ich glaube die Resonanz zu dem Projekt war schon gewaltig. Ich selbst habe zwei Platinen davon am laufen. Eine ist mein Experimentierboard, die andere habe ich ein NTP-Server draus gemacht. Über die Gründe, warum Guido alle seine Beiträge löschen ließ, kann ich nur spekulieren. Eventuell sind da ein paar Neider zu weit gegangen? Habe mich aber auch darüber gewundert. mfg, Stefan.
Hallo @Stefan die Resonanz im Thread ja, aber es wurde keine Software fürs Board generiert. Ich schäme mich auch.... Ich habe zum Anschub damals auch mehrere Boards gekauft... aber nie vollendet. Es wäre schön gewesen wenn dieses Board durch den ENC Chip wiederbelebt worden wäre. Bei mir hat an dem Ethernet Teil gehabert....
Naja, die Motivation, seinen Code im Forum zu teilen, ist ja nie sonderlich groß gewesen. Im Gegensatz zu elektronischen Schaltungen. Leider sind in diesem Forum eine Menge Anfänger unterwegs, die gerade mal in der Lage sind, den Code in den AVR zu flashen. Wenn es dann an Änderungen geht, ist der Support-Bedarf sehr hoch. Meiner Meinung nach ist alles Nötige auf den Arthernet portiert. Es gibt uIP und eine Ethernut-Umsetzung, die auf Guidos Homepage (www.ispf.de) verlinkt ist. Was soll man noch an Code veröffentlichen? Es gab in diesem Thread wahrscheinlich auch eine Menge Trittbrettfahrer, die sich Boards bestellt haben, diese aber nie aufgebaut haben. Es ist halt kein Anfängerprojekt. Alles in allem ist das Board eine gute Basis für eigene Experimente. Ich habe den Aufbau nie bereut. Mittlerweile habe ich übrigends den Mega128 durch einen Mega2561 ersetzt. Danken möchte ich besonders Guido, aber auch den anderen Aktiven im Thread, für die Mühe, die er sich gemacht hat. Das Board hat mir viele schöne Stunden bereitet. mfg, Stefan. P.S. Wenn noch jemand die eine oder andere unbestückte Platine hat, möge er sich bei mir melden.
Hi gibt es noch ne Arthernet Gemeinde? Das Board ar und ist noch gut! Ich habe mir vorgenommen das im Neuen Jahr wieder anzupacken. Verwunderlich ist, das in anderen Webserver Thread die Resonanz groß ist. Leider hat sich Guido hier im Forum verabschiedet...schade... Eine Weiterentwicklung wäre doch gut gewesen (Richtung ENC28J60) oder so.. Leider hat Guido das Layout nicht freigegeben...oder war das "DER" Fehler..? Viele Grüße von einem Arthernet Fan (mit wenig Zeit) Achim
Falls es noch jemanden interessiert, ich habe mal aufgeschrieben, was ich tun musste um die aktuelle Nut/OS Version für das Board zu compilieren. Danach funktioniert bei mir tcps Demo auf dem Board - zumindest hin und wieder. Man kann sich per telnet verbinden und dann hängt sich die Software fast immer irgendwo auf. An der Hardware liegt es vermutlich nicht, weil die uIP Software im Gegensatz dazu bei mir einwandfrei läuft.
Vielleicht interessiert es ja nach der langen Zeit doch noch jemanden, was ich mit meiner Platine endlich umgesetzt habe: http://www.youtube.com/watch?v=N-m6TGZMfso Schaltpläne und die Software: http://www.marwedels.de/malte/mp3player1/ Die Software ist noch ziemlich Beta und hat einige ernste Bugs, aber inzwischen werden Internet mp3 Streams stundenlang unterbrechungsfrei abgespielt.
Moin Malte, endlich wird 'mal eine klasse Anwendung für das Bord veröffentlicht. Vielen Dank dafür! Gruß Einhart
So, ich habe meinen Player fertig (Links siehe oben). Damit dürfte auch die Nut/OS Anpassung für die Platine vollständig sein. Die Software enthält ein Shell Skript, welches vom Nut/OS Download bis zum fertigen Compilieren alle Schritte automatisch ausführt. Alle geplanten Features habe ich fertig (und der Atmega128 ist zu 97% voll). Wesentliche Features: Spielen von mp3s, Internet Streams (Shoutcast), Lastfm Anzeigen von Metadaten FTP Server SD-HC + FAT32 Unterstützung Aufnahmefunkion Unterstützen von IR Fernbedienungen Konfigurieren des Netzwerks direkt per GUI Die Software lässt sich zu Testzwecken auch für einen PC (32Bit Linux) compilieren und ausführen. Ein paar Fehler sind noch vorhanden, die aber eher selten auftreten. Das Hauptproblem ist, dass eigentlich zu wenig Heapspeicher zur Verfügung steht. Wenn niemand konkrete Fragen/Anmerkungen hat, ist das mein letztes Post in diesem Thread :-) Viel Spaß.
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.