Ich bin neu hier in diesem Forum; also erst einmal ein freundliches "Hallo allerseits". Meine Frage ist eigentlich schon beantwortet, aber um sicher zu gehen, ob ich das Referenzmanual und andere Beiträge richtig verstanden habe, habe ich folgende Frage: Ist es möglich den TWI-Bus des AT91SAM7S256 als Slave in einem Multi-Master-System zu betreiben ? Nach dem Manual geht das scheinbar nicht, da dieser nur selbst als Master arbeitet. Auch einen Absatz über Arbitrierung vermisse ich. Es scheint also nur die Möglichkeit zu geben, am AT91SAM7S n Slaves zu betreiben, keine Weiteren Master, keinen Slavebetrieb. Aber vielleicht habe ich ja was übersehen? Vielen Dank im voraus Wolfgang
Hallo, Es geht tatsächlich nicht und, schlimmer noch, sogar der Master-Nodus ist total buggy. Lass am besten die Finger vom AT91SAM7 und nimm stattdessen einen LPC2xxx. Bei den LPC's ist manches zwar nicht so benutzerfreundlich gelöst, aber die Dinger funktionieren wenigstens anstandslos.
Hallo, der Master-Mode beim SAM funktioniert wunderbar. Es gibt aber Probleme mit den Status-Bits bei einem NACK (siehe Errata). Jeder ARM7 hat seine Eigenheiten. Am besten immer vorher die Errata lesen. Ich kann dir den SAM mit seinen DMA Kanälen nur empfehlen !
> Ich kann dir den SAM mit seinen DMA Kanälen nur empfehlen !
Ja, das DMA beim SAM7 ist wirklich gut, kein Vergleich mit dem
super-umständlichen DMA (und den nur 2 Kanälen) der NXP LPC's. Aber
trotzdem, fast jedes Peripheral der SAM7-Typen hat irgendwelche Probleme
und ich frage mich, wieso Atmel so einen halbfertigen Controller
überhaupt auf den Markt schmeisst. Dass der IIC-Slave Modus gar nicht
geht, ist ohnehin ein Unding!
Für Atmel ist das kein Vorzeigeprozessor, richtig. Dafür sind die Nachfolger mit IIC M/S/MM ausgestattet. Ich bin bisher immer ganz gut mit dem SAM7S gefahren, als nächstes werde ich einen cortex-m3 quälen. Da hat ARM in der 7er Sparte nochmal nachgelegt ...
Vielen Dank für die Antworten. Da muss ich mir wohl was anderes suchen. Allerdings finde ich das schon ein bisschen armselig für Atmel. Mit den AVRs war ich immer sehr zufrieden. Mit NXP habe ich (LPC2138/48) allerdings auch schon negative Erfahrungen im Bezug auf Doku und DMA für USB gemacht. Habe ich leider nie zufriedenstellend hinbekommen aber was solls. Vielleicht versuch ich es nochmal mit NXP. Gruß Wolfgang
Hi, Ja, das DMA auf den NXP's (ich benutze übrigens die 2378 und 2366'er) ist wirklich übel einzustellen. Aus der Doku geht kaum hervor, wie man es benutzen kann. Transfer-width, Burst Size usw. müssen genau zum Peripheral passen, sonst geht es nicht. Ich hab' mal was angehängt, das dir vielleicht weiterhelfen kann. Ansonsten sind die LPCs wirklich gute Controller. Man muss sich mehr mit ihnen auseinandersetzen und mehr 'von Hand' machen als vielleicht bei anderen Controllern, aber wenn man's erstmal hinbekommen hat, dann läuft alles ohne zu zicken.
Jeder Controller hat Fehler, ist halt mal so. Gute Programmierer können damit leben. Nur weil es bei LPC kein langes Errata Sheet gibt, heißt es noch lange nicht, dass der keine Fehler hat!!!! Atmel steht eben dazu. Ich will jetzt aber definitiv keine Grundsatzdiskussion losbrechen welcher der beiden Controller besser ist. Mich nerven schon Beitrage wo es PIC vs. AVR geht. Einfach ausprobieren was einem mehr liegt und fertig. Ich verwende den AT91SAM7S256 und ich hatte bis jetzt absolut keine Problem. Dennoch, Errata Sheet lesen wäre schon sinnvoll.
@Thomas P. Ja nu, die Grundsatzdiskussion wäre vielleicht zu führen, ob es Sinn macht, Beiträge wie Deinen zu posten. Aussagen wie "Ausprobieren, welcher einem besser gefällt" sind irgendwie redundant. Es geht in diesem Fall ja um die Möglichkeiten der einzelnen Prozessoren und wie sich diese mit den Anforderungen am besten decken. Also meine Anforderung an einen Prozessor ist in diesem Projekt die Fähigkeit , den TWI-Bus im Slave-Modus in einer Multi-Master-Umgebung betreiben zu können. @Peter Vielen Dank für das pdf. Gruß Wolfgang
Naja wenn du lesen könntest dann würdest solche Fragen auch nicht stellen Hier der relevante Ausschnitt: 29.5.2 Modes of Operation The TWI has two modes of operation: • Master transmitter mode • Master receiver mode The TWI Control Register (TWI_CR) allows configuration of the interface in Master Mode. In this mode, it generates the clock according to the value programmed in the Clock Waveform Generator Register (TWI_CWGR). This register defines
> Nur weil es bei LPC kein langes Errata Sheet gibt, heißt es noch lange > nicht, dass der keine Fehler hat!!!! die gibt es natürlich auch: http://www.standardics.nxp.com/support/documents/microcontrollers/pdf/errata.lpc2366.pdf Aber NXP arbeitet wenigstens an der Beseitigung dieser Fehler. Das Problem mit dem MAM und der Beschränkung auf 60MHz sind, glaube ich, schon nicht mehr vorhanden. Dagegen ich weiß nicht, ob Atmel jemals vor hat, den AT91SAM7s einen funktionierenden IIC Slave-Modus zu spendieren.
> schon nicht mehr vorhanden. Dagegen ich weiß nicht, ob Atmel jemals vor > hat, den AT91SAM7s einen funktionierenden IIC Slave-Modus zu spendieren. Der SAM7S hat nur den Master-Mode. Wo steht bitte das der SAM7S einen nicht funktionierenden Slave-Mode hat ?
Hier: http://epu.ref.nstu.ru/files/downloads/softndocs/Atmel/ATMEL2_2003/dyn/resources/prod_documents/doc1761.pdf Eine kaputte Version davon steckt offensichtlich in den AT91SAM7s
Nunja, TWI könnte man ja noch u.U. softwaremäßig nachbilden. Nicht so besonders toll, aber geht.
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.