Forum: Mikrocontroller und Digitale Elektronik No supported board found! USBasp fehler


von Philipp N. (phil795)


Lesenswert?

Hallo miteinander.

Da ich vorhin hier bestens mit Lese Material und Beratung versorgt 
wurde, würde ich gerne noch mal um Hilfe bitten.

Und zwar habe ich folgendes ISP gekauft, bevor ich wusste das es enorme 
"Qualitätsunterschiede" gibt.
http://www.amazon.de/gp/product/B00AVRHVPO?psc=1&redirect=true&ref_=oh_aui_detailpage_o09_s00

Nun habe ich das Problem das ich nicht genau weiß wie ich die 
Schnittstelle Konfigurieren muss.

Bereits installiert habe ich folgenden Treiber:
libusb-win32 in der Version 1.2.4.0

Ich nutze Windows 7 in der 64-Bit Version.

Das AVR Studio 4 meldet:
"No supported board found! AVRprog version 1.40"

Im Studio 7 habe ich als Tool STK500 eingestellt, als Device den ATMega8 
und als Interface: ISP.
Sobald ich diese Einstellungen übernehmen möchte kommt die Meldung
"Unable to connect to tool STK500 (COM1)

Da ich leider keine Serielle oder Parallele Schnittstelle mehr habe 
(leider auch nicht mehr mein Bastel Rechner) bin ich nun aufgeschmissen.

von Philipp_K59 (Gast)


Lesenswert?

Das müsste ein usbasp sein, der ist leider nicht so wirklich avrstudio 
Kompatibel..

Irgendwo gibts dazu ein Workaround. Für den Usbasp wäre die Eclipse oder 
Arduino Ide zwei von vielen Alternativen.

von Philipp N. (phil795)


Lesenswert?

Habe nun die Arduino Version 1.6.7 installiert.

Hier habe ich als Programmer "Arduino as ISP" ausgewählt, auch hierbei 
kommt eine Fehlermeldung das:

avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0xde

von Philipp_K59 (Gast)


Lesenswert?

Usbasp heisst das Gerät.. Man muss da usbasp und nicht "arduino as ISP" 
einstellen.

von Philipp N. (phil795)


Lesenswert?

Leider immer noch das selbe Problem

avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0xd8

von Philipp K. (philipp_k59)


Lesenswert?

Denke ich nicht, wenn man auf usbasp stellt ist entweder das USB gerät 
erkannt worden oder es kommt die Fehlermeldung "cant find usbasp 
Device."

Usbasp Treiber installiert, was sagt der Gerätemanager? Gegebenfalls 
Fehlermeldung komplett Posten.

: Bearbeitet durch User
von Philipp N. (phil795)


Lesenswert?

Im Gerätemanager ist alles okay, habe bereits die libusb-win32 Treiber 
installiert.

Beim umschalten auf USBasp passiert in Arduino nichts.

Hier der vollständige Log:

Der Sketch verwendet 498 Bytes (1%) des Programmspeicherplatzes. Das 
Maximum sind 32.256 Bytes.
Globale Variablen verwenden 9 Bytes (0%) des dynamischen Speichers, 
2.039 Bytes für lokale Variablen verbleiben. Das Maximum sind 2.048 
Bytes.
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0xd8
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0xd8
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0xd8
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0xd8
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0xd8
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0xd8
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0xd8
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0xd8
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0xd8
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0xd8
Problem beim Hochladen auf das Board. Hilfestellung dazu unter 
http://www.arduino.cc/en/Guide/Troubleshooting#upload.

Konfiguration:
Board: Arduino Genuino Uno
Port: COM1

Bei einem Klick auf "hochladen mit programmer" kommt folgendes:
avrdude: error: could not find USB device with vid=0x16c0 pid=0x5dc 
vendor='www.fischl.de' product='USBasp'

: Bearbeitet durch User
von Philipp K. (philipp_k59)


Lesenswert?

Dann lese Dich ein oder Zauber weiter.

