PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Mehrere AVRs ansteuern



Netrunner
11.03.2005, 16:07
Hallo zusammen.

Ich hab mehrere Platinen gebaut auf denen At90S2313 AVRs selbstständig Programme ausführen.
Nun möchte ich diese Programme per PC-Software starten und beenden können, weis aber nicht was ich dazu benötige.

Einfach nur Spannungsversorgung und Reset über PC schalten, oder ein Bus-System (z.B: I2C ???)

Bin für jede Hilfe dankbar!

Netrunner

Hellmut
11.03.2005, 16:46
Es gibt doch bei Robotikhardware die Baugruppe PC & I2C Schnittstelle. Damit ist dein Thema erledigt

madcyborg
11.03.2005, 16:47
das sicherlich einfachste wäre natürlich per relaiskarte+dazugehöriger software die betriebsspannung an oder auszuschalten...oder eben den reseteingang. ist natürlich nicht besonders elegent...was machen die avr's denn? denn wenn man was mit nem bus-system macht kann man naürlich gleich auch noch daten auf dem pc sammeln...

engineer
11.03.2005, 17:23
Naja, wie wäre es, einen Eingang abzupollen, dem man einen Startcode sendet? So mache ich das immer ,wenn ich eine Mikrocontrollerbaugruppe konfigurieren will. Der AVR liest einen Kommunikationspin und dekodiert von eine PC aus gesendete Zeichenketten in binär oder ASCII. Damit bekommt der Controller gesagt, was er zu tun hat. So kann man das Sendeformat einer Messwerteinheit von "schnell" auf "genau" umstellen und Vieles mehr.

Ich hoffe, das reicht als Denkanstoss ?

Netrunner
12.03.2005, 10:59
Die AVRs geben nur Lichtkombinationen aus (z.B. Lauflichter, Flackern, "zufälliges" Ein/Aus-Schalten, ...)

Das mit der Relaiskarte klingt ganz gut. Die Lichtschaltprogramme sollen einfach nur anlaufen wenn die Software es ihnen sagt und wieder aufhören wenn die Software sie stoppt.

Danke für die Tipps,
Netrunner

engineer
12.03.2005, 13:59
Dann würde ich eine individuelle IR-Sendestrecke nehmen.

Netrunner
15.03.2005, 15:30
Ich hab mir gedacht ich könnt ja ein I2C interface bauen, das einfach bei Ausgabe der jeweiligen Adresse den Reset des Betreffenden Chips toggled. (ist nämlich flexibler erweiterbar als die Relais-Karte)

Da der AT90S2313 ja kein Hardware-I2C-Interface hat hab ich mir überlegt einen PCF8574 zu verwenden.

Hier mal ein Schaltplan, wie sowas an der Seriellen aussehen könnte.
bitte um Anregungen, ob das so funktionieren kann.

http://home.pages.at/retw/bild01.gif

Danke, Netrunner

engineer
15.03.2005, 17:35
Warum so kompliziert? Wenn das wired - also mit verdrahteter Technik - funktionieren darf, dann reicht eine einfache Strenverbindung, an der alle lauschen. Ausgangsseitig ist das nur ein Pin, und auch eingangsseitig bei den >AVRs hört jeder nur einen Pin ab. Ein Protokoll kannst Du Dir selber überlegen : Einfach eine unique Zeichenfolge für den der AVRs definieren, bevor ein Code (ein, aus, x,y,) kommt. Ein spezielles Protokoll braucht man nicht.

Netrunner
16.03.2005, 11:46
Stimmt, aber in den AVRs laufen teilweise Programme ab, die alle Timer und Interrupts bereits verwenden. Die meisten Abläufe sind außerdem (weil ja durch Lichtlein ausgegeben) recht zeitkritisch, soll heißen dürfen nicht unterbrochen werden um mal kurz zu sehen, was da für ein Befehl ankommt.
Außerdem soll ja nicht das Progamm am AVR gesteuert werden, sonder einfach der ganze Chip an bzw. aus.

Ich hab im Netz jetzt eh grad ein nettes I2C Com-I/O-Board zum Nachbauen gefunden, das in VB (das kann ich wenigstens schon) angesprochen wird .
Werds mal aufbauen und sehen was man damit so alles schönes machen kann!

bis dann, Netrunner

Ich89
16.03.2005, 13:24
Ein link zu diesem Bord würde mich interessieren!!
wäre nett wenn du den ma posten könntest
thx
Ich

engineer
16.03.2005, 18:25
Dann würde ich einfach asynchron einen Pin im Auge behalten und enige Wechsel der Flanke je Sekunde als Signal werten.

Netrunner
17.03.2005, 07:54
Der Link ist:
http://320027039581.bei.t-online.de/elektronik/i2c_startup_board/i2c_bus_startup_board.htm