- fchao-Sinus-Wechselrichter AliExpress         
Ergebnis 1 bis 8 von 8

Thema: 12-Bit aus SPI in Word speichern

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Robotik Einstein Avatar von Searcher
    Registriert seit
    07.06.2009
    Ort
    NRW
    Beiträge
    1.715
    Blog-Einträge
    133
    Zitat Zitat von Lord_Vader Beitrag anzeigen
    Jaaa es funktioniert Danke danke danke
    Hier das ergebniss (pwm aus sinuskurve)
    Genug, genug. Hab gar nicht damit gerechnet, daß es so auf Anhieb läuft.

    Mit Bit0 als nicht zubeachtend meinst du bit1? Das ist laut DB das letzte?
    Ja. Meinte das doppelte Bit 1 des ADC Ergebnisses, das an Bitposition 0 von Bytes(2) nach SPIIN steht. Ist aber jetzt ja klar. Wird durch das nach rechts Schieben dann ja entfernt.

    Habe das *256 aber durch ein shift,left,8 ersetzt. Hoffe das ist schneller
    Das shift ist auf den meisten Tinys (wenn nicht sogar auf allen) schneller. Auf dem Atmega8 ist das *256 schneller, da der ATmega8 einen HW-Multiplizierer besitzt. Kannst Du leicht im Simulator überprüfen. *256 ist hier mindestens ca. 25 Prozessortakte schneller als 8 mal nach links shiften.

    Gruß
    Searcher
    Hoffentlich liegt das Ziel auch am Weg
    ..................................................................Der Weg zu einigen meiner Konstruktionen

  2. #2
    Erfahrener Benutzer Robotik Einstein Avatar von Vitis
    Registriert seit
    06.01.2005
    Ort
    Südpfalz
    Alter
    51
    Beiträge
    2.253
    anstatt der Multiplikation oder shiften kannst Du auch einfach 2 Bytevariablen als Overlay über Deine Wordvariable drüber legen, das spart Rechenzeit

    dim Word_Var as word
    dim byte_var (2) as byte at Word_Var overlay

    Die einzelnen Bytes kannst Du dann einfach per byte_var(1)= xyz and 00011111 und byte_var(2)=abcd and 11111110 befüllen
    dann nur einmal den shift Word_Var, right, 1
    Geändert von Vitis (29.12.2014 um 15:50 Uhr)
    Vor den Erfolg haben die Götter den Schweiß gesetzt

  3. #3
    Neuer Benutzer Öfters hier
    Registriert seit
    02.11.2008
    Alter
    37
    Beiträge
    26
    Ahh danke das ist auch nice!

  4. #4
    Unregistriert
    Gast

    Codebeschreibung

    Hallo,
    könnt ihr bitte genauer beschreiben wie ihr der ADC einlest?
    Ich stehe nämlich vor dem Problem den ADC MCP3201 auf einem ATmega 8 einzulesen.
    Könntet ihr bitte beschreiben wie ihr das hinbekommt die 12bit´s einzulesen??
    Danke schon im vorraus.

  5. #5
    Neuer Benutzer Öfters hier
    Registriert seit
    11.05.2014
    Ort
    Weinböhla
    Beiträge
    9
    Es geht auch so:

    Dim Address As Word
    Dim H_Address As Byte At Address Overlay
    Dim L_Address As Byte At Address+1 Overlay

Ähnliche Themen

  1. ADCH und ADCL in WORD-Variable speichern?
    Von RalfP. im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 5
    Letzter Beitrag: 28.09.2009, 19:00
  2. 8 BIT Struktur, aber SPI Befehle 16 BIT lang
    Von The Man im Forum PIC Controller
    Antworten: 5
    Letzter Beitrag: 23.04.2008, 22:38
  3. suche: wurzel aus 8 bytes (aus 64-bit zahl)
    Von nestandart im Forum Assembler-Programmierung
    Antworten: 4
    Letzter Beitrag: 25.04.2007, 21:01
  4. Bytes aus einem Array in eine Word-Variable
    Von Larek im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 14
    Letzter Beitrag: 26.08.2006, 17:44
  5. [ERLEDIGT] Wie aus Lowbyte und Hibyte ein WORD machen (in Bascom)?
    Von Thomas U. im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 7
    Letzter Beitrag: 01.10.2004, 09:01

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

LiFePO4 Speicher Test