www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Grasshopper SPI verwenden


Autor: Dirk S. (fusebit)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Moin Leute,

ich suche nun schon seit geraumer Zeit im Netz umher, aber scheinbar 
fehlt mir mal wieder eine so grundlegende Info, dass niemand dazu eine 
Frage stellt :-)

Ich möchte einen ADC über SPI an den Grasshopper anschließen. Dazu 
müsste ich doch ein SPI Device haben welches ich dann öffnen kann. 
Standardmäßig ist da aber keines. Also muss es in den Kernel, nur wie?

Mit make menuconfig finde ich nirgends die Option ein SPI Treiber 
einzubauen. Wie bekomme ich denn nun mein SPI-Device oder bin ich 
komplett auf dem Holzweg?

Grüße

Dirk

Autor: Claude Schwarz (claudeschwarz)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Eine Möglichkeit wäre "spidev" ,
daß wird in der Kernel Config angeschalten.

Dazu musst Du in die Kernel Config unter :
Device Drivers->SPI->spidev aktivieren.
Ausserdem muss noch in der /arch/avr32/boards/grasshopper/setup.c einen 
spi_info Struct , sofern noch nicht da, angelegt werden. Dort kommt dein 
"spidev" mit allen dazugehörigen Parametern wie Chipselect,SPI Mode und 
SPI Frequenz rein.
Ganz unten in setup.c ist noch at32_add_devices_spi (oder so ähnlich) , 
das Initalisiert dann den SPI mit den Infos aus spi_info.
Der spidev Treiber meldet sich nach dem "proben" durch das SPI Subsystem 
als Platform Driver an und erzeugt die /dev und /sys Einträge.
Alles auch unter /Documentation/spi und /Documentation/driver-model 
nachzulesen.
Da liegen auch Beispiele für ein spidev "Gegenstück" rum.

Die andere , aber komplexere , möglichkeit ist einen Platform Driver für 
deinen ADC zu schreiben. Dieser wird dann ebenfalls über das spi_info 
Struct "geprobt". Dafür hast Du selber die Freiheit was dir der Treiber 
in den Userspace übergibt.

HTH , muss los Simpsons fangen an :-)

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.