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

Re: Assembler Port ansteuern Kategorie: Programmierung Assembler (von Joerg - 23.09.2010 9:42)
Als Antwort auf Re: Assembler Port ansteuern von PeterS - 23.09.2010 9:02
Ich nutze:
C-Control Pro Mega128
> > Ok, ich versuche mal zu erklären.Ich möchte mit dem C-Controler einen
> > 3-achsigen-Drehratensensor über SPI-BUS ansteuern und auslesen.
> > Der Sensor braucht dafür:
> >
> > Clock-Signal
> > Mosi
> > Slave Selekt 1
> > slave Selekt 2
> > slave Selekt 3
> >
> > Die Daten werden dann sofort vom C-Controler über USB an den PC geschickt.
> > Das Zeitkritischeverhalten brauche ich da das Mosi-Signal und das Clock-Signal
> > "Zeitgleich" am Sensor High oder Low sein sollen.
> >
> >
> > Clock -->  __|##|__|##|__|##|__|##|__
> >
> > Mosi -->   _____|####|________________
> >
> >        
> > Wenn ich den Mosi für ein Bit High setzen will mache
> > ich das nach dem das letzte Clock-Signal Low gesetzt wurde.
> >
> > OUPUT6_OFF();  // Clock
> > OUPUT5_ON();   // Mosi
> >
> > Die Zeit zwischen den beiden Signalen dauert 100 Millisekunden und
> > für meinen Sensor zu lange. Da bei Flanke eingelesen wird.
> >  
> > Schalte ich das Mosi-Signal auf Low am Ende vom Clock-Signal dauert es zwischen Mosi- und
> > Clock-Signal wieder 100 Millisekunden.
> >
> > Deshalb habe ich mir gedacht, dass man mit
> > Inline-Assembler erreichen kann, dass das Mosi-Signal weniger Zeit braucht als die
> > 100 Millisekunden. Ã?ber Miso empfange ich das Status-Byte des Sensors.In dem steht, dass
> > mein Mosi-Signal nicht richtig empfangen wurde. Gleichzeitig brauche ich weitere Ports der
> > MiniStation um die Slave Selekts durch zu führen. Ich schaffen es mit dem C-Code etwa
> > 15 mal pro Sekunde die Drehraten zu empfangen. Das reicht mir für die weitere Verrechnung im PC.
> >
> > Sorry, ich komme beruflich aus einem anderen Bereich, kenne mich mit Prozessoren und Controlern
> > nicht aus, noch kenn ich deren Möglichkeiten. Aber mein Projekt möchte ich zum laufen bringen.
> >
> >
> > MFG Tito
>
> Hallo Tito,
>
> am einfachsten nimmst Du die eingebaute SPI Schnittstelle, dann brauchst Du Dich um die
> Timings nicht zu kümmern. Einfach MISO, MOSI, SCLK und die benötigten Chip Select Leitungen
> verbinden. Hinweis: Solltest Du ein Applicationboard benutzen, bitte die IDE im seriellen
> Modus betreiben, da der USB AnschluÃ? des Applicationboard sonst selbst SPI benutzt.
>
> Ã?ber die eingebauten SPI Bibliotheks Funktionen kannst Du dann direkt mit Deiner Peripherie
> kommunizieren.
>
> Gruss Peter

Hallo Peter,

korrigiere mich, wenn ich hier falsch liege aber hat denn die Mini Station überhaupt SPI?
In der Bedienungsanleitung steht darüber nichts und im Schaltplan laufen die Signale auch ins lehre.

Grü�e Jörg



    Antwort schreiben


Antworten:

Re: Assembler Port ansteuern (von PeterS - 23.09.2010 10:35)