Hallo, Ich habe bisher immer Arduinos & Co programmiert und möchte jetzt auch z.B. Attinys programmieren. Ich habe mir deswegen einen ISP Programmer zugelegt (https://www.amazon.de/Programmer-USB-AVRISP-XPII-Compatible/dp/B00KM6ZA9I/ref=sr_1_6?ie=UTF8&qid=1508517749&sr=8-6&keywords=isp+programmer). Programmiert wird mit AVR Studio 5. Als kleines Einstiegsprojekt wollte ich eine LED flackern lassen (wie bei eine LED Teelicht), als Skript wollte ich: #define LED PB1 // ... adc_setup, adc_read, pwm_setup, pwm_write ... int main (void) { int adc_in; // LED is an output. DDRB |= (1 << LED); adc_setup(); pwm_setup(); while (1) { // Get the ADC value adc_in = adc_read(); // Now write it to the PWM counter pwm_write(adc_in); } } von: https://www.adnbr.co.uk/articles/adc-and-pwm-basics verwenden. Eine Fehlermeldung konnte ich fixen (einfügen von #include <avr/io.h>), leider kommen jetzt noch: - undefined reference to 'acd_setup' - undefined reference to 'pwm_setup' - undefined reference to 'adc_read' - undefined reference to 'pwm_write' Ich wäre sehr froh wenn ihr mir mitteilen könntet woran das liegt ;-). Und bitte habt Verständnis dafür dass ich mich in diesem Bereich (AVR Studio,...) noch nicht gut auskenne!
Hi Die Funktionen, Die Du aufrufst, sind unbekannt. Der Compiler weiß Nichts mit 'adc_read()' anzufangen. Diese Funktionen sind aber in dem von Dir angegebenem Link enthalten. Einfach diese Funktionen mit in Dein Programm einfügen und einen neuen Versuch starten. Ggf. kannst Du den ATtiny13 auch per Arduino programmieren - zumindest 25,45,85,24,44,84 lassen sich so, mit Einschränkungen, programmieren (selbst bisher nur ATtiny45 probiert). MfG PS: Mit nur einem k 'Speicher' wird das Programmieren per Arduino-IDE wohl nicht sonderlich gut klappen - Aber: Versuch macht kluch (klug)
:
Bearbeitet durch User
Patrick J. schrieb: > Hi > > Die Funktionen, Die Du aufrufst, sind unbekannt. > > Der Compiler weiß Nichts mit 'adc_read()' anzufangen. > > Diese Funktionen sind aber in dem von Dir angegebenem Link enthalten. > Einfach diese Funktionen mit in Dein Programm einfügen und einen neuen > Versuch starten. Wie soll ich sie einfügen? Auch mit # include? > Ggf. kannst Du den ATtiny13 auch per Arduino programmieren - zumindest > 25,45,85,24,44,84 lassen sich so, mit Einschränkungen, programmieren > (selbst bisher nur ATtiny45 probiert). Ich will sie ja gar nicht per Arduino programmieren ^^, ich will mich in das AVR Studio einarbeiten und benötige dazu ein bisschen "Starthilfe". LG
Max schrieb: > Programmiert wird mit AVR Studio 5. Warum, um alles in der Welt, denn ausgerechnet dies? Das ist Scheisse. Der erste Versuch von Atmel, eine VS-basierte Entwicklungsumgebung bereitzustellen. Dementsprechend behaftet mit vielfältigen Bugs, deren bloße Aufzählung allein schon den Rahmen eines üblichen Postings überschreitet. Also: entweder AVR Studio 4.19 (bzw. für C auch 4.18Upd2) oder einfach das aktuelle AtmelStudio, also 7.x. > - undefined reference to 'acd_setup' > - undefined reference to 'pwm_setup' > - undefined reference to 'adc_read' > - undefined reference to 'pwm_write' Das allerdings hat nix mit dem Studio an sich zu tun (egal welcher Version), sondern allein mit deiner Inkompetenz, es korrekt zu benutzen. Man kann das einfach lernen, man muß diese Zeit halt einfach nur aufwenden...
Max schrieb: > Ich will sie ja gar nicht per Arduino programmieren ^^, ich will mich in > das AVR Studio einarbeiten und benötige dazu ein bisschen "Starthilfe". Schau dir mal Grundlagen zur C-Programmierung an. Die brauchst du als erstes wenn du mit diesem Fehler schon Probleme hast.
c-hater schrieb: > Warum, um alles in der Welt, denn ausgerechnet dies? > Das ist Scheisse. Der erste Versuch von Atmel, eine VS-basierte > Entwicklungsumgebung bereitzustellen. Dementsprechend behaftet mit > vielfältigen Bugs, deren bloße Aufzählung allein schon den Rahmen eines > üblichen Postings überschreitet. > > Also: entweder AVR Studio 4.19 (bzw. für C auch 4.18Upd2) oder einfach > das aktuelle AtmelStudio, also 7.x. Das war die Version die mitgeliefert wurde, und ich wollte mit einer Version ANFANGEN wo ich mich nicht erst um Treiberprobleme kümmern muss. > Das allerdings hat nix mit dem Studio an sich zu tun (egal welcher > Version), sondern allein mit deiner Inkompetenz, es korrekt zu benutzen. Ich habe es inzwischen hinbekommen sie zu definieren ^^, war reine Dummheit von mir... (# define ...) Jetzt bekomme ich nur noch die Meldung "expected expression...", falls mir jemand da nen Tipp wäre sehr nett, habe gerade keine Idee was für Werte er da will...
Hallo "Das allerdings hat nix mit dem Studio an sich zu tun (egal welcher Version), sondern allein mit deiner Inkompetenz, es korrekt zu benutzen. Man kann das einfach lernen, man muß diese Zeit halt einfach nur aufwenden..." Auch wenn in der eigentlichen Aussage vollkommen korrekt, kannst du das nicht ein wenig freundlicher und motivierender formulieren ? "Inkompetenz" hat für die Meisten immer einen anklagenden, manchmal sogar ins beleidigende gehenden Unterton. Das das Wort "Inkompetent" streng genommen nur etwas beschreibt und nicht wertet ändert an der Tatsache das es allgemein als abwertend bis beleidigend verstanden wird leider nichts. Unter uns Bastlern, Hobbyprogrammieren und Elektronikjüngern sollte es eigentlich selbstverständlich sein freundlich miteinander um zu gehen. Im Amateurfunk gibt es dafür den Begriff "Ham-Spirit" eventuell solltest du die mal die Definition und Grundregeln dazu durchlesen - außer einige Funkspezifischen Details passen diese Definitionen und Grundregeln auch ganz hervorragen im gesamten Bastler und Hobbyumfeld herein. Überhaupt: "...-hater" was ist das für ein Selbstverständnis gegenüber sich selbst und anderen? Die willst doch wohl nicht der "Gesellschaftlichen Elite" zusammen geworfen werden welche Stolz darauf ist irgendwas oder irgendwen zu hassen - und das in Extremis sogar mit gut sichtbaren Tätowierungen kundtun? Mit freundlichen Grüßen Jemand
> // ... adc_setup, adc_read, pwm_setup, pwm_write ...
@Max
An dieser Stelle müssen statt diesem Kommentar die Definitionen der
eigentlichen Funktionen stehen (wie sie in dem von dir verlinkten
Artikel auch angegeben sind), ansonsten kennt der Compiler die
Funktionen ja nicht.
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.