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
Hmm. Ich weiß jetzt nicht, was genau diese Spiout Funktion nun macht, aber eventuell hilfts ja, einfach mal ein paar ms Pause (testweise) Nach jedem Byte einzufügen? Kenne mich mit BASCOM leider nicht aus.
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
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
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.