Hallo, ich bin neu hier im Forum und auch neu was ATmega8 betrifft, also
bitte nicht gleich scharf schießen wenn meine Fragen bissl primitiv
klingen.
Ich möchte ein Transistortester so wie hier
Beitrag "einfacher Transistortester (Assembler) ATmega8"
oder hier
Beitrag "Transistortester mit AVR"
beschrieben ist, nachbauen.
Ich habe vom programmieren eines uC über einen PC keine ahnung, das ist
alles neuland. Ich kenne mich gut mit vb6 programmierung aus und bin ein
guter bastler, und von elektronik im allgemeinen habe ich auch gute
ahnung.
------------------------
So dann würde ich erst mal paar fragen loswerden, damit das in die Gänge
kommt mit meinem Transistortester.
1. <b>Welchen USB-Programmierer würdet ihr mir empfehlen?</b>
Den quellcode den man vermutlich mit dem AVRStudio auf dem rechner
schreibt, muß man am ende auf den ATmega8 per USB überspielen.
Ich möchte ausser ATMega8 und 16, eventuell noch kleine uC wie zB.
PICProzessoren später mal auch einsetzen.
Ich habe bei e bay diese 2 USB-Programmierer gefunden
DIAMEX USB ISP-Programmer für ATMEL AVR, STK500, ATmega
http://cgi.ebay.de/ws/eBayISAPI.dll?ViewItem&item=130513809542&ssPageName=STRK:MESINDXX:IT
und noch diesen:
AVR USB ISP Programmer ATMEL ATMEGA STK500 Neu ATTINY
http://cgi.ebay.de/ws/eBayISAPI.dll?ViewItem&item=370490000223&ssPageName=STRK:MESINDXX:IT
Habe den verkäufer/firma angeschrieben, die teilten mir mit das sie die
dinger nur verkaufen, ich soll mich an ein forum melden!
(als PC-Software habe ich mir bereits AVR Studio 4.18 (build 684)
Setup.exe runtergeladen)
------
2. Brauche ich eine extra Platine (ausser der, wo der Transistortester +
Bauteile drauf ist) um den ATmega8 zu programmieren, oder kann ich den
auf der fertigen Platine programmieren?
Ansonsten baue ich mir sowas mit DIP28 sockel um die ATmega8 dann
zukünftig dort drauf zu programmieren.
------
3. ATmega8L-8PU und ATmega8-16PI habe ich hier günstig gefunden:
http://cgi.ebay.de/ATMega-8L-8PU-Atmel-ATMega8-AVR-Controller-DIP28S-/310218499373?pt=Bauteile&hash=item483a76a52d
und
http://cgi.ebay.de/ATMega-8-16PU-Atmel-ATMega8-AVR-Controller-DIP28S-/120662970194?pt=Bauteile&hash=item1c1812cf52
sind das die richtigen uC oder muß man auf die Buchstabenendung
irgendwie achten?
Sollte ich mehrere davon kaufen, oder macht das wenig sinn, die neu zu
programmieren und dann in die anteren bausätze reinzustecken?
4. ASM, BAS, EEP ?
Habe in einigen zip-datein so komische dateine mit unbekannten endungen
gefunden.
Kann mir jemand erklären welchen Code man in den uC überspielt?
Es gibt ja 2erlei, der reine Quellcode .asm, *.c, *.cpp und das
endprodukt *.epp (oder noch mehr?)
Ok das wars erstmal für meinen ersten Beitrag, gruß Daniel
Hallo,
arbeite mal hier:
http://www.mikrocontroller.net/articles/Hauptseite
Den Bereich
AVR-Tutorial
durch. Oder hast Du das schon getan?
Ich entwickle meine Schaltungen immer so, das ich den ISP on Board habe
und die Bauteile an diesen PINs auch so beschaltet sind, das das
Programmieren in der Schaltung funktioniert. Denn irgendwann ist doch
mal ein PIN erst krum, später ab.
Zu3) Die Buchstaben am Ende von ATmegaZZZ-XX haben eine Bedeutung, die
jeweils genau im Datenblatt steht. Die Datenblätter solltest Du auch
sorgfälltig lesen. Im allgemeinen steckt in der Buchstabenkombination
der Temperaturbereich und die Gehäuseform.
Zu einem Programmiergerät: Suche mal nach "USBasp".
http://www.mikrocontroller.net/articles/AVR_In_System_Programmer
Und zur Bedeutung von FUSEs bei den einzelnen Typen solltest Du Dir auch
im klaren sein, wie Du die setzen willst/mußt.
Daniel V. schrieb:> alles neuland. Ich kenne mich gut mit vb6 programmierung aus und bin ein
In dem Fall könnte Bascom was für Dich sein. Ich kenne es selbst nicht,
aber es ist wohl sehr beliebt, im µC in Basic zu programmieren.
> 1. <b>Welchen USB-Programmierer würdet ihr mir empfehlen?</b>
Da gibt es viel. Aber das, so wie einiges der anderen Fragen wird in den
Tutorials hier recht gut behandelt. Z.B.
http://www.mikrocontroller.net/articles/AVR-Tutorial:_Equipment> Den quellcode den man vermutlich mit dem AVRStudio auf dem rechner> schreibt, muß man am ende auf den ATmega8 per USB überspielen.
Nicht den Quellcode, sondern ein .hex-File, das am Ende rauskommt.
> 2. Brauche ich eine extra Platine (ausser der, wo der Transistortester +> Bauteile drauf ist) um den ATmega8 zu programmieren, oder kann ich den> auf der fertigen Platine programmieren?> sind das die richtigen uC oder muß man auf die Buchstabenendung> irgendwie achten?
Ja, die Buchstaben am Ende sagen auch was aus, die stehen da nicht nur,
weil da noch Platz war :)
Erste Anlaufstelle bei solchen Fragen sollten die Datenblätter des
Herstellers sein, die geben Dir Auskunft darüber, was was bedeutet. Die
Bauform z.B. dürfte interessant sein, wenn Du auf Breadboards oder mit
gesockelten µC arbeiten willst.
> Es gibt ja 2erlei, der reine Quellcode .asm, *.c, *.cpp und das> endprodukt *.epp (oder noch mehr?)
Es gibt noch eine .hex. Siehe oben :)
Ich kann nicht zu allem was sagen, da ich selber noch n Grünschnabel
bin, aber ich empfehle Dir wärmstens die Lektüre der Tutorials hier und
auch des Datenblattes. Gerade letzteres muss man lesen, es hassen, es
nochmal lesen, es noch mehr hassen, es immer wieder lesen um es
irgendwann zu lieben.
Viel Erfolg beim Einstieg,
42m
Hallo !!
EIn neuling , freut mich !!!
Antwort auf frage 1:
Beide Sind GAnz gut , habe ich in Foren und von einem kumpel erfahren ,
das ist ganz gut.
Mit PIC prozessoren habe ich keine Erfahrung gemacht, die sind weniger
im "TREND"..
Mein Tipp:
Benutze einen Rs232 ISP adapter von scott falk hühn (Rs232 = Serielle
Schnittstelle )
http://s-huehn.de/elektronik/avr-prog/avr-prog-alt.htm
dazu brauchst du aber Ponyprog, einfach runterladen und installieren.
Weitere Möglichkeit :
LPT-Port ( Paralelle Schnittstelle ), mit einem 74hct244 Baustein ,
einfach googlen , findest du schnell. ( schaltplan und eine mögliche
bauanleitung)
http://www.rn-wissen.de/index.php/AVR-ISP_Programmierkabel
mit dem Zeug gibt´s weniger Probleme Als mit USB ......
Antwort auf frage 2 :
nein , Aber du brauchst eine ISP Buchse,und die richtige Verdrahtung zum
AVR. Ich würde die ganzen Experimente
auf einer Steckplatine( 3 EURO bei Reichelt, ist am billigsten )
durchführen .
Antwort auf frage 3 :
Ich würde mir vllt 3 oder 4 Stück kaufen, denn es kann passieren dass du
die Falsch rum in den Sockel Reinsteckst , i-was mit ESD (
elektrostatische entlandung ) kann auch den controller schrotten ,
Überhitzen, etc........
Wie du die Dinger Handhabst,(ob du die dinger gleich einlötest oder
nicht ) ist dir überlassen, du kannst so einen Controller bis zu 10.000
mal programmieren( s. Datenblatt) , ich glaube, noch ein Paar tausend
mal Mehr geht Schon XD ( du hast also die möglichkeit das ding für
verschidene Projekte verwenden )
Antwort auf Frage 4:
Normal lädt man "hex" dateien auf den Controller.......,
Mein Ganz Persönlihcer Tipp :
lerne die Grundlagen Von Assembler ( ldi , rjmp, mov, out, ....... )das
zeug nicht auswendig lernen sondern VERSTEHEN :)
http://www.mikrocontroller.net/articles/AVR-Tutorial:_IO-Grundlagen
und ein Paar kapitel Weiter ...,
dann lerne die Programmiersprache C oder Basic ( Bascom = Basic für AVR)
für AVR, denn es lohnt sich nicht immer Asm. ( assembler) zu
programmieren.
Ich persönlich verwende Bascom :)
Hoffe konnt dir damit helfen !!
Jackenkoffer schrieb:> mit dem Zeug gibt´s weniger Probleme Als mit USB ......
das würde ich nicht sagen, vor allem braucht man an einem einigermaßen
aktuellen Rechner auch noch ein USB-seriell Adapter, Timing Problem sind
so gut wie garantiert,
ich z.B einen Dragon, die 50 Euro ist er schon wert.
Jackenkoffer schrieb:> dazu brauchst du aber Ponyprog
das nicht mehr unterstützt wird und deshalb aktuelle AVRs nicht mehr
programmieren kann ...
Hallo, erstmal vielen Dank für die vielen Antworten. Ich hatte gehofft
das ich nach dem lesen eurer Antworten nicht enttäuscht bin, aber nun
ist es doch so:-)
Ja, ich habe jetzt den ganzen abend mal die links und avr-tutorial
durchgekaut und jetzt hab ich noch mehr fragen als vorher:-)
------------------------------------------------------------------------
------
Ok also ich möchte als start in die uC programmierung diesen
"Transistortester" von "Markus F." nachbauen.
http://www.mikrocontroller.net/articles/AVR-Transistortester
Was genau benötige ich dafür?
Ich zähle mal auf, was ich denke das benötigt wird:
1. ein USB ISP Programmer zB diesen:
http://cgi.ebay.de/AVR-USB-ISP-Programmer-ATMEL-ATMEGA-STK500-Neu-ATTINY-/370490000223?pt=Wissenschaftliche_Ger%C3%A4te&hash=item5642ecc35f
Die Programmüberspielung sollte auf jeden Fall via USB geschehen, weil
mein 2. rechner ein NetBook ist und keine COM- und LPT-ports hat.
2. eine Platine auf der ich den ATmega8 draufstecke um das .HEX file
draufzuladen
3. die Software "AVR Studio 4.18 (build 684)" in der ich das .HEX File
lade und es über USB auf die Platine mit dem ATmega8 kopiere
4. jetzt sollte das programm im ATmega8 überspielt sein und ich kann
pracktisch das IC abziehen und auf meine "Transitortester-Platine"
stecken und alles funktioniert wie beim Autor?!
Habe ich das so richtig beschrieben oder fehlen noch paar wichtige
punkte?
------------------------------------------------------------------------
------
In diesem Tutorial:
http://www.mikrocontroller.net/articles/AVR-Tutorial:_Equipment
ist im ersten 3tel unter "Selbstbau" eine schaltung mit diesem ATmega8.
Ist DAS so ein programmierbord auf dem man einen leeren ATmega8 steckt
um ihn mit dem USB ISP zu programmieren?
Wenn ja: an pin 9 und 10 ist noch ein 4MHz quarz + 2x22pF dran, brauche
ich diesen Oszilator, oder ist der im ATmega8 integriert? Ich hab
irgenwo gelesen das man den nicht braucht weil er bereits integriert
sein soll (interner RC-Oszillator)!?
...zB auf dem Schaltplan von Markus F. ist pin 9+10 unbelegt...also muß
der mega8 von alleine schwingen, oder sehe ich das falsch?
Auf dem Schaltplan ist auch eine 5V Spannungsversorgung abgebildet, die
kann ich auch dazu bauen, ABER 5V liefert der "USB ISP Programmierer"
für das Targetgerät, also benötige ich die Spannungsversorgung doch
garnicht, wenn ich sie doch vom 6 oder 10 poligen ISP-Stecker beziehen
kann!?
Ok und dann nochmal zu dem ATmega8-uC (mit seinen Endungen). Habe mir
die 5MB PDF runtergeladen....uiii da muß ich mir paar Tage frei nehmen
um das zu lesen/kappieren:-)
------------------------------------------------------------------------
---------------
Könnte man sagen, ...ich bestelle diesen ATmega8L-8PU (Gehäuse DIP28
schmal) für 2,39€ von hier, und mit dem kann ich auf jeden fall den
Transistortester bauen?
http://cgi.ebay.de/ATMega-8L-8PU-Atmel-ATMega8-AVR-Controller-DIP28S-/310218499373?pt=Bauteile&hash=item483a76a52d
Die technischen daten sagen mir garnichts, aber wenn ihr nach unten
scrolled dann steht dort ne menge zeugs was der kann.
Der hat (Taktfrequenz 0...8 MHz)...reicht das, oder soll ich lieber den
ATmega8-16PU bestellen, der ist mit 16MHz Takt etwas flotter....oder
brauch ich so eine speed erst garnicht? ...vom Preis her sind beide
gleich teuer.
------------------------------------------------------------------------
---------------
Noch eine letzte Frage zu dem LCD-Display: So ein Modul
(HD44780-kompatible) mit 2x16Zeichen gibts aus HK für 3,89€, kostenloser
Versand aber bestimmt 3-4 wochen wartezeit.
Wo bestellt ihr eure displays? Sollte ich mir nicht gleich ein größeres
4x20Zeichen zulegen, oder funktioniert ein größeres nicht bei dem
Transistortester + ATmega8 ?
vielen Dank an alle die mir geantwortet haben. Ich möchte am Anfang
nicht sooo viel falsch machen und auch keine unpassenden Geräte kaufen
die ich vielleicht nie benötige.
gruß Daniel
Hi
Deinen EBay Artikel und dazu ein Pollin-Board ist ein idealer Start.
Wenn du das Board selbst zusammenlötest kostet es "nur" 15 €. Und wenn
du schon bei Pollin bestellst, dann hast du auch die Quelle für weitere
Teile, z. B. einen RS 232 - USB Adapter. Den brauchst du für die
Kommunikation µC zu PC, nicht zum programmieren.
Grad wenn du VB programmierst, macht es riesig Spaß, den Controller als
Datensammler aufzubauen und diese dann an ein PC Programm zur Auswertung
zu geben. Daas Pollin Board bringt diese Schnittstellen mit und du hast
auch die Möglichkeit, andere µC zu programmieren.
Manchmal macht es Sinn, Schaltungen auf einem Steckbrett zu testen.
Danach ist einem Aufbau auf einer eigenen Platine nichts mehr entgegen
zu setzen. So verhinderst du Fehlaufbauten.
Gruß oldmax
Daniel V. schrieb:
> ...zB auf dem Schaltplan von Markus F. ist pin 9+10 unbelegt...also muß> der mega8 von alleine schwingen, oder sehe ich das falsch?
Das siehst du richtig; der Mega8 läuft mit dem internen RC-Oszillator
bei 1MHz.
So ist er übrigens auch werksseitig konfiguriert. Um den AVR zu
programmieren brauchst du also gar keinen Quarz.
> Der hat (Taktfrequenz 0...8 MHz)...reicht das, oder soll ich lieber den> ATmega8-16PU bestellen, der ist mit 16MHz Takt etwas flotter....oder> brauch ich so eine speed erst garnicht?
Weil der Meag8 mit 5V betrieben wird und nur mit 1MHz läuft ist es egal,
welche Version vom Mega8 man nimmt. Nimm also die, die gerade billiger
ist ;).
> Wo bestellt ihr eure displays?
Bei Pollin...
Zur Zeit haben die aber nicht allzu viele Displays im Angebot.
Nach wie vor gibt's kleine 2x16-Zeichen-LCDs für 1,95€ (Artikelnummer
120545). So eins habe ich für meinen Tester genommen.
Allerdings ist das nicht sehr schön anzuschließen (entweder per
Folienleiter-Buchse mit 1mm Kontaktabstand, oder man lötet den
Folienleiter runter und schließt es z.B. mit Kuferlackdrähten an).
> Sollte ich mir nicht gleich ein größeres> 4x20Zeichen zulegen, oder funktioniert ein größeres nicht bei dem> Transistortester + ATmega8 ?
Der Transistortester unterstützt nur 2x16-Zeichen-LCDs. Man kann
natürlich auch größere Displays anschließen, aber die zusätzlichen
Zeichen werden nicht genutzt; daher ist das sinnlos.
@oldmax (Gast)
Ok dann werde ich mir einen der beiden "USB ISP Programmer" bei ibey
bestellen, ich nehm den bunten der ist 1 euron billiger.
Das Pollin board von Pollin werde ich auch bestellen, dann hab ich schon
mal lötarbeit damits mir nicht langweilig wird:-)
>z. B. einen RS 232 - USB Adapter
Dieses teil habe ich dort in der suche nicht gefunden bei pollin...wie
heißt das nochmal genau und
wozu brauch ich das?
>Den brauchst du für die Kommunikation µC zu PC, nicht zum programmieren.
Hää? Ich dachte für die kommunikation zwischen USB und dem Pollin-Board,
bestelle ich diesen "USB ISP Programmer"?
Kommt da etwa nochwas dazwischen? ...na das wird ein Kabelsalat!
----------------------
@Markus Frejek
Erstmal vielen Dank für deine Arbeit an dem Transistortester und das
veröffentlichen des codes!
Wenn ich den Autor schon mal sprechen kann:
Welche Dateien und wieviele muß man in den uC reinkopieren? Ich habe
hier eine HEX, eine *german.EPP und dann noch einen ordner
"semiconductor_tester"...da hast soviele dateien drin das ich so erstmal
damit garnichts damit anfangen kann. Sind die wichtigen Dateien hier
drin:
semiconductor_tester/firmware/precompiled_m8 ??
>Weil der Meag8 mit 5V betrieben wird und nur mit 1MHz läuft.
Läuft der nur mit 1MHz weil du das in deinem programm so bestimmt hats
oder läuft dieser uC grundsätzlich nur mit 1MHz takt?
Ich werde mich auf jeden Fall wieder melden wenn ich das pollin-board
zusammengelötet habe und die restlichen teile alle habe.
Ich zähl das vorsichtshalber nochmal auf was ich wohl brauchen werde:
1. USB ISP Programmer mit USB-Kabel und ein 6 oder 10 poliges
Anschlußkabel zum Board.
2. Das "ATMEL Evaluations-Board Version 2.0.1 - Bausatz" von pollin 15,-
3. einige ATmega8 uC mit 8MHz (event. noch 28 pin Dip ic-sockel, am
Anfang weiß man ja nie was ich da tue :-)
4. eine Lochplatine oder Steckplatine, wo ich den Transistortester drauf
baue
5. ein 2*16 Zeichen display
6. Software AVR Studio 4 (die ich noch nicht bedienen kann)
...die restlichen bauteile sollte ich irgendwo rumliegen haben...
Ist das soweit alles was ich benötige zum loslegen, oder brauch ich noch
welche Module oder adapter?
---------------------
Übrigens wer eine Programmer der neuesten Generation haben möchte,
funktioniert ohne USB-Anschluß und benötigt auch keinen ATmegaXXX oder
programmierkentnisse, ist aber sehr teuer der sollte sich mal die
webseite www.pollin.de aber NUR mit einem "l"-Buchstabe aufrufen...
gruß daniel
Daniel V. schrieb:>>z. B. einen RS 232 - USB Adapter> Dieses teil habe ich dort in der suche nicht gefunden bei pollin...wie> heißt das nochmal genau und> wozu brauch ich das?
brauchst du jetzt noch nicht, das war wohl ein Vorschlag für
später falls du mal igendwann irgendwelche Daten vom mc zum PC
übertragen willst
@Hans Zarkov
Beide zu teuer?? der eine kostet 18,90 und der andere 16,90...geht das
noch billiger? Der USB-Programmer sollte aber schon die aktuellsten uC
beherschen, das AVR Studo wie auch Bascom für Basicprogrammierung.!
Hab nochwas vergessen zu fragen bevor ich losbestelle:
Wir haben bisher nur über den ATmega8 uC gesprochen, welche andere
kleinere uC Chips benutzt ihr dann haupsächlich?
Ich würde gerne mal so led-lauflicher und so kleinkramm programmieren,
dafür brauch ich doch nicht den großen uC...da gibts doch bestimmt so
kleine mit 8 oder 16 pins.
Wenn ich schon bestelle das ich dann die versandkosten spare und alles
in einem rutsch bestelle.
Also welche kleineren chips nutzt ihr für kleinere programme?
danke