Spiout- Fehler bei Bascom

OP #345717
Lesenswert?
• ▲
▼
m454fjjuHallo,

ich habe eine merkwürdiges Problem. Mein programm schickt mehrere Bytes
über den SPI- Bus zu einem Funkmodul. Jedoch sendet Bascom das zweite
Byte nie richtig aus. Anstatt der 8 kommt immer nur eine 0. Alle
anderen Bytewerte stimmen (würde auf dem Oszi geprüft).
Der Teil meines Codes:

A(1) = &H66
Spiout A(1) , 1
Waitus 20

A(1) = &H08
Spiout A(1) , 1   ------------ dieses Byte wird nie richtig gesendet
Waitus 20

A(1) = &H00
Spiout A(1) , 1
Waitus 20

Der MCU ist dabei Master und springt nie in den Slavebetrieb. Der Takt
ist zu sehen, nur der Bytewert stimmt nicht überein. Hat jemand eine
Ahnung woran das liegen könnte?
Zudem hört Bascom einfach nach einer Weile mit dem SPI-Bus auf zu
senden. Also eine dauerhaften senden ist auch nicht möglich.

Danke schon mal für die Antwort
mfg
Alex
Gast #345719
Lesenswert?
• ▲
▼
Hi,
mmm.  Seltsam. SPI funktioniert eigentlich recht gut mit Bascom.

Ist Variable A auch als Byte definiert?

Was passiert denn bei :

Spiout &H66 , 1
Waitus 20
Spiout &H08 , 1
Waitus 20
Spiout &H00 , 1
Waitus 20

oder bei
A(1)=&H66
A(2)=&H08
A(3)=&H00
Spiout A(1) , 3

Alternativ mal den Befehl Shiftout versuchen.

Gruß
PeterK
www.display3000.com
Gast #345720
Lesenswert?
• ▲
▼
Hi,
was für ein Funkmodul benutzt du denn?

mit einem CC1100 von chipcon und einem mega8 geht das z.b. sehr einfach
so...

'init
Config Spi = Hard , Interrupt = On , Data Order = Msb , Master = Yes ,
Polarity = Low , Phase = 0 , Clockrate = 4 , Noss = 1

Config Portb.2 = Output 'port für CS = chip select pin
Csn Alias Portb.2       'CSN is SPI enable pin
Enable Interrupts

Spiinit                 'inits the SPI interface
Set Csn                 'set CSN high as soon as possible
.
.
.
.
Reset Csn
Waitus 1
Spiout Spi_instr , Spi_bytes
Waitus 1
Set Csn
Waitus 1
.
.
.

fertig

cu

chris

Antwort schreiben

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.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.