Hallo, Im Rahmen eines Projektes wollte mit einem Atmega644 einen digitalen Potentiometer (MCP42010) über SPI ansteuern. Den µC Programmiere ich über Bascom. Nun habe ich ein kleines Programm geschrieben um nur den Poti testweise anzusteuern. '______________ CLK an SCK SDI an MOSI CS an SS SDO an MISO Reset an Reset SHDN an 5v '______________ ' SPI Test '______________________________________________--- $regfile = "m644def.dat" 'Atmega 644 $crystal = 16000000 '16 MHz $hwstack = 32 $swstack = 10 $framesize = 40 Dim Potico As Byte Dim Pot As Byte Potico = &B00010011 'Commandbytes Pot = &B11111111 'Potiwert Config Portb = Output Cs Alias Portb.4 Config Spi = Hard , Data Order = Msb , Master = Yes , Polarity = High , Phase = 0 , Clockrate = 4 , Noss = 0 Spiinit Do Cs = 0 Spiout Potico , 1 Spiout Pot , 1 Cs = 1 Wait 2 Loop End nun habe ich das Problem das iwie der Poti nichts macht, der Schleifer bleibt immer in Mittelposition.
Mache aus Spiout Potico , 1 Spiout Pot , 1 mal Spiout Potico(1) , 1 Spiout Pot(1) , 1 Habe dies bisher nur so gemacht. Prüfe mal die Ausgänge mit dem Oszi. Ist dein Config SPI richtig? Ggf. ist auch Enable SPI erforderlich. W.
:
Bearbeitet durch User
Danke für die schnelle Antwort, habe das Programm geändert, doch es tut sich immer noch nichts, habe die spi ausgänge mit einem oszi gemessen, es besteht kein CLK sowie MOSI Signal am µC. CS wird aber immer getoggelt. gruß
Wenn Du CS per Code kontrollieren möchtest, dann konfiguriere Noss = 1 Ansonsten sollte da an CLK und MOSI etwas rauskommen, allerdings muss man den Burst von insgesamt 4µs nach einer Pause von 2 Sek auch erwischen.
Danke MWS, habe nun keine Sekunde Wartezeit drinne und hab es nochmal am oszi gehalten aber nun im µS bereich mit andere Trigger einstellung. Der µC gibt doch ein clk, cs und miso signal ab, aber der SPI Slave will trotzdem nicht regeln.
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.