Forum: Mikrocontroller und Digitale Elektronik avr starterkit


von Benni (Gast)


Lesenswert?

Nabend zusammen.

Ich bin ET-Stundent im 4 Semester.. wir fangen zzt endlich mal an uns 
mit interessanten sachen wie µC zu beschäftigen ^^

..was natürlich nicht heißen soll, dass mir endlose Fourierreihen oder 
3fach Integrale in n-dimensionalen Räumen keinen Spaß bereitet haben ;)

naja b2t: ich fand diese ganze sache mit den µC hochgradig interessant 
und da wir ein jahr lang C programmiert hatten, es aber nie angewandt 
wurde
war ich froh etwas gefunden zu haben.

Nun würde ich mir gerne ein avr starterkit zulegen um mich mal der 
ganzen Materie zu widmen.

Hängen geblieben bin ich bei:
http://www.eproo-student.de/index.php?module=artikel&action=artikel&id=373
http://www.pollin.de/shop/dt/MTY5OTgxOTk-/Bausaetze_Module/Bausaetze/ATMEL_Evaluations_Board_Version_2_0_1_Bausatz.html

Problem is folgendes.. ich hab natürlich son supermodernes notebook (win 
7 64bit) ohne rs232. Diesen ganzen Adapterkram trau ich ned.
Hab mich etwas weiter belesen und das entdeckt:

http://www.eproo-student.de/index.php?module=artikel&action=artikel&id=367

Meine frage ist jetzt ist es sinnvoll sich das stk500/mkll gleichzeitig 
zu holen?
ist das mkll ein kompletter ersatz für rs232? also dass ich es mittels 
jtag programmieren kann hab ich mitbekommen.. aber kann ich damit den µC 
auch steuern? so wie mit putty über rs232 halt..

von Thomas (kosmos)


Angehängte Dateien:

Lesenswert?

AVRISP kann halt kein JTAG, HV Programming zum normalen Programmieren 
mittels USB ist es aber sehr gut geeignet.

Eine alternative wäre der AVR Dragon, der kann oben genannte Dinge aber 
irgendeinen Programmiermodus für die ganz kleinen Tinys nicht.

Man bräuchte noch ein Gehäuse zum transportieren und einen 
Nullkraftsockel zum Einlöten dann kann man die µCs sehr leicht ein- und 
auslegen.

von Benni (Gast)


Lesenswert?

mhm danke erstmal.

das problem ist, dass mir die ganze materie total neu ist.
ich will eigtl definitiv das stk500.. da hab ich alles drauf was ich 
brauch.. schicke leds n paar taster und gut is ^^

ich wollt mich erstmal aufs programmieren in C konzentrieren und schnell 
meine ergebnisse aufm bildschirm oder via LEDs sehen.

tja ob das alles mit dem avrisp als ersatz für die rs232 aufm stk500 
geht is die frage :P

von Benni (Gast)


Lesenswert?

ich will quasi genau das machen nur in C :P

http://www.youtube.com/watch?v=1qZO1OtjoJY

von Michael G. (let)


Lesenswert?

Das AvrISPmkII ist ein reines Programmiergerät, ist also nur zu Flashen 
des Controllers geeignet. Für eine Kommunikation mit dem PC geht kein 
Weg an RS232 vorbei. Jedenfalls nicht ohne Klimmzüge.

Wenn es aber "echtes" RS232 ist funktionieren die USB/RS232 Konverter 
ohne zu murren. Auch mit dem STK500. Problematisch sind 
Programmiergeräte wie sie auf dem Pollin Board drauf sind (Ponyprog). 
Die sprechen kein RS232, sondern versuchen das ISP Protokoll der AVRs 
direkt nachzubilden. Mit einem Konverter ist das bestenfalls nur 
langsam. Programmiergeräte wie sie auf dem STK500 verbaut sind haben 
einen eigenen Controller die die Flash-Daten per RS232 häppchenweise 
entgegennehmen und das ISP Protokoll selbst abwickeln.

Also: Das AvrISPmkII kann man dazu verwenden um ohne RS232 Programme auf 
das STK500 zu übertragen. Evalboard und Programmiergerät auf dem STK500 
(zwei Teile auf einer Platine) sind mit einem Flachbandkabel verbunden. 
Das muß man nur abziehen und stattdessen den AVRisp einstöpseln. 
Datenübertragung vom STK500 zum PC geht damit aber nicht.

Mit JTAG/debugWire kann man Programme übertragen und diese dann u. a. in 
Einzelschritten ausführen lassen. Das geht aber weder mit dem STK500 
Programmierteil noch mit dem AVRisp. AVRDragon und JTAGICEmkII können 
das.

von Debugger (Gast)


Lesenswert?

Würde mich auch nicht von den Adaptern abschrecken lassen. Ich habe 2 
verschiedene und beide laufen mit beigelegtem treiber eiwandfrei (win7 
x64)

von Benni (Gast)


Lesenswert?

ahh es lichtet sich langsam :)

also mir ist es wichtig mit dem PC kommunizieren zu können..
das heißt ich komm wohl nich um rs232 rum.. ich hab jetzt aber schon 
total oft gelesen, dass es da probleme bei usb->seriell geben soll

hat jemand da erfahrung?
kann ich mit sonem adapter sicher flashen und UART oder wie das heißt 
für die steuerung/auslesen via PC benutzen?

mein notebook hat übrigens auch n expresscard slot..

von Benni (Gast)


Lesenswert?

mhm jemand ne ahnung?

von Michael G. (let)


Lesenswert?

Bislang hatte ich nur mit 'intelligenten' Programmern zu tun wie das 
STK500 oder AVR-Prog (AVR910), die ich bisher ausschließlich an einem 
Konverter betrieben habe. Das STK500 habe ich allerdings nicht mehr.
Desweiteren hantiere ich laufend mit FT232 bzw. CP2102 basierten 
USB->UART Konvertern für Trace Ausgaben und zum Programmieren von 
LPC11xx/13xx/17xx/23xx/24xx und STM32. Kein PC mit dem ich zu tun habe 
hat noch eine RS232 Schnittstelle.
Probleme mit Konvertern habe ich nur an einem PC: Wenn der aus dem 
Sleepmode hochkommt, startet der Konverter nicht den ich dort für die 
LPCs benutze. Den muß ich dann einmal abziehen und gleich wieder 
einstecken.
Bei einem normalen Start geht es. Allerdings betreibe ich den an einem 
USB Hub. Vielleicht liegt es daran. Maus und Tastatur sind direkt am PC 
eingesteckt.

Als unzuverlässig würde ich externe Festplatten mit USB Anschluss 
bezeichnen. Das geht stundenweise gut, im Dauerbetrieb verlieren die 
(ich habe drei) gerne mal die Verbindung.

von Benni (Gast)


Lesenswert?

wow klingt eigtl. sehr vielversprechend. kann man über so einen uart 
slot alles erledigen was mach auch per rs232 machen hätte können?

ich hatte mich glaub ich verschrieben.. wollte nämlich stk500 über rs232 
statt uart auslesen/steuern (also nich porgrammieren jetzt)

aber wenn das über uart auch alles möglich is gehts ja auch so..

von Martin e. C. (eduardo)


Lesenswert?

Benni schrieb:
> mein notebook hat übrigens auch n expresscard slot..

dann kauft ein RS232 expresscard wie z.B.
http://cgi.ebay.de/LogiLink-ExpressCard-1x-Seriell-Express-Card-RS232-/220620231470?pt=PCMCIA_Cards&hash=item335dfd932e 
und gut ist!
Damit kanns du dein STK500 über RS232 flashen.

von Benni (Gast)


Lesenswert?

auch steuern? will nur sicher gehen..
hab gelesen dass man da vorsichtig sein muss, da manche quasi usb statt 
den PCIe anschluss nutzen

von Mike (Gast)


Lesenswert?

Nimm Arduino.

Hat nen Bootloader, Du brauchst also kein Programmiergerät.
Haken: Im moment schwer erhältlich, weil Atmel keine Controller liefert.
Dennoch gibt es das Teil hier (100%kompatibel)
http://www.lipoly.de/index.php?main_page=product_info&products_id=161069

Da hast du alles was Du brauchst, kann man in Arduino, in C und in 
Assembler programmieren.

von Benni (Gast)


Lesenswert?

mhm ne ich will schon definitiv das stk500.. brauch erstmal lämpchen und 
taster etc.. will mich doch erstma in die materie reinfinden.

zzt ich das problem einfach nur diese gammelige r232 schnittstelle.
Ich brauch ne lösung, womit ich flashen und mit dem PC kommunizieren 
kann und das alles auf dem stk500.

Nun scheint ein usb->rs232 adapter oder epresscard die lösung zu sein.
Nun hab ich bei beiden varianten von problemen gehört.. von wegen keine 
echte rs232 schnittstelle etc.
was denkt ihr denn wäre die bessere variante?

von Martin e. C. (eduardo)


Lesenswert?

Ich habe ein Laptop mit eine PCMCIA und eine RS232 PCMCIA Card es 
funktioniert Fehlerfre! allerdings habe ich keine Ahnung ob es mit 
"expresscard slot" genau so ist bwz. genau so Funktioniert, ich würde ja 
sagen.

von Benni (Gast)


Lesenswert?

so es scheint so dass expresscard auf jeden fall besser funzen soll als 
usb adapter, solange es sich um eine handelt, welche nich auch nur die 
usb anschlüssen im express slot benutzt.

ich habe einen 34mm epxresscard slot

kann mir jemand von erfolg berichten mittels der richtigen expresscard, 
wo ich das stk500 flashen und mit dem PC kommunizieren kann?

Danke erstmal für die vorige Hilfe!! :)

von Michael G. (let)


Lesenswert?

Da will es aber einer genau wissen ;)

Der Reihe nach:

RS232 beschreibt was sich auf den Datenleitungen zwischen zwei Geräten 
abspielt. Ein UART ist Teil des Controllers/PCs mit dem du es 
softwareseitig zu tun hast. Das Ding setzt die Datenworte in ein 
serielles Signal um. Das ist aber noch nicht ganz RS232. Die Pegel 
müssen erst angepasst werden, da der UART mit 5V (oder 3.3V) Logikpegel 
arbeitet. RS232 verlangt ein Signal das z. B. mit +/- 9V arbeitet 
(3..20V). Also auch negative Spannungen. Pegelwandler wie der MAX232 
machen das. Zudem muß das ganze noch invertiert werden. Macht der MAX 
auch.
Da diese Konverter ICs auch mit Logikpegeln arbeiten kann man den 
Pegelwandler auch weglassen. Sobald eine Seite aber einen verwendet muß 
die andere das natürlich auch tun. So ist es auch beim STK500 und den 
fertigen USB Adaptern.

Warum es bei den Konvertern klemmen kann:
RS232 definiert neben den Datensignalen RX + TX noch weitere Signale zu 
Ablaufsteuerung wie RTS,CTS,DTR und noch irgendeins. Die meisten Geräte 
benutzen diese Leitungen nicht oder falls sie es doch tun, werden sie 
tatsächlich zur Ablaufsteuerung verwendet. Soweit kein Problem. Jetzt 
kommen aber manche daher und benutzen diese Signale als zusätzliche 
Datenleitungen um quasi einen mehr oder weniger universellen 
Parallelport zu realisieren. Und da knallt es dann schonmal v.a. wenn 
ein besonderes Timing eingehalten werden muß.
Ein berühmt berüchtigtes Beispiel dafür ist eben dieses Ponyprog. Dein 
begehrtes STK500 gehört aber nicht dazu. Der UART der AVRs auch nicht.

Zur Frage USB/Expresscard:
Ich würde USB nehmen weil ich da die geringsten Überraschungen erwarte 
und man so ein Teil auch mal an einen PC anstöpsel kann. Bei den 
Treibern vertrauen ich den USB Teilen auch mehr da die verbauten ICs 
weit verbreitet sind und es Treiber für praktisch alle Bestriebssysteme 
gibt.
Nur wenn du mit Frickelhardware arbeiten willst kannst du USB vergessen.

Und zu guter Letzt:
Das STK500 hat zwei RS232 Anschlüsse. Einen für das Programmiergerät und 
einen für den UART. Jeweils mit einem MAX232 dazwischen. Die lassen sich 
beide mit USB Adaptern verwenden. Aber sicherlich auch mit Expresscard.

Alle Klarheiten beseitigt?

von Benni (Gast)


Lesenswert?

Micheal.. ich DANKE dir für diese profundliche detaillierte beschreibung 
des problems :)

ich werd mir usb adpater kaufen und schauen obs klappt.

Jetzt hab ich das endlich mit dem max232 undso kapiert.. war auch immer 
so undurchsichtig. Da ich mir ja nich hardcoremäßig was baue sondern 
erstmal zufrieden bin, dass ich das stk500 damit bedienen kann, wirds 
schon klappen.

danke und gute nacht!

von Benni (Gast)


Lesenswert?

mhm auch wenn mein problem gelöst scheint hab ich einfach interesse 
halber noch paar fragen :)

du sagtest ponyprog zb. besetzt die steuerungsletungen als 
datenleitung..
bedeutet dies, dass es nur ein softwareseitiges problem is? ich nehm 
andere software und gut is?

kannst du hardwarefrickelei genauer definieren? hat das was mit dem 
timing zu tun? avr is generell davon unbeeinträchtigt?

grüße

von Michael G. (let)


Lesenswert?

Ein softwareseitiges Problem, ja. Verstärkt durch die Eigenart von USB. 
Wenn ein UART so benutzt wird wofür er gedacht ist, arbeitet das Ding 
autark. Man schickt ihm Daten und er macht etwas standardkonformes 
daraus. Ponyprog geht hin und setzt die Datenleitungen direkt per 
Software auf high oder low. Bei einem herkömmlichen UART funktioniert 
das auch ganz gut. USB arbeitet aber paketorientiert. Bei USB 2.0 
passiert genau jede Millisekunde etwas. Da kann man nicht zu jedem 
beliebigen Zeitpunkt den Zustand der Datenleitungen ändern. Dann kommen 
möglicherweise auch noch Eigenarten der Treiber hinzu.

Auf der Controllerseite kann man per Software praktisch jedes Protokoll 
realisieren da ein µC sich ziemlich berechenbar verhält. Auch einen UART 
kann man sich programmieren, obwohl wenn es relativ viele Ressourcen 
benötigt. Zumindest der Empfang.
PC und USB sind aber nur sehr bedingt echtzeitfähig. Damit ein 
softwaregesteuertes Protokoll zu implementieren um sich auf der anderen 
Seite einen Controller zu sparen, ist für mich gefrickel.

von Benni (Gast)


Lesenswert?

wenn ich das jetzt richtig verstanden habe, is durch den max232 aufm 
stk500 alles geklärt und ich muss mir kein kopf machen oder?

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.