Wenn man vor dem Hochladen auf Usbasp stellt ist Deine Fehlermeldung 
unmöglich.

von Philipp N. (phil795)


Lesenswert?

Habe soeben mal eine andere Treiber Version versucht und komme nun 
weiter.

Folgendes kommt raus:

Build-Optionen wurden verändert, alles wird neu kompiliert

Der Sketch verwendet 498 Bytes (1%) des Programmspeicherplatzes. Das 
Maximum sind 30.720 Bytes.
Globale Variablen verwenden 9 Bytes (0%) des dynamischen Speichers, 
2.039 Bytes für lokale Variablen verbleiben. Das Maximum sind 2.048 
Bytes.
avrdude: warning: cannot set sck period. please check for usbasp 
firmware update.
avrdude: Expected signature for ATmega328P is 1E 95 0F
         Double check chip, or use -F to override this check.
Falscher Mikrocontroller gefunden. Ist das richtige Board im Menü 
Werkzeuge > Board ausgewählt?

Jedoch kann ich nicht manuell den ATMega8 auswählen

von Philipp K. (philipp_k59)


Lesenswert?

Dann lese Dich ein oder Zauber weiter.

Wenn man vor dem Hochladen auf Usbasp stellt ist Deine Fehlermeldung 
unmöglich.

Das wird an Dem Genduino liegen, welchen Prozessor hat der?

: Bearbeitet durch User
von Philipp N. (phil795)


Lesenswert?

Ich nutze gar kein Arduino Board, ich habe eine ATMega8 auf einem 
Steckbrett

von Philipp K. (philipp_k59)


Lesenswert?

Philipp N. schrieb:
> Ich nutze gar kein Arduino Board, ich habe eine ATMega8 auf einem
> Steckbrett

Dann musst Du das passende Board auswählen. Mit externem Quarz? Versuch 
mal "Hochladen mit Programmer" im Menü.

von Philipp N. (phil795)


Lesenswert?

Ich habe nun als Board "Arduino NG or Older" wodurch ich den ATMega8 
auswählen konnte.

Mit einem Klick auf Hochladen mit Programmer bekomme ich nun folgendes:

avrdude: warning: cannot set sck period. please check for usbasp 
firmware update.

Werde aber erst mal selbst versuchen das Modul zu updaten.

Vielen dank für deine Hilfe :-)

von Philipp K. (philipp_k59)


Lesenswert?

Grundsätzlich gibt es Anleitungen "arduino on a Breadboard"

Da gibt es den Unterschied zwischen internem oder externem Takt.

Wenn du kein Quarz hast musst Du ein neues Board hinzufügen, da die 
Grundeinstellung bei Ng or Older für16mhz sein müsste.

Dann wäre die richtige Anleitung für dich Arduino on a Breadboard 8MHz 
internal.

Flashe nicht den Bootloader ohne einen 16MHz Quarz dazuhaben.. Sonst 
musst Du das bestellen damit du wieder auf den A8 zugreifen kannst.

von Thomas (Gast)


Lesenswert?

Also so schwer ist es doch nun wirklich nicht:

Beitrag "USBasp unter AVRStudio 5 oder 6 verwenden - Anleitung!"

Funktioniert sinngemäß auch mit anderen Versionen von AVRStudio.

von Axel S. (a-za-z0-9)


Lesenswert?

Philipp N. schrieb:
> Ich habe nun als Board "Arduino NG or Older" wodurch ich den
> ATMega8 auswählen konnte.
>
> Mit einem Klick auf Hochladen mit Programmer bekomme ich nun folgendes:
>
> avrdude: warning: cannot set sck period. please check for usbasp
> firmware update.

OK. Das ist ja "nur" eine Warnung. Ich nehme an, das Programmieren 
deines ATmega8 hat trotzdem geklappt?

Ansonsten mußt du deinen usbasp mal auf eine aktuelle Firmware upgraden. 
Das ist in ca. 100 Threads hier und anderswo beschrieben. Dummerweise 
brauchst du dazu einen zweiten ISP-Adapter.

