läuft das programm so?
ich hab keine SPI komponente da um es zu testen!
[/code]Code:'////////////////////////////////////// ' ' Basic++ ' Controller: C-Control I Unit M2.0 ' Station2 ' Beschreibung: Ansteuerung einer SPI-Komponente ' Datum: 30.11.07 ' '////////////////////////////////////// OPTION CC2.0 DEFINE SLCK AS BIT 'später durch PORT ersetzten DEFINE SDI AS BIT 'später durch PORT ersetzten DEFINE SDO AS BIT 'später durch PORT ersetzten DEFINE CS1 AS BIT 'später durch PORT ersetzten DEFINE data as byte #main init_spi() 'SPI INITIALISIERN spi(12) 'Byte 12 an Bus senden data = spi(0) 'Byte am Bus lesen print data 'gelesenes byte ausgeben END SUB init_spi() 'SPI Initialisieren CS1 = ON 'SPI Slave 1 dekativieren 'CSn = OFF 'ggf. weitere Slaves deaktiveren SLCK = ON 'Clock Initialisieren pause 1 END SUB FUNCTION spi(spiodata as byte [3]) 'R/W auf SPI DEFINE spicount as byte DEFINE spiidata as byte [4] DEFINE spiibit as bit [32] DEFINE spiobit as bit [24] 'letztes Bit aus spiodata [BYTE3] FOR spicount = 0 to 8 nop(200) SLCK=0 'Abfallende Flanke des Clocks nop(100) SDO = spiobit 'SDO Bit Setzen spiodata = spiodata shl 1 'Daten vorbereiten nop(200) spiidata = spiidata shl 1 'Daten vorbereiten SLCK=1 'Steigende Flanke des Clocks nop(100) spiibit = SDI 'Daten Einlesen NEXT RETURN spiidata END SUB SUB nop(nop_time as byte) 'Prozessorwartezeit DEFINE nop_timecounter AS Byte FOR nop_timecounter = 1 to nop_time) NEXT END SUB







Zitieren

Lesezeichen