Hallo NG, kann mir jemand sagen, was man macht, wenn man an seinem MC mehr I/Os braucht (so um die 32 3,3V + evtl. 5V tollerant)? Ich hab mal irgendwo was gesehen, das über SPI funktioniert. Wie schnell kommt man den da an einen PORT-Zustand ran, bzw. wie schnell (wieviele Zyklen) kann man einen PORT auf High oder Low setzen? Am liebsten würde ich das Teil für AT91SAM7S256 nehmen. Aber das dürfte wg. SPI ja eigentlich egal sein, was für einen MC man nimmt? Viele Grüße und Danke für jeden Hinweis (oder Link :-). Peter
>Ich hab mal irgendwo was gesehen, das über SPI funktioniert. SPI Portexpander lautet dein Suchwort. > Wie schnell kommt man den da an >einen PORT-Zustand ran, bzw. wie schnell (wieviele Zyklen) kann man >einen PORT auf High oder Low setzen? Hängt vom SPI Takt ab.
Wenn es auf jeden Takt ankommt, würde ich parallele Bus-Register nehmen. Ein Puls auf Enable und die Daten sind da.
jetzt hab ichs wieder gefunden: http://www.nxp.com/documents/data_sheet/PCA9505_9506.pdf z.B. auf: http://www.tinyclr.com/downloads/Component/Broch_FEZ_IO40.pdf gibts da was vergleichbares fertiges? sind $44 gerechtfertigt? Nochmal wegen der Geschwindigkeit: Muss ich da immer alle Bits "abholen" und auswerten?
>Nochmal wegen der Geschwindigkeit: Bei I2C würde ich mir keine Gedanken um die Geschwindigkeit machen. Diesen scheiss einfach vergessen und SPI nehmen;) >Muss ich da immer alle Bits "abholen" und auswerten? Nö, letzten Zustand im RAM merken, ändern und rüberbeamen. Ach, ich vergass, du willst ja kein RAM benutzen;) Buhahaha!
okok, danke für die Antwort, aber vielleicht ein wenig langsamer für mich zum Verständnis: Momentan ist es ja so, dass ich die Pins über GPIO auslesen kann. Sowas in der Art hätte ich mir dann auch vorgestellt. Hintergrund: Ich möchte gerne noch ein Display an den ARM anschließen. Momentan habe ich auch nur 2 Taster und 2 LEDs dran. Nun könnte ich natürlich die Datenleitungen des SID doppelt belegen, da ja sowohl das Display als auch der SID "CS" haben. Das gefällt mir aber nicht so gut. Es gibt ja noch so viele Dinge, die denkbar wären (z.B. Drehcodertaster oder wie man die Dinger nennt). Deswegen auch die Frage nach der Geschwindigkeit: wenn ich den ARM mit ca. 47MHz am Laufen habe, wieviele Takte würden verbraten, um z.B. einen beliebigen PIN auf High oder Low zu setzen? Dauert es für den Ersten genau so lange, wie für den Letzen? Ich glaube im Endeffekt suche ich sowas mit Datenleitung und Adressleitung?
Ist sowas OK? http://www.reichelt.de/?ACTION=3;ARTICLE=90047;PROVID=2402 Hab im Datenblatt gesehen, dass SPI bei max. 10MHz liegt. Was bedeutet das?
Peter Pippinger schrieb: > Ist sowas OK? > > http://www.reichelt.de/?ACTION=3;ARTICLE=90047;PROVID=2402 Zu teuer. 74HC595 bzw HC597 sind die Standardlösung für sowas. > Hab im Datenblatt gesehen, dass SPI bei max. 10MHz liegt. > Was bedeutet das? Nun ja, Du brauchst pro bit ein Takt, bei 8 Bits sinds 8 Takte, bei 10 MHz kannst Du Dir ja ausrechnen, wie lange das dauert. Am einfachsten und schnellsten ist es, einen Controller mit mehr Pins zu nehmen. So ein STM32F103 mit 144 Pins erlaubt schon einiges. Oder ein LPC2468 mit 208 Pins. Mehr wirst Du als Bastler aber nicht verarbeiten können. fchk
Hallo Frank, ich hatte ja zuerst auch die Idee, dass ich den LPC3131 nehme, da es diesen von Olimex entsprechent nett aufbereitet gibt. Allerdings habe ich noch nie mit JTAG gearbeitet und bin mir nicht sicher, was ich da bestellen muss, damit ich auf win7 (nur USB) entwickeln kann. Wenn bei einem JTAG "ARM" dabei steht, kann ich das dann mit dem LPC3131 verwenden, bzw. mit jedem "ARM"? Grüße Peter
Hi, >Ich möchte gerne noch ein Display an den ARM anschließen. Momentan habe >ich auch nur 2 Taster und 2 LEDs dran. Aha. 4 IOs weg und schon Panik :) >Nun könnte ich natürlich die >Datenleitungen des SID doppelt belegen, da ja sowohl das Display als >auch der SID "CS" haben. Das gefällt mir aber nicht so gut. Es gibt ja >noch so viele Dinge, die denkbar wären (z.B. Drehcodertaster oder wie >man die Dinger nennt). Und warum "gefaellt dir das nicht so gut" ?!?! Das ist mit Abstand die beste Loesung!!! Schnell und keine Extrabauteile. Was will man mehr? Ich nutzt beispielsweise ein LCD (7 IOs), einen PGA2311 (4 IOs) und einen Drehgeber (4 IOs) an einem 8 Bit Port, durch geschickes Verschalten und Multiplexen der IOs. Das klappt wunderbar und ist auch schnell. So schnell wirst du das mit einem Schieberegister, I2C Expander, oder was auch immer nicht hinbekommen. Gruss, Stefan
Peter Pippinger schrieb: > Allerdings habe ich noch nie mit JTAG gearbeitet und bin mir nicht > sicher, was ich da bestellen muss, damit ich auf win7 (nur USB) > entwickeln kann. Wenn bei einem JTAG "ARM" dabei steht, kann ich das > dann mit dem LPC3131 verwenden, bzw. mit jedem "ARM"? Viele LPC-Microcontroller haben einen Bootloader per seriellen Port: Man muß da während Reset eine Taste drücken oder so ähnlich und kann dann mit einem speziellen Tool von NXP über den seriellen Port (USB-nach-seriell Adapter hatte bei mir auch funktioniert) das Flash beschreiben. Debuggen geht darüber aber nicht, dafür wäre JTAG gut, aber debuggen braucht man ja sowieso nicht :-) Kann sein, daß die Bausteine mit USB-Anschluss auch einen USB-Bootloader haben, sodaß man keine weiteren USB-seriell-Adapter braucht.
Peter Pippinger schrieb: > Hallo Frank, > > ich hatte ja zuerst auch die Idee, dass ich den LPC3131 nehme, da es > diesen von Olimex entsprechent nett aufbereitet gibt. > > Allerdings habe ich noch nie mit JTAG gearbeitet und bin mir nicht > sicher, was ich da bestellen muss, damit ich auf win7 (nur USB) > entwickeln kann. Wenn bei einem JTAG "ARM" dabei steht, kann ich das > dann mit dem LPC3131 verwenden, bzw. mit jedem "ARM"? Im Prinzip ja, aber: ARMs gibts in verschiedenen Versionen: ARM7, ARM9, Cortex M0/M1/M3,... Und: Deine Entwicklungsumgebung muss diesen Adapter können. Schau nach, was für Adapter unterstützt werden und kaufe dann einen aus der Liste. fchk
Frank K. schrieb: >> Allerdings habe ich noch nie mit JTAG gearbeitet und bin mir nicht >> sicher, was ich da bestellen muss, damit ich auf win7 (nur USB) >> entwickeln kann. Wenn bei einem JTAG "ARM" dabei steht, kann ich das >> dann mit dem LPC3131 verwenden, bzw. mit jedem "ARM"? Oder, was für Dich einfacher ist: Nimm einen 100 Pin PIC32MX. Dazu hat Microchip den passenden Compiler für Dich, den passenden Debugger, die passende IDE, die passenden Bibliotheken, und die passenden Eval-Boards. Alles passt nahtlos zusammen, alles ist aufeinander abgestimmt, aus der Ecke wirst Du dann keine Probleme mehr haben. Und Du hast Support aus einer Quelle, und der Microchip-Support ist vergleichsweise gut. Als Anfänger wirst Du so deutlich schneller vorankommen. Der MIPS-Kern im PIC32 ist mindestens genauso leistungsfähig wie die ARM-Konkurrenz. fchk
jetzt habe ich gerade bei rs folgendes gesehen: http://de.rs-online.com/web/search/searchBrowseAction.html?method=getProduct&R=7141707# aber irgendwie komm ich nicht dahinter, was sich hinter diesem Angebot verbirgt. Gibts da ne Herstellerseite? Hab auf Anhieb nichts gefunden...
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.