mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Software SPI


Autor: Christian Betzen (chris001)
Datum:
Angehängte Dateien:
  • spi.bas (950 Bytes, 193 Downloads)

Bewertung
0 lesenswert
nicht lesenswert
Hallo!

Ich bin mich eben mal mit Soft-SPI am beschäftigen.
Aber es will noch nicht so ganz. Im Anhang meine beiden Programme.
Einmal senden und einmal empfangen.

Gesendet soll das byte x werden, was immer um eins größer wird.

Das soll dann empfangen werden und dann übers LCD angezeigt.
Die Ausgabe im LCD springt nur von 0 nach 255 und zurück!

Danke schon mal!

Christian

Autor: Lothar Miller (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Beim SPI-Slave hat der Slave-Select-Eingang eine sehr elementare 
Bedeutung: Er synchronisiert die Übertragung eines Wortes. Was sagt die 
Doku dazu, dass du da ss=none schreibst?

Autor: Christian Betzen (chris001)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
A! Ja!

So hab ich geändert. Geht aber immer noch nicht!

Autor: Lothar Miller (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Christian Betzen schrieb:
> So hab ich geändert. Geht aber immer noch nicht!
Wenn deine Verdrahtung passt, dann brauchst du jetzt so langsam ein 
passendes Messgerät: ein Oszilloskop wäre nicht ohne...

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hmm
Ich weiß ja nicht, wie sehr du der BASCOM Doku traust.
Aber in der Online Help hab ich bei CONFIG SPI  das hier gefunden
SPI = SOFT

for software emulation of SPI, this allows you to choose the PINS to use. Only works in master mode.

    = HARD for the internal SPI hardware, that will use fixed pins of the microprocessor.

Das 'only works in master mode' macht mich stutzig.
Und ich denke mal, wenn überhaupt jemand weiß, ob und wie das geht, dann 
ja doch wohl der Hersteller.

Autor: Christian Betzen (chris001)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Lothar!

Oszilloskop hab ich aber leider keins.
Ich gehe aber davon aus das die Verdrahtung i.o. ist weil wenn ich den 
Master
auf reset lege hört das umspringen der Anzeige auf. D.h. es wird nichts 
mehr gesendet.

Aber nochmal schnell zu der sache mit dem ss=none!

Im Slave steht jetzt:

Config Spi = soft , Din =Pinb.0 , Dout =Portb.1 , Ss =Portb.2 ,  Clock 
=Portb.5

und im Master steht:

Config Spi = Soft , Din =Pinb.7 , Dout =Portb.6 ,ss = none, Ss =Portb.2 
, Clock =Portb.5

Ist das so OK?

Ich habe die Pins 1 zu 1 verbunden. Also din an din, dout an dout ss an 
ss und clock an clock.

Autor: Christian Betzen (chris001)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Karl Heinz!

Stimmt. D.h. ich muss beim Slave die pins der Hardware SPI benutzen und 
die Zeile mit dem Config SPI kann ich mir hier sparen.

Oder?

Die Bascom Hilfe ist schon ok. Aber wenn man nicht weiß wie es geht steh 
ich da schon mal auf m Schlauch!

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.