- 12V Akku mit 280 Ah bauen         
Ergebnis 1 bis 5 von 5

Thema: Github - wie kann ich Download machen?

  1. #1
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    31.03.2014
    Beiträge
    155

    Github - wie kann ich Download machen?

    Anzeige

    Praxistest und DIY Projekte
    Hallo,

    in vielen Projekten erfolgt ein Verweis der Downloadmöglichkeit auf die www von GitHub. Ich habe hier ein Projekt, aber es gelingt mir nicht, den Code und Library usw. als File zu downloaden. Allenfalls kann ich es auf der GitHub-www als Text anzeigen lassen. Aber wenn ich dessen Kopie in mein Arduino-Programmfenster kopiere, kommen Fehlermeldungen ohne Ende (stray 302, 342 usw...). Kann mir bitte von Euch jemand helfen und mir sagen, wie ich die Files direkt von GitHub downloaden kann?

    https://github.com/adafruit/Adafruit...sic_Visualizer

    (Es geht um den dort enthaltenen Ordner "piccolo", in welchem u.a. der Arduino-Code und die Library enthalten sind.)



    Andi

  2. #2
    Erfahrener Benutzer Robotik Visionär Avatar von oberallgeier
    Registriert seit
    01.09.2007
    Ort
    Oberallgäu
    Beiträge
    8.550
    .. Code und Library usw. als File zu downloaden .. Ordner "piccolo" ..
    Grüß Dich Andi.
    Also a) ich hatte von Github bis heute noch nix gedownloadet, b) ich bin kein arduino-er. Aber bei mir funzt der Download - zumindest sieht der erhaltene Text ziemlich gut nach einem ordentlichen Programmfile aus.
    Vorgehensweise:
    1) Ich hab Deinen Link angepickt.
    2) Dort habe ich in der Zeile

    Klicke auf die Grafik für eine größere Ansicht