Den kannst du allerdings auch recht einfach mit deinem vorhandenen 
ATmega8 auf dem Steckbrett zusammenstecken. Die Schaltung des usbasp ist 
ja recht einfach. Dann brennst du die usbasp-Firmware in den ATmega8 und 
verwendest anschließend den ATmega8 als Programmer um den usbasp 
aufzufrischen.

von Thomas (Gast)


Lesenswert?

Axel S. schrieb:
> Das ist in ca. 100 Threads hier und anderswo beschrieben.

Hättest ruhig auch erwähnen können, wo es die gibt. Auf

http://www.avrfreaks.net/forum/usbasp-auto-speed-firmware-testing

gibts die aktuellste Autospeed-Firmware.

von Philipp K. (philipp_k59)


Lesenswert?

Beim Arduino wird das ohne genauere Konfiguration auch Probleme geben.

Was hat der Atmega8 von Haus aus? 1MHz intern?

Kompiliert wird mit f_CPU 16MHz..

von Axel S. (a-za-z0-9)


Lesenswert?

Thomas schrieb:
> Axel S. schrieb:
>> Das ist in ca. 100 Threads hier und anderswo beschrieben.
>
> Hättest ruhig auch erwähnen können, wo es die gibt.

Tja. Ich hatte irgendwie angenommen, daß jemand der hier schreiben kann, 
auch die Suchfunktion bedienen kann ...

Aber egal. Dann hier die Anleitung für Internet-Legastheniker:

1. oben links auf der Seite auf "Home" klicken

2. auf der jetzt geladenen Homepage in das Textfeld unter den Worten 
"Mikrocontroller.net durchsuchen" die folgenden Suchworte eintippen: 
"usbasp firmware update"

3. auf den Button "Suche" klicken

4. die Trefferliste durcharbeiten, eventuell weitere Suchworte ergänzen 
wie "Anleitung" oder "Howto"

> Auf
> http://www.avrfreaks.net/forum/usbasp-auto-speed-firmware-testing
> gibts die aktuellste Autospeed-Firmware.

Funktioniert das denn? Wird es von avrdude unterstützt? Die letzte 
offizielle Firmware von http://www.fischl.de/usbasp/ funktioniert 
jedenfalls tadellos. Autospeed ist zwar nett, aber nur wenn es auch 
out-of-the-box funktioniert. Wir wollen unserem Einsteiger ja keine 
neuen Baustellen aufs Auge drücken, sondern ihm dabei helfen seine 
bestehende Baustelle wegzukriegen.

von Philipp N. (phil795)


Lesenswert?

Die Programmierung des ATmega klappte nicht. Trotz dem es nur eine 
Warnung war.

Updaten ist Problematisch da ich keinen anderen habe.

Werde später mal versuchen das USBasp im AVR Studio zum laufen zu 
bringen.

von Philipp_K59 (Gast)


Lesenswert?

Philipp N. schrieb:
> Die Programmierung des ATmega klappte nicht. Trotz dem es nur eine
> Warnung war.
>
> Updaten ist Problematisch da ich keinen anderen habe.
>
> Werde später mal versuchen das USBasp im AVR Studio zum laufen zu
> bringen.

Scheint mir eher Du fängst nicht bei Null an und suchst den Fehler 
erstmal nicht bei Dir selbst.

Ein Arduino ist ein AVR mit einer Programmiersoftware, normalerweise 
benutzt man einen Seriell Adapter für komfortables Uploaden. Dafür 
braucht man einen installierten Bootloader. Hat man diesen nicht, weil 
man sich kein fertiges Arduinoboard gekauft hat kann man auch usbasp 
benutzen und das ist auch nicht schlechter.

Nur geht beim atmega8 kein Weg dran vorbei die arduino IDE anzupassen.

Zwei Fälle sind möglich:
1. Du hast einen Breadboard Aufbau mit einem üblichen externem 16Mhz 
Quarz an Xtal1 und Xtal2.

Hier brauchst Du nur ArduinoNG or Older auswählen und mit "Bootloader 
installieren" die Fuses setzen. (Ohne Quarz kannst Du den Atmega8 jetzt 
nicht mehr nutzen)

2. Du möchtest sofort loslegen und hast keinen externen Quarz und nur 
den Nackten Atmega mit ner Led auf dem Breadboard.

Dann musst Du leider Deine IDE anpassen um ein neues Board hinzuzufügen 
um dieses dann auszuwählen und mit "Bootloader installieren" den 
internen RC Oszillator auf 8Mhz zu stellen.

Dafür muss man z.B. diese Anleitung abarbeiten:
http://ediy.com.my/index.php/tutorials/item/94-arduino-running-at-8mhz-internal-clock-with-optiboot-bootloader

^^Für den Uno als ArduinoISP musst Du Dir einfach den USbasp vorstellen.

Kannst auch einfach nen Eclipse oder AVRStudio Workaround durchgehen.. 
überall wirst Du Dich mit dem ganzen anfängerzeugs auseinandersetzen 
müssen.

von Philipp N. (phil795)


Lesenswert?

Habe mir deinen Link zu herzen genommen und mal ein wenig 
experimentiert.

Unter der aktuellen Version des Arduino Studios funktioniert die 
boards.txt Konfig nicht. Sind mehrere Syntax fehler vorhanden.

Habe mir dann das 1.0.5 Arduino Studio besorgt. Hier die boards.txt 
geändert und ich konnte erfolgreich den Bootloader flashen.

An dieser Stelle vielen dank Philipp_K59 für die Hilfe.

Jetzt muss ich aber bevor ich die Materie studiere noch eine Frage raus 
hauen.

In der C Programmierung mit MC die ich kenne sieht ein Blinklicht wie 
folgt aus:

  DDRC = 0b00100000;

  PORTC = 0b11111111;  // PC5 = High
  _delay_ms(1000);
  PORTC = 0b11011111;  // PC5 = Low
  _delay_ms(1000);

Im Arduino sieht der Beispielcode anders aus.

  int led = 13;

  pinMode(led, OUTPUT);

  digitalWrite(led, HIGH);   // turn the LED on (HIGH is the voltage 
level)
  delay(1000);               // wait for a second
  digitalWrite(led, LOW);    // turn the LED off by making the voltage 
LOW
  delay(1000);

Schleifen und Funktionsköpfe habe ich mal ausgelassen.

Ist der reine C Code aus dem oberen Beispiel im Arduino Studio zulässig?

Ansonsten wie spreche ich mit pinMode() PC5 an?

von Philipp_K59 (Gast)


Lesenswert?

Solange es AVR kompatibler Code ist kannst du diesen auch in der Arduino 
IDE benutzen solange sich keine Timer stören.

Wenn Du wirklich in AVR gcc schreiben willst mach Dir das AVR-Studio 
oder Eclispe startklar.. ich hab auch nur USBASP und nehme das Tool das 
dem Projekt am nähesten liegt.

Ich weiß halt nur von "Früher" das das AVR Studio ohne einen AVR 
Programmer wie dem AVRISP MK2 recht umständlich ist.. Vielleicht ist das 
mitlerweile anders.

von Flip B. (frickelfreak)


Lesenswert?

> Vielleicht ist das mitlerweile anders
ja, einfach avrfude mit gewünschten parametern als postbuild event 
eintragen.

von Philipp N. (phil795)


Lesenswert?

Werds mal versuchen einzurichten.

Einen AVRISP MK2 kann ich mir ja auch zulegen, mir ging es vorerst nur 
darum das Gerät endlich mal zum laufen zu bringen.



Aus dem USBasp kommen 4,8V raus, reichen die um das Breadboard mit Strom 
zu versorgen? Oder wäre eine externe Stromquelle besser?

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
Noch kein Account? Hier anmelden.