- MultiPlus Wechselrichter Insel und Nulleinspeisung Conrad         
Seite 2 von 2 ErsteErste 12
Ergebnis 11 bis 13 von 13

Thema: Arduino -wofür 16-Bit int?

  1. #11
    Erfahrener Benutzer Robotik Visionär Avatar von oberallgeier
    Registriert seit
    01.09.2007
    Ort
    Oberallgäu
    Beiträge
    8.653
    Anzeige

    LiFePo4 Akku selber bauen - Video
    Zitat Zitat von oderlachs Beitrag anzeigen
    Danke JoeamBerg , wieder was dazugelernt ...
    Ich freu mich ja, wenn ich mal denke, dass ich irgendetwas weiß. Und Du wusstest das ja auch schon mal.

    Im Übrigen ist es nicht so ganz nachvollziehbar, was der Threadersteller meint mit
    ... benutze ja keine RISC-MCU, um sie dann mit ungeschicktem Code zu kastrieren ...
    ... denn in meinem PingPong in C habe ich ja in word-variablen bitweise geschaltet. Das geht recht easy, auch wenn das Compilat dann ein paar Zeilen mehr macht - was solls.

    Hier meine Bitoperation im Word-Feld:
    Code:
          L[rPr]   |=  ((uint16_t)1<<4);    // Setze LEDBit rPr (rechtes Poti)

    Im Einzelnen läuft das so:
    Code:
    ...
     volatile uint16_t  L[20];      // LED-Reihe 1 bis 10, Rest ist Dummy
    ...
    //      Aus dieser Codezeile
          L[rPr]   |=  ((uint16_t)1<<4);    // Setze LEDBit rPr (rechtes Poti)
    
    //        macht der Compiler dann diesen Maschinencode
          L[rPr]   |=  ((uint16_t)1<<4);    // Setze LEDBit rPr (rechtes Poti)
     404: e0 91 b0 00  lds r30, 0x00B0
     408: f0 e0        ldi r31, 0x00 ; 0
     40a: ee 0f        add r30, r30
     40c: ff 1f        adc r31, r31
     40e: ef 54        subi r30, 0x4F ; 79
     410: ff 4f        sbci r31, 0xFF ; 255
     412: 80 81        ld r24, Z
     414: 91 81        ldd r25, Z+1 ; 0x01
     416: 80 61        ori r24, 0x10 ; 16
     418: 91 83        std Z+1, r25 ; 0x01
     41a: 80 83        st Z, r24
    Ciao sagt der JoeamBerg

  2. #12
    Erfahrener Benutzer Roboter Genie Avatar von HeXPloreR
    Registriert seit
    08.07.2008
    Ort
    Bad Bramstedt
    Alter
    45
    Beiträge
    1.369
    Hallo,

    um nochmal auf die Eingangsfrage zurück zu kommen: Das hört sich nach einer Overlay-Technik an, wo mit es dem Programmierer einfacher gemacht werden soll, die beiden Ports abzufragen. Würde ja gut ins Konzept der Arduions passen

  3. #13
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    21.02.2013
    Ort
    Graz
    Beiträge
    211
    Auf Wikipedia les ich grad, dass 8-bit-Prozessoren trotzdem meist 16-bit-Register haben, zur Verarbeitung dann halt 2 Takte brauchen.

    Also so schlimm werden die Tricks nicht sein, die nötig sind um auf 8-Bit-Architekturen mit 16-bit-Zahlen zu rechnen.

Seite 2 von 2 ErsteErste 12

Ähnliche Themen

  1. 16-bit int in 2 8-bit int zerlegen
    Von Christoph2 im Forum C - Programmierung (GCC u.a.)
    Antworten: 22
    Letzter Beitrag: 15.04.2016, 15:21
  2. PollComport(int,char,int) von rs232.h benutzen
    Von pete1612 im Forum Software, Algorithmen und KI
    Antworten: 0
    Letzter Beitrag: 15.04.2012, 21:48
  3. Erste Arduino-kompatible 32-bit-Entwicklungsplattform
    Von Roboternetz-News im Forum Neuigkeiten / Technik-News / Nachrichten / Aktuelles
    Antworten: 0
    Letzter Beitrag: 26.05.2011, 12:30
  4. Wofür C1 bei RN-Control?
    Von Jimmy23 im Forum Schaltungen und Boards der Projektseite Mikrocontroller-Elektronik.de
    Antworten: 2
    Letzter Beitrag: 11.04.2010, 12:19
  5. Elektromotor: wofür 3. Anschluss?
    Von scales im Forum Motoren
    Antworten: 3
    Letzter Beitrag: 18.08.2006, 15:01

Berechtigungen

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

MultiPlus Wechselrichter Insel und Nulleinspeisung Conrad