Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - Zum C-Control-I-Forum - Zum C-Control-II-Forum

Re: I²C-Bus Kommunikation Kategorie: I²C-Bus (von Franz-Peter - 3.10.2013 10:23)
Als Antwort auf Re: I²C-Bus Kommunikation von Torsten - 2.10.2013 19:04
Ich nutze:
C-Control Pro Mega32, C-Control Pro Mega128, CC-Pro 128 Application Board
> > > > > Hallo Leute!
> > > > >
> > > > > Ich hab folgendes Problem, ich würde gern zwei Mini Stationen �ber I²C- Bus miteinander interagieren
> > > > >  lassen!! Nur komm ich auf keine Idee bezüglich der Adressen und der Master Definition damit die 2 mit
> > > > >  einander Sprechen!
> > > > > Hab schon die Komplette Manual der Mega 32 Pro durch und auch schon die bespiel Programme etwas
> > > > > umgeschrieben aber es will einfach nicht Funktionieren!!
> > > > > Ich hoffe ihr könnt mir bei einem neuen Denkansatz helfen, vielleicht seht ihr ja das Problem von
> > > > > einer anderen Seite!!
> > > > > � Müsste doch normal über den I²C-Bus Funktionieren oder?
> > > > > Hab in den Manuals und Datasheets von AMTEL  Mega 32 auch keine Adresse gefunden mit der ich die
> > > > >  Station ansprechen könnte!!
> > > > > Link zu den Datasheet:
> > > > > AB Seite 177!!
> > > > > http://www.atmel.com/Images/doc8155.pdf  
> > > > >
> > > > > Danke schon im Voraus!!
> > > > >
> > > > > Sorry für eventuelle Fehler und â?? nichtâ?? Verständnis!!
> > > >
> > > > Hallo,
> > > > dazu müsstest Du eine Station als I²C Master, und die andere als I²C Slave betreiben. Die Atmel
> > > > Controller können das zwar prinzipiell. Von der CControl wird diese Betriebsart aber nicht
> > > > unterstützt.
> > > > Ich stand vor einiger Zeit auch vor dem Problem 'intelligente' Peripherie über I²C anzuschliessen
> > > > und bin dann für die Slaves auf die direkte Programmierung mit AVR Studio umgestiegen.
> > > > GruÃ?
> > > > Franz-Peter
> > > >
> > > >
> > > > Danke!!
> > > > hab mir das jzt mal Instaliert braucht man dafür eine andere Schnittstelle (z.B. RS232 oder RJ45)?
> >
> > Meinst Du für das AVR Studio? Da geht das nicht so einfach wie bei der CControl. Da braucht man einen
> > extra Programmer für (und einen entsprechend herausgeführten ISP-Anschlu� an der Hardware ).
> > Die gibt es in unterschiedlichen Ausbaustufen. Rein für's programmieren sind sie verhältnismä�ig
> > billig. Wenn Du auch  debuggen willst, wird's teurer und Du brauchst noch einen zusätzlichen
> > AnschluÃ? am Controller (JTAG-Interface).
> > Man kann auch nicht wahlweise mit AVR Studio oder CControl programmieren. Um eine MEGA32 oder
> > MEGA128 über AVR zu programmieren, musst Du erst den Chip komplett löschen - und damit ist auch
> > der Boot-Lader weg. Und da gibt's kein zurück. Du hast dann auch keinen Interpreter mehr, der dir
> > doch allerhand Arbeit abnimmt. Du bist dann für jedes Bit im Controller selbst zuständig.
> > Das will also alles gut überlegt sein.
> > Ich habe deshalb die Peripheriebausteine mit 'nackten' Atmels komplett selbst gebaut.
> > GruÃ?
> > Franz-Peter
> >
>
> Hallo Franz-Peter und "It's ME"
>
> währe es nicht auch denkbar die I2C-Schnittstelle der
> Slave-Mini-Station mit einem Assembler-Aufruf zu programmieren.
> Die Master-Mini-Station signalisiert die Kommunikations-
> anforderung über einen Externen-Alarm (PortD.3) dem Slave
> welcher dann in dem ASM-Aufruf springt. Natürlich hängt
> auch viel davon ab was der Slave noch für Aufgaben erledigen
> muÃ? und welche Art von Daten ausgetauscht werden sollen.
>
> GruÃ? Torsten

Hallo Torsten,
das hatte ich auch schonmal überlegt. Um das aber vernünftig zu realisieren braucht man Interrupts
im Assembler. Das war vor längerer Zeit hier schonmal ein Thema, ist dann aber im Sande verlaufen.
Die Kommunikationsanforderung über einen externen Interrupt zu signalisieren ist da sicher ein
Notbehelf. Bedeutet aber auch, dass ab da bis zum Ende der Datenübertragung der Slave für andere
Aufgaben komplett blockiert ist.
Ausserdem fragt sich natürlich, wie's bei "It's ME" mit Assemblerprogrammierung aussieht ;-))

GruÃ?
Franz-Peter


    Antwort schreiben


Antworten: