PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Problem mit Microcontroller



dub
03.11.2011, 17:17
Hi,

ich schreibe hier, weil mir die "ersten Schritte" mit meinem Microcontroller etwas Probleme bereiten.
Zum Einstieg habe ich mir den Microcontroller "MK1" von myAVR bestellt - die Bauteile (Widerstände, Kondensatoren, ...) habe ich auf die Platine gelötet. Das Board benötigt keinen externen Programmer.
Nun habe ich folgendes Problem - ich kann mit dem Board nicht kommunizieren, es wird von der bereitgestellten Software über keinen COM/LPT-Port erkannt: Ich habe mir ein ISPzuUSB-Kabel für die Programmierung, sowie ein R232zuUSB-Kabel für die Kommunikation gekauft, sowie alle benötigten Treiber installiert.
1) Hier mal ein Bild der Kabel - ich hoffe ich habe die richtigen Kabel gekauft?!
http://img341.imageshack.us/img341/9347/sam0531.jpg (http://imageshack.us/photo/my-images/341/sam0531.jpg/)
http://img809.imageshack.us/img809/6499/sam0534t.jpg (http://imageshack.us/photo/my-images/809/sam0534t.jpg/)

Beim Anschluss des ISPzuUSB-Kabel leuchtet die "Power"-Diode am Board.

2) Ist das Board möglicherweise schlecht gelötet. Ich weiß von einem Bild kann man auf die Qualität schließen, aber vielleicht sticht euch ja etwas ins Auge - sowas wie "das kann ja gar nicht funktionieren".

http://img252.imageshack.us/img252/9490/sam0541.jpg (http://imageshack.us/photo/my-images/252/sam0541.jpg/)

Einen Lösungsansatz hätte ich dann noch, um zu sehen, ob korrekt gelötet wurde. Einfach mit einem Messgerät Verbindungen durchmessen (es gibt ein Protokoll dafür, um dies zu überprüfen). Jedoch muss ich sagen, dass sobald ich die 9V-Batterie an das Board anschließe, die "Power"-LED leuchtet, also so falsch kann es doch gar nicht gelötet sein.

Danke.

Thegon
03.11.2011, 19:03
Hi,

Einen Lösungsansatz hätte ich dann noch, um zu sehen, ob korrekt gelötet wurde. Einfach mit einem Messgerät Verbindungen durchmessen (es gibt ein Protokoll dafür, um dies zu überprüfen). Jedoch muss ich sagen, dass sobald ich die 9V-Batterie an das Board anschließe, die "Power"-LED leuchtet, also so falsch kann es doch gar nicht gelötet sein.


Hmm, naja nur weil die Led leuchtet heißt das leider noch nicht, dass das Board in Ornung ist ;-)

Also der Programmieradapter, ist das wirklich ein ISP zu USB Adapter? Wenn das nämlich so ein ganz gewöhlicher LPT adapter ist, dann wird das vermutlich, ja sogar ziemlich sicherlich nicht funktionieren, denn diese Adapter sind keine "echten" schnittstellen, die haben nicht alle Pins belegt, und wenn du Pech hast, auch welche, die du brauchtst.
Wenn es ein ISP adapter ist (wobei ich habe noch nie einen mit SUB-D Anschluss gesehen, aber egal), dann wird´s wohl eher am Board liegen.
Da hilft nichts, lötstellen Prüfen bzw. durchmessen. (die interessanten, die für die Programmierung nötig sind, versteht sich...)
Man könnte natürlich ein Paar dinge überprüfen, sofern ein Multimeter zur Verfügung steht:
Batteriespannung OK, auch wenn angeschlossen?
Versorgungsspannung (5V von Spannungsregler) ok?
Versorgungsspannung direkt an den Pins des AVR?
Villeicht eine Bahn versehentlich (lötspritzer) mit GND Verbunden?

Kritisch aussehende Kontakte nochmals nachlöten...

Man muss halt versuchen, das Problem ein bisschen einzugrenzen, denn "geht nicht" kann viele Ursachen haben :)

Viel Glück bei der Fehlersuche!

Mfg Thegon

Hubert.G
03.11.2011, 19:36
Dieses Board kannst du nur mit einem echten LPT Anschluss und Kabel programmieren. USB-LPT-Adapter funktionieren nicht.
Mich wundert es das das immer noch verkauft wird.

dub
06.11.2011, 13:52
Danke für die Tipps.

Ich habe nun durchgemessen und ich erhalte bei den meisten zu messenden Relationen 0,4 statt den gewünschten 0,8 Ohm. Bei manchen Relationen (z.B. zwischen HC125N PIN 1 und den 5 Dioden) erhalte ich 0 Ohm als Messergebnis. Überhaupt scheinen die Dioden beim Löten kaputt gegangen zu sein.
Egal, eventuell bestelle ich mir dieses Einsteigerboard noch einmal - aber diesmal vorgelötet.


Zitat von Hubert.G:
Dieses Board kannst du nur mit einem echten LPT Anschluss und Kabel programmieren. USB-LPT-Adapter funktionieren nicht.
Mich wundert es das das immer noch verkauft wird.
Im "RN-Wissen" steht zwar ein ausführlicher Artikel darüber, wie so ein AVR-ISP Programmierkabel selbst gebaut werden kann, jedoch verstehe ich nicht ganz, wo ich dieses "anschließen" soll. Also mir ist klar, dass eine Seite des Kabels an den 25poligen-Port gehört, aber an welche Schnittstelle gehört die andere Seite des AVR-ISP Programmierkabels? Generell bin ich mit solchen flachen Kabeln nicht vertraut - wo kann man diese kaufen? Bei Conrad habe ich diese zum Beispiel noch nicht gesehen. Beziehungsweise jetzt sehe ich das erst: Gehört dieses "andere Ende" des AVR-ISP Programmierkabels an einen Programmer wie den "mySmartUSB light" - und das, obwohl ich bei diesem Board angeblich keinen Programmer benötige. :confused:

PICture
06.11.2011, 14:33
Hallo!


Mich wundert es das das immer noch verkauft wird.

Mich wundert nur, dass es immernoch gekauft wird, weil ohne Käufer geht angeblich der Verkauf nicht mehr. :lol:

Hubert.G
06.11.2011, 15:22
Dieses Board benötigt keinen Programmer, allerdings ein LPT-Kabel und eine echte LPT-Schnittstelle am PC.
Es nützt dir auch ein anderer Programmer nichts, es gibt keine Anschlussmöglichkeit dafür. Es sei denn du bastelst dir selbst eine.

Edit: Bestell dir dieses Board nicht mehr, es ist total veraltert.

Torrentula
06.11.2011, 16:12
Mich wundert es das das immer noch verkauft wird.




Mich wundert nur, dass es immernoch gekauft wird, weil ohne Käufer geht angeblich der Verkauf nicht mehr.


Wow^^ LPT und 9 Pin Sub-D.. Willkommen in der Steinzeit :)

So wie es aussieht bringt dir dein Board leider granix, wenn du dir nicht wie bereits vorgeschlagen selber was bastelst.

Besser ists einen AVRISP mkII (dieser (http://www.reichelt.de/Programmer-Entwicklungstools/AT-AVR-ISP/index.html?ACTION=3&GROUPID=2969&ARTICLE=45040&SHOW=1&START=0&OFFSET=16&;PROVID=2402)) zu kaufen und dann eben die relevanten Pins des µC (MISO, MOSI, SCK, RESET; kann man alles im Datenblatt finden --> beim Arbeiten mit microcontrollern kommt man um das Datenblatt fast nie herum) auf einen 6-poligen Wannenstecker (sowas (http://www.reichelt.de/Pfosten-Wannenstecker/WSL-6G/index.html?ACTION=3&GROUPID=3231&ARTICLE=85732&SHOW=1&START=0&OFFSET=16&;PROVID=2402)) herauszuführen. Dann könnntest du sogar noch dein Board verwenden, vorausgesetzt es ist alles richtig verlötet und es sind keine "kurzen" drin (mit Multimeter überprüfen).

MfG

Torrentula

EDIT:


Überhaupt scheinen die Dioden beim Löten kaputt gegangen zu sein.
Egal, eventuell bestelle ich mir dieses Einsteigerboard noch einmal - aber diesmal vorgelötet.

Bloß nicht! Da muss ich Hubert beipflichten.

Dann kaufe dir lieber ein RN-Control (http://www.shop.robotikhardware.de/shop/catalog/product_info.php?cPath=64&products_id=10) (bedrahtete Teile --> Teile kann man auch als Anfänger recht gut auswechseln) oder ein Baby Orangutan B-328 (http://www.shop.robotikhardware.de/shop/catalog/product_info.php?cPath=64&products_id=238) (in SMD (Surface Mount Device, Teile sind direkt auf die Oberseite der Platine gelötet), ziemlich fitzelig wenn man da was reparieren will...

dub
07.11.2011, 17:26
Erstmal danke für eure Antworten und Tipps! =D>


Zitat von Torrentula:Dann kaufe dir lieber ein RN-Control (bedrahtete Teile --> Teile kann man auch als Anfänger recht gut auswechseln) oder ein Baby Orangutan B-328 (in SMD (Surface Mount Device, Teile sind direkt auf die Oberseite der Platine gelötet), ziemlich fitzelig wenn man da was reparieren will...
Ja, der Microcontroller Baby Orangutan wurde mir auch schon von anderen Usern hier empfohlen. Mich fasziniert dieses Board vor allem deswegen, weil es sehr klein und kompakt ist - absolut spitze.

Doch ein paar Fragen hätte ich noch:
1) Der Microcontroller Baby Orangutan wird mit +5 Volt bis +13.5 V betrieben. Heißt das, dass ich das Board immer mit einer 9V-Blockbatterie betreiben könnte?
Wo versorge ich das Board überhaupt mit Strom? Es gibt zwei Ports – „VIN“ und „GND“ – ich nehme an, hier muss das Board mit Strom versorgt werden.

2) Welche Hardware (z.B. Kabel, Programmer, ...) benötigt man, um dieses Board zu programmieren und welche Software kann zum Programmieren verwendet werden (soweit ich gelesen habe, ist es möglich mit BASCOM oder AmtelStudio zu programmieren) bzw. ist es möglich, dieses Board mit WinAVR zu programmieren? Falls ja, benötige ich dann wieder einen speziellen Programmer, um mit dieser Software programmieren zu können?
Falls nein, gibt es irgendeine kostengünstige Alternative, bei der ich nicht gleich für Software und Programmer beinahe 70 Euro oder mehr ausgeben muss?

3) Ist beim Einlöten der Stiftleisten besondere Vorsicht geboten oder ist das Board an den Stellen, an denen gelötet werden muss, eher unempfindlich?

4) Soweit ich gelesen habe, ist es mit diesem Board auch möglich verschiedene Sensoren anzuschließen. Wo müssten diese dann angeschlossen werden (evt. Anschluss an jedem Port mit digitalem Ein- und Ausgang möglich?) – bzw. kann man dies überhaupt so allgemein für alle Sensoren sagen?

5) Welche Hardware (z.B. Kabel, ...) benötigt man, um mit diesem Board zu kommunizieren?
Aus der Anleitung geht hervor, dass die Ports „PD0“ und „PD1“ dafür verwendet werden können, um ein USB-zu-Seriell-Modul (http://www.shop.robotikhardware.de/shop/catalog/product_info.php?cPath=73&products_id=225) anzuschließen.
Auf der Homepage dieses Händlers heißt es: „Dieses Modul lässt sich an die RX und TX Leitung anschließen und bietet dann eine USB-Schnittstelle die einen virituellen COM-Port am PC bereitstellt.“ Doch was ist eine RX- und TX-Leitung? Muss dieses Modul extra mit Strom versorgt werden? Soweit ich richtig gelesen habe, wird über den USB-Port 3,3V Spannung bezogen. Ehrlich gesagt kann ich mir nicht vorstellen, wo dieses Modul überhaupt an den Microcontroller rauf soll? Es wird zwar ein Treiber mitgeliefert, aber wird nach Anschluss des Boards an den PC, das Board dann automatisch erkannt?

6) Wird sonst noch etwas benötigt, um das Board zu betreiben?

oberallgeier
07.11.2011, 18:34
Hallo dub,

nun ist das Kind ins Wasser gefallen - oder vielmehr die parallele Schnittstelle. Aber Du hast das Board nun mal.
... Microcontroller "MK1" von myAVR bestellt ... benötigt keinen externen Programmer ...Ich habe mir gerade die Verkaufsunterlagen angesehen (online) - das Board habe ich nicht. Und da ist mir aufgefallen, dass Du gute Möglichkeiten hast, ein bisschen näher an moderne Lösungen zu kommen.

Ich vermute, dass Du keinen Controller mit Bootloader hast. Also würde ich Dir empfehlen einen der moderneren USB-Programmer zu kaufen. Kaufen - nicht selber machen. So - nun musst Du Dir eine DIY-Lösung für die ISP-Schnittstelle basteln. Die halbe Arbeit ist ja ziemlich easy: der PORTB ist von 0 bis 5 auf ner Steckerleiste. Schön. Denn: PB3 ist MOSI, PB4 ist MISO und PB5 ist SCK. Das sind die wesentlichen Verdächtigen für die ISP-Programmierung. Auch der PC0 ist noch auf ner Steckerleiste - das ist der /RESET. GND und Vcc musst Du Dir selber suchen, das erkenne ich auf die Schnelle nicht.

Nun fängt die Frickelei an. Du könntest jetzt von (D)einem üblichen ISP10- oder ISP6-Stecker (klick hier) (http://www.rn-wissen.de/index.php/RN-Definitionen#ISP_-_Programmierstecker) die Drähte von den entsprechenden Kontakten fliegend zum Board ziehen. Das geht schon mal, vermutlich wirst Du Dir später Flachbandkabel zaubern - eine Seite ein 10-fach (ode 6-fach) Buchsenstecker und die andere Seite mit Steckerleisten für Dein Board. Sieht etwas sch... - ähhh - schaurig aus, aber dann kannst Du mit nem "normalen" Programmer arbeiten.

Vielleicht hilft Dir dieser Vorschlag ? Würde mich freuen. Ich finde es auch reichlich verwegen (wenn nicht frech), wenn Verkäufer schlicht sagen "Auslauf ...." und nicht hinweisen, wieso das so ist.

dub
08.11.2011, 18:22
@ oberallgeier: Vielen Dank für die Mühe, die du dir gemacht hast! Leider muss ich mitteilen, dass mein selbst gelöteter Microcontroller nicht funktioniert (nicht funktioniert heißt, dass ich beim Durchmessen die falschen Werte - teilweise auch 0, statt der 0,8 Ohm - erhalte).
Bevor ich hier weiter wie ein Irrer herumbestelle :), habe ich mir nun einmal das Einsteigerboard "PICkit 1 FLASH Starter Kit" von Microchip von einem Kollegen geliehen > http://ww1.microchip.com/downloads/en/devicedoc/40244a.pdf. Wenn ich mit Microcontrollern etwas besser vertraut bin, würde ich mir dann gerne den "Baby Orangutan B-328" bestellen. Ich habe mir dazu nun nochmals die Anleitung durchgelesen - liege ich damit richtig, dass ich ausschließlich folgende Hard-/Software zum Programmieren-/Betreiben dieses Boards benötige:
- Programmer USB Atmel MK2
- (optional: USB zu Seriell Modul)

Torrentula
08.11.2011, 18:37
liege ich damit richtig, dass ich ausschließlich folgende Hard-/Software zum Programmieren-/Betreiben dieses Boards benötige:
- Programmer (http://www.shop.robotikhardware.de/shop/catalog/index.php?cPath=88) USB (http://www.rn-wissen.de/index.php/USB) Atmel MK2
- (optional: USB (http://www.rn-wissen.de/index.php/USB) zu Seriell Modul)


Also wenn du die AVRs von Atmel verwendest benötigst du zum programmieren einen AVRISP mkII (den Programmer den du angegeben hast). Das USB zu seriell modul wird nur benötigt wenn du den µC mit deinem PC kommunizieren lassen möchtest.



Einsteigerboard "PICkit 1 FLASH Starter Kit" von Microchip von einem Kollegen geliehen


Es gibt mehrere Architekturen und Familien von Microcontrollern von verschiedenen Herstellern. Die beliebtesten unter Bastlern sind die Atmel AVRs und die PICs von Microchip. Das PICkit wird benutzt um die PICs zu programmieren, folglich ist auf dem Starterboard von deinem Kollegen ein PIC verbaut. Der AVRISP mkII wird benutzt um die Atmel AVRs zu programmieren (auf dem Orangutan verbaut).

Es ist eigentlich egal mit welcher µC-Familie man anfängt, man sollte allerdings wissen, dass es zwischen den veschiedenen µCs unterschiede gibt. Diese wirst du aber kennenlernen, je nachdem für welchen µC du verwendest.


Um es mit Dave Jones zu sagen: "It doesn't matter a rat's ass which microcontroller you choose to start of with! If you don't have a clue toss a damn coin!" :D

MfG

Torrentula

Thegon
08.11.2011, 21:07
Also Boards gibts sicherlich genug, wobei, ich finde die ziemlich unpraktisch, da eigentlich alle Komponenten nur an einen fix vorgegeben Pin angeschlossen sind und mit diesen Stiftleisten und Buchsenabgreifmöglichkeiten, ich weiß nicht, geht sicher, aber ich persönlich finde da ein Steckbrett um ein vielfaches komfortabler.
Man kann sich Flexible Steckbrücken mit Kupferdraht/Litze/Schrumpfschlauch basteln, damit ist man wirklich schnell.

Ein gutes einsteigertutorial (über die Grundschaltungen ) ist das aus dem RN- Wissen, finde ich, hier klicken (http://www.rn-wissen.de/index.php/AVR-Einstieg_leicht_gemacht)
Ich finde, man versteht die Beschaltung auch viel besser als wenn man den AVR einfach in eine fertige Platine einsteckt.

Aber natürlich, ist nur meine Meinung und das ist ja auch jedem seine sache, ob er nun lieber ein fertiges Board verwendet oder eben mit Steckbrett.

Mfg Thegon