huhu nochmal
ich hab nu wirklich alles aufgesaugt was ich gefunden habe aberleider bleibt mir der zugriff auf meine sd karten immer noch verwehrt
mittlerweile hab ich eine platine gebaut mit den level shiftern von ulrich radig
cs = portb.2
di = portb.3
do = portb.4
sck = portb.5
und mir folgenden code zusammenkopiert
und als antwort kommt immer 225 egal ob ne karte drin is oder nichCode:$regfile = "m8def.dat" $crystal = 16000000 $baud = 19200 Initlcd Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Portd.5 , Db5 = Portd.6 , Db6 = Portd.7 , Db7 = Portb.0 , E = Portc.2 , Rs = Portd.4 Config Lcdbus = 4 Cls Cursor Off Noblink Config Pinb.1 = Output Led Alias Portb.1 Enable Interrupts Config Clock = Soft Config Date = Dmy , Separator = . Config Pinb.2 = Output Mmc_cs Alias Portb.2 Set Mmc_cs Config Pinb.2 = Output Spi_ss Alias Portb.2 Set Spi_ss Config Spi = Hard , Interrupt = Off , Data Order = Msb , Master = Yes , Polarity = High , Phase = 1 , Clockrate = 4 , Noss = 1 Config Serialin = Buffered , Size = 80 , Bytematch = 13 Spiinit Const Cperrdrivereset = 225 ' Error response Byte at Reset command Const Cperrdriveinit = 226 ' Error response Byte at Init Command Const Cperrdrivereadcommand = 227 ' Error response Byte at Read Command Const Cperrdrivewritecommand = 228 ' Error response Byte at Write Command Const Cperrdrivereadresponse = 229 ' No Data response Byte from MMC at Read Const Cperrdrivewriteresponse = 230 ' No Data response Byte from MMC at Write Const Cperrdrive = 231 Const Cperrdrivenotsupported = 232 ' return code for DriveGetIdentity, not supported yet Const Cmmc_soft = 0 Waitms 1 ' Wait some time before initialising MMC/SD Dim Gbdriveerror As Byte ' General Driver Error register Dim Gbdriveerrorreg As Byte ' Driver load Error-Register of HD in case of error Dim Gbdrivestatusreg As Byte ' Driver load Status-Register of HD on case of error Dim Gbdrivedebug As Byte Dim CR_Received as Byte Dim Empfangsstring As String * 20 Dim Mmc_error As Byte $lib "MMC.LIB" $external _mmc Gbdriveerror = Driveinit() Print "los gehts :)" DO Locate 1 , 1 : Lcd "gbde" Locate 2 , 1 : Lcd Gbdriveerror Locate 1 , 6 : Lcd "mmc" Locate 2 , 6 : Lcd Mmc_error Locate 1 , 10 : Lcd "str" Disable Interrupts If Cr_received = 1 Then Cr_received = 0 Enable Interrupts Input Empfangsstring Locate 2 , 10 : Lcd " " Locate 2 , 10 : Lcd Empfangsstring Else Enable Interrupts End If LOOP End Serial0charmatch: CR_Received = 1 Return
kann von euch sdkartenlesenden einer den fehler erkennen den ich da mache ?







Zitieren
Lesezeichen