Name:	piccolo.gif
Hits:	20
Größe:	1,1 KB
ID:	35757 den Link : Corrected licenses, added license files
    ...angepickt. Es öffnet sich ne Site bei der in einer der ersten Zeilen steht
    ..." .. Corrected licenses, added license files ..", darunter
    ...ne Zeile ".. Showing 35 changed files with 785 additions and 25 deletions ..".

    3) Dort gehe ich (NUR beispielsweise) zum dritten Kasten : "Adafruit_DS2413/DS2413/DS2413.ino".
    ...RECHTS OBEN in dem Kasten steht dieses Drei-Punkte-Zeichen : ··· .
    ...Das klicke ich an > es kommt ein Flyout in dem oben die Zeile
    ...Show comments steht .....- - mit einem Häkchen davor. Darunter steht
    ...IM FLYOUT die Zeile
    ...View file .........- - die picke ich an.
    ...Schon kommt ne Zeile mit
    ...".. evaherrada Corrected licenses, added license files ..".
    ...In einem Kasten drunter steht rechts [ Raw | Blame]. Picke auf Raw.
    ...Üblicherweise picke ich rechts und danach auf "In einem neuen Tab öffnen" (ich hab den Firefox)
    ...und schon habe ich in dem Fenster dies stehen:
    Code:
    // SPDX-FileCopyrightText: 2014 Bill Earl for Adafruit Industries
    //
    // SPDX-License-Identifier: MIT
    
    #include <OneWire.h>
    
    #define DS2413_ONEWIRE_PIN  (8)
    
    #define DS2413_FAMILY_ID    0x3A
    #define DS2413_ACCESS_READ  0xF5
    #define DS2413_ACCESS_WRITE 0x5A
    #define DS2413_ACK_SUCCESS  0xAA
    #define DS2413_ACK_ERROR    0xFF
    
    OneWire oneWire(DS2413_ONEWIRE_PIN);
    uint8_t address[8] = { 0, 0, 0, 0, 0, 0, 0, 0 };
    
    void printBytes(uint8_t* addr, uint8_t count, bool newline=0) 
    {
      for (uint8_t i = 0; i < count; i++) 
      {
        Serial.print(addr[i]>>4, HEX);
        Serial.print(addr[i]&0x0f, HEX);
        Serial.print(" ");
      }
      if (newline)
      {
        Serial.println();
      }
    }
    
    byte read(void)
    {        
      bool ok = false;
      uint8_t results;
    
      oneWire.reset();
      oneWire.select(address);
      oneWire.write(DS2413_ACCESS_READ);
    
      results = oneWire.read();                 /* Get the register results   */
      ok = (!results & 0x0F) == (results >> 4); /* Compare nibbles            */
      results &= 0x0F;                          /* Clear inverted values      */
    
      oneWire.reset();
      
      // return ok ? results : -1;
      return results;
    }
    
    bool write(uint8_t state)
    {
      uint8_t ack = 0;
      
      /* Top six bits must '1' */
      state |= 0xFC;
      
      oneWire.reset();
      oneWire.select(address);
      oneWire.write(DS2413_ACCESS_WRITE);
      oneWire.write(state);
      oneWire.write(~state);                    /* Invert data and resend     */    
      ack = oneWire.read();                     /* 0xAA=success, 0xFF=failure */  
      if (ack == DS2413_ACK_SUCCESS)
      {
        oneWire.read();                          /* Read the status byte      */
      }
      oneWire.reset();
        
      return (ack == DS2413_ACK_SUCCESS ? true : false);
    }
    
    void setup(void) 
    {
      Serial.begin(9600);  
      
      Serial.println(F("Looking for a DS2413 on the bus"));
      
      /* Try to find a device on the bus */
      oneWire.reset_search();
      delay(250);
      if (!oneWire.search(address)) 
      {
        printBytes(address, 8);
        Serial.println(F("No device found on the bus!"));
        oneWire.reset_search();
        while(1);
      }
      
      /* Check the CRC in the device address */
      if (OneWire::crc8(address, 7) != address[7]) 
      {
        Serial.println(F("Invalid CRC!"));
        while(1);
      }
      
      /* Make sure we have a DS2413 */
      if (address[0] != DS2413_FAMILY_ID) 
      {
        printBytes(address, 8);
        Serial.println(F(" is not a DS2413!"));
        while(1);
      }
      
      Serial.print(F("Found a DS2413: "));
      printBytes(address, 8);
      Serial.println(F(""));
    }
    
    void loop(void) 
    {
      /* Read */
      /*
      uint8_t state = read();
      if (state == -1)
        Serial.println(F("Failed reading the DS2413"));
      else
        Serial.println(state, BIN);
      */
        
      /* Write */
      bool ok = false;
      ok = write(0x3);
      if (!ok) Serial.println(F("Wire failed"));
      delay(1000);
      ok = write(0x0);
      if (!ok) Serial.println(F("Wire failed"));
      delay(1000);
    }
    Und das sieht doch ziemlich verdächtig nach compilierbarem Quelltext aus. Ob es eine einfachere Methode gibt, insbes. für ein komplettes Projekt, weiß ich nicht.

    Klappt das dann bei Dir ?
    Geändert von oberallgeier (26.02.2022 um 11:54 Uhr) Grund: Rückmeldung ?
    Ciao sagt der JoeamBerg

  3. #3
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    31.03.2014
    Beiträge
    155
    Danke für Deine umfangreiche Antwort und Mühe. So, wie Du es beschreibst, habe ich es auch gemacht. Aber wenn ich dieses kopierte Text-File dann in das Arduino-Programmfenster kopiere und auf speichern bzw. überprüfen klicke, kommen Fehlermeldungen ohne Ende. Google sagt dazu, dass möglicherweise beim Kopieren im Code enthaltene Zeichen umgedeutet werden. Nur entdecke ich im Code solche Zeichen nicht. Auch die automatischen Reparatur-Funktionen, die Arduino unter "Werkzeuge" anbietet, haben nicht geholfen.
    Üblicherweise lassen sich Codes (.ino) und Bibliotheken (.h) als Programm-Files downloaden und entsprechend installieren. Im erwähnten Fall klappt es aber nicht.
    Allerdings hab ich jetzt testweise Deinen Code hier kopiert, und der ist ohne Fehler. Leider ist das nicht der Code, den ich meinte. Wo da nun das Problem sitzt, muss ich rausfinden. Ich versuch's weiter.

    Danke
    Andi

  4. #4
    Erfahrener Benutzer Robotik Einstein Avatar von Andree-HB
    Registriert seit
    10.12.2004
    Ort
    Bremen
    Alter
    52
    Beiträge
    2.785
    Zitat Zitat von Andi#87 Beitrag anzeigen
    Kann mir bitte von Euch jemand helfen und mir sagen, wie ich die Files direkt von GitHub downloaden kann?
    Du musst ein Verzeichnis zurückspringen und dann das gesamte Paket downloaden:
    https://github.com/adafruit/Adafruit..._System_Guides

    Code -> Download ZIP

    ....dann kannst Du Dir aus dem Zipfile die benötigten Sachen rauskopieren

    Es werden in der Piccolo.ino aber ja auch andere Librarys benötigt/eingebunden, z.B.
    #include <Adafruit_GFX.h>
    #include <Adafruit_LEDBackpack.h>

  5. #5
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    31.03.2014
    Beiträge
    155
    ...wobei Deine erwähnten Libraries über die Arduino-Funktion "Bibliotheken verwalten" ganz "offiziell" gefunden werden, hingegen die im speziellen Programmcode notwendigen Libraries (ffft) vermutlich nur hier auf Github vorhanden sind. Zumindest werden diese in der Arduino-Verwaltung beim Suchen nicht aufgeführt.
    Danke für Deinen Hinweis. Ja, das hat funktioniert und in dem gesamten umfangreichen Paket (ZIP) sind dann auch alle Files entsprechend vorhanden.
    Vielen Dank für Deine und Eure Hilfe!

    Ergänzung:
    Kann Bibliothek und Code nun fehlerfrei installieren und auf den Arduino übertragen. Es funktioniert. Aber irgendwie nicht so, wie in der Anleitung dargestellt...
    Weiter forschen...




    Andi
    Geändert von Andi#87 (26.02.2022 um 13:57 Uhr)

Ähnliche Themen

  1. Kann TASM nicht im Download bereich finden
    Von superguensch im Forum Allgemeines zum Thema Roboter / Modellbau
    Antworten: 2
    Letzter Beitrag: 22.04.2006, 17:26
  2. wie kann ich machen ?
    Von niuniu im Forum Sensoren / Sensorik
    Antworten: 4
    Letzter Beitrag: 27.03.2006, 13:19
  3. Was kann ich mit AVR-Insight[WinAVR] machen?
    Von Superhirn im Forum C - Programmierung (GCC u.a.)
    Antworten: 5
    Letzter Beitrag: 21.02.2006, 21:42
  4. Kann man das machen?
    Von honkitonk im Forum Mechanik
    Antworten: 6
    Letzter Beitrag: 09.06.2005, 15:47
  5. Was kann ich draus machen?
    Von Neuling im Forum Elektronik
    Antworten: 30
    Letzter Beitrag: 29.03.2005, 11:52

Berechtigungen

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

Labornetzteil AliExpress