LED anfang
Moderator: T.Hoffmann
Dazu ist eine Fotozelle sinnvoll. Entweder eine Diode oder ein Transistor. Letzterer ist empfindlicher, kommt auf die Aufgabenstellung an. Wenn es darum geht das Licht automatisiert zu starten reicht sicher eine Diode, soll hingegen das Licht geregelt werden, ist der Transistor die feinfühligere Lösung!
Außerdem ist der Preisunterschied nahe 0 und weil ein Fototransistor eine wesentlich niedrigere Impedanz hat, ist die Helligkeistinformation einfach und direkt am ADC eines AVRs auswertbar. Ich würde den SFH 309 empfehlen: http://www.reichelt.de/index.html?ACTIO ... ICLE=65221soll hingegen das Licht geregelt werden, ist der Transistor die feinfühligere Lösung!
Welche?hab jetzt alle teile bekommen?
Grundschaltung wofür? Für den 7805? Oder um den Programmer anzuschließen oder den Quarz oder das DCF-Modul oder den Fototransistor an den ATMega oder für noch was anderes?Hat Jemand nen schaltplan zur Grundschaltung eines Atmega88, könnte im inet nix finden
erstmal ne ganz einfache Grundschaltung zum anschliesen des Programmers und einstellungen im Atmel Studio
Teile hab ich die wo ich oben geschrieben habe ... (nur ohne DFC vorerst)
würde das ganze gerne in C machen (Hast du vieleicht einen Beispiel Code für eine BLINK LED? vorerst zum testen auch ohne quarz)
Teile hab ich die wo ich oben geschrieben habe ... (nur ohne DFC vorerst)
würde das ganze gerne in C machen (Hast du vieleicht einen Beispiel Code für eine BLINK LED? vorerst zum testen auch ohne quarz)
Der Programmer kann den AVR mit Strom versorgen. Zum reinen 'beschreiben' (für ein Blink-LED reicht es auch
) kann man also einfach die entsprechenden Leitungen (MISO,MOSI,SCK,RESET,GND und VCC) mit ein paar (kurzen) Kabeln auf dem Steckbrett mit den passenden Pins des AVRs verbinden und schon kann's losgehen. Die Steckerbelegung des Programmers ist im Handbuch desselben (eher Flyer) beschrieben (oder auch hier: http://www.elv-downloads.de/Assets/Prod ... AVR_um.pdf ), die PINs des ATMega stehen im Datenblatt ( http://www.atmel.com/images/doc2545.pdf ). Brauchst Du da wirklich einen 'vollständigen' Schaltplan?
Mit C kann ich Dir nicht helfen. Ich kann es zwar lesen, aber aus alter Gewohnheit ist mir BASIC (also bei Avr-Chips BASCOM) lieber. Wenn was mit Bascom zu lahm wird, dann wird halt ein Stück Assembler eingefügt (kann man bei Bascom einfach mit in den Code schreiben). Aber es findet sich bestimmt ein passender Code Schnipsel im Netz: http://www.rn-wissen.de/index.php/Hallo ... blinken%29

Mit C kann ich Dir nicht helfen. Ich kann es zwar lesen, aber aus alter Gewohnheit ist mir BASIC (also bei Avr-Chips BASCOM) lieber. Wenn was mit Bascom zu lahm wird, dann wird halt ein Stück Assembler eingefügt (kann man bei Bascom einfach mit in den Code schreiben). Aber es findet sich bestimmt ein passender Code Schnipsel im Netz: http://www.rn-wissen.de/index.php/Hallo ... blinken%29
Hallo,
Hab jetzt diesen code:
die LED ist an Pin11 des ATMEGAS88
warum funktioniert es nicht was ist falsch?
Hab jetzt diesen code:
Code: Alles auswählen
#include <util/delay.h>
#include <avr/io.h>
int main(void)
{
DDRD = 0b0110000000;
while (1)
{
PORTD = 0b0010000000;
_delay_ms(200);
PORTD = 0b0100000000;
_delay_ms(200);
}
}
warum funktioniert es nicht was ist falsch?
Hallo,
hast du den Code compiliert und auf den avr übertragen?
Du hast bei den Zuweisungen 10 bit angegeben. der avr hat aber nur 8bit breite Register, was er dann tut.. keine Ahnung
wenn du "0b0110000000" durch "0b00100000" ersetzt sollte der die LED am Pin 11 des AVR ansprechen
Testen kann ich das leider erst heute Abend.
Viele Grüße
Markus
hast du den Code compiliert und auf den avr übertragen?
Du hast bei den Zuweisungen 10 bit angegeben. der avr hat aber nur 8bit breite Register, was er dann tut.. keine Ahnung
wenn du "0b0110000000" durch "0b00100000" ersetzt sollte der die LED am Pin 11 des AVR ansprechen
Testen kann ich das leider erst heute Abend.
Viele Grüße
Markus
ich habe bisher im Thread nichts gefunden, daher mal ein kurzes howto
AVR Studio starten, neues Projekt anlegen, avr GCC auswählen und neuen Ordner und Datei anlegen(der Einfachheit halber)
NEXT klicken, nicht Finish
AVR Simulator auf der linken und den AtMega88 auf der anderen Seite, jetzt Finish
dann den Code in die Datei kopieren und abspeichern
->Code compilieren, das geht über Build oder die Taste F7
-> oben auf auf das AVR Symbol klicken, dabei baut das Programm automatische eine Verbindung zum Programmer auf(falls möglich) sonst auf Con(daneben) und STK500 auswählen
unter main kannst du nun mit Read Signature schaun ob eine Verbindung zum Chip möglich ist, falls nein sind die Kabel nicht richtig oder der Chip hat keine Stromversorgung
sonst kannst du unter Program die Hex datei im Projektordner/default auswählen und program drücken (EEPROM und ELF brauchst du nicht)
dann sollte es bereits blinken
hier ist noch eine ähnliche Anleitung, die wählt den zu bespaßenden avr nur etwas später aus
http://www.electronicsplanet.ch/mikroco ... rial-c.htm
Hoffe du kannst damit was anfangen, sonst mach ich dir auch gerne noch Bilder
um noch auf deine Frage einzugehen
Man sollte nichts einstellen müssen damit es läuft, wie es bei deinem Programmer aussieht weis ich leider nicht zu 100% weil ich mir den direkt von Atmel (AVRISP mkii) geholt habe
Möglicherweise musst du noch die Firmware updaten, das müsste bei deinem Programmer dabei stehen
AVR Studio starten, neues Projekt anlegen, avr GCC auswählen und neuen Ordner und Datei anlegen(der Einfachheit halber)
NEXT klicken, nicht Finish
AVR Simulator auf der linken und den AtMega88 auf der anderen Seite, jetzt Finish
dann den Code in die Datei kopieren und abspeichern
->Code compilieren, das geht über Build oder die Taste F7
-> oben auf auf das AVR Symbol klicken, dabei baut das Programm automatische eine Verbindung zum Programmer auf(falls möglich) sonst auf Con(daneben) und STK500 auswählen
unter main kannst du nun mit Read Signature schaun ob eine Verbindung zum Chip möglich ist, falls nein sind die Kabel nicht richtig oder der Chip hat keine Stromversorgung
sonst kannst du unter Program die Hex datei im Projektordner/default auswählen und program drücken (EEPROM und ELF brauchst du nicht)
dann sollte es bereits blinken
hier ist noch eine ähnliche Anleitung, die wählt den zu bespaßenden avr nur etwas später aus
http://www.electronicsplanet.ch/mikroco ... rial-c.htm
Hoffe du kannst damit was anfangen, sonst mach ich dir auch gerne noch Bilder
um noch auf deine Frage einzugehen

Man sollte nichts einstellen müssen damit es läuft, wie es bei deinem Programmer aussieht weis ich leider nicht zu 100% weil ich mir den direkt von Atmel (AVRISP mkii) geholt habe
Möglicherweise musst du noch die Firmware updaten, das müsste bei deinem Programmer dabei stehen
F7 Habe ich gemacht dan kommt das als ausgabe
was meinst du jetzt aber mit AVR-Symbol?
Der Link ist nicht gerade hilfreich, dort sieht alles anderst aus als im Atmel STudio 6 ^^
Code: Alles auswählen
------ Build started: Project: LED BLINKEN, Configuration: Debug AVR ------
Build started.
Project "LED BLINKEN.cproj" (default targets):
Target "PreBuildEvent" skipped, due to false condition; ('$(PreBuildEvent)'!='') was evaluated as (''!='').
Target "CoreBuild" in file "C:\Program Files (x86)\Atmel\Atmel Studio 6.1\Vs\Compiler.targets" from project "C:\Users\Patrick\Documents\Atmel Studio\6.1\LED BLINKEN\LED BLINKEN\LED BLINKEN.cproj" (target "Build" depends on it):
Task "RunCompilerTask"
C:\Program Files (x86)\Atmel\Atmel Studio 6.1\shellUtils\make.exe all
make: Nothing to be done for `all'.
Done executing task "RunCompilerTask".
Task "RunOutputFileVerifyTask"
Program Memory Usage : 108 bytes 1,3 % Full
Data Memory Usage : 0 bytes 0,0 % Full
Done executing task "RunOutputFileVerifyTask".
Done building target "CoreBuild" in project "LED BLINKEN.cproj".
Target "PostBuildEvent" skipped, due to false condition; ('$(PostBuildEvent)' != '') was evaluated as ('' != '').
Target "Build" in file "C:\Program Files (x86)\Atmel\Atmel Studio 6.1\Vs\Avr.common.targets" from project "C:\Users\Patrick\Documents\Atmel Studio\6.1\LED BLINKEN\LED BLINKEN\LED BLINKEN.cproj" (entry point):
Done building target "Build" in project "LED BLINKEN.cproj".
Done building project "LED BLINKEN.cproj".
Build succeeded.
========== Build: 1 succeeded or up-to-date, 0 failed, 0 skipped ==========
Der Link ist nicht gerade hilfreich, dort sieht alles anderst aus als im Atmel STudio 6 ^^
Geht nicht mit den DIAMEX Programmern. Die laufen nur bis zum AVR Studio 4.18!Atmel STudio 6
Hab ich hier schon mal geschrieben:
viewtopic.php?p=174602#p174602
Ich selbst benutze auch das 4.18, da es ohne Visual Studio auskommt und ich eh in normalen Editor programmiere und das Studio nur zum debuggen und überspielen nutze
Für das Studio 6 gibt es hier ein ganz gutes Tutorial was alles wesentliche erklärt
https://www.youtube.com/watch?v=IDdaQQ6mDJY
Wenn sich Programmer und Studio net vertragen hat man meist schlechte Karten und sollte eines von beidem wechseln
Für das Studio 6 gibt es hier ein ganz gutes Tutorial was alles wesentliche erklärt
https://www.youtube.com/watch?v=IDdaQQ6mDJY
Wenn sich Programmer und Studio net vertragen hat man meist schlechte Karten und sollte eines von beidem wechseln
Ich habe diesen Programmer
-> http://www.reichelt.de/Programmer-Entwi ... EX+ALL+AVR
Dachte der wird unterstützt?
-> http://www.reichelt.de/Programmer-Entwi ... EX+ALL+AVR
Dachte der wird unterstützt?
Was heißt hier alte Software... Von den Funktionen der 'neuen' hast Du doch gar nichts. Schließlich willst Du 'alte' Chips damit programmieren.
Nicht dass ich wüsste. Du kannst natürlich in AVR Studio 6 programmieren und zum übertragen AVRDude verwenden.kann mans ned kompatibel machen?
Hab AVRdude jetzt und auch im Atmel Studio 6 Eingerichtet (http://www.mikrocontroller.net/topic/267384)
wie gehts jetzt weiter?
wie gehts jetzt weiter?
Die Spannung am Ausgang sollte man unbelastet (oder mit nur geringer Last wie z.B. 1KOhm nach Masse) nachmessen. 1.2V sind aber schon sehr wenig. Hast Du vielleicht den Programmer (falls Du die Schaltung mit dem Programmer versorgst) über die Jumper auf 3.3V gesetzt?
nach dem Bild von Borax müsste bei JP1(unten) der mittlere gesteckt sein -> 5V und beim JP2(oben) der erste -> ISP
du solltest auch bevorzugt nur eine Spannungsquelle nutzen und den Rest abklemmen, sonst kommen u.U. 15V an die 5V vom USB was nicht ganz so prickelnd ist, ich weis nicht was der Programmer an Schutzschaltung hat.
kannst du vielleicht mal ein Bild von der Schaltung machen, so das man möglichst sieht wo welche Kabel lang laufen?
du solltest auch bevorzugt nur eine Spannungsquelle nutzen und den Rest abklemmen, sonst kommen u.U. 15V an die 5V vom USB was nicht ganz so prickelnd ist, ich weis nicht was der Programmer an Schutzschaltung hat.
kannst du vielleicht mal ein Bild von der Schaltung machen, so das man möglichst sieht wo welche Kabel lang laufen?
Kann ja, aber dann sollte die Led nicht blinken...
das ist dann PWM, da wird die Led einfach sehr schnell (<100Hz) an und aus gemacht, das ist die gängige Methode um die Helligkeit zu regeln
aber dann sollte sie nicht blinken, sondern nur dunkel leuchten
Wie misst du denn die Spannung und den Strom? normales Multimeter?
Wenn der Ausgang nicht konstant ist (z.b. Rechteck o.ä.) verfälscht das die Messung
das ist dann PWM, da wird die Led einfach sehr schnell (<100Hz) an und aus gemacht, das ist die gängige Methode um die Helligkeit zu regeln
aber dann sollte sie nicht blinken, sondern nur dunkel leuchten
Wie misst du denn die Spannung und den Strom? normales Multimeter?
Wenn der Ausgang nicht konstant ist (z.b. Rechteck o.ä.) verfälscht das die Messung