Forum: Mikrocontroller und Digitale Elektronik ISP Programmieradapter


von avusgalaxy (Gast)


Lesenswert?

Hi, möchte mich den ISP Adabter von der Seite
http://rumil.de/hardware/avrisp.html nachbauen, da sind aber zwei.
Welchen sollte ich da nachbauen?

von Tobi (Gast)


Lesenswert?

den unteren

von avusgalaxy (Gast)


Lesenswert?

Danke Tobi

von avusgalaxy (Gast)


Lesenswert?

Ah ja, gehn da dann 10 Kabel weg? Beim oberen sind es nur 5

von Tobi (Gast)


Lesenswert?

theoretisch gehen 10 kabel weg, wenn du aber nicht unbedingt diesen
10poligen stecker brauchst kannst du doppelte oder unbeschaltete pins
auch selber weglassen und deine eigene steckerbelegng machen. aber
besser ist es diese zu lassen, da die 10polige standard ist

von avusgalaxy (Gast)


Lesenswert?

Also sind die 2 Dicken Leitungen plus und minus, oder?

von avusgalaxy (Gast)


Lesenswert?

Hi, noch eine Frage...

Die Anschlüße plus und minus sind klar, aber wohin kommen die anderen
zum ISP Programmierer( MOSI,MISO usw...)?

von Hubert (Gast)


Lesenswert?

Auf die entsprechenden Punkte des jeweiligen Kontroller

von avusgalaxy (Gast)


Lesenswert?

ja, das weiß ich schon, aber auf der anderen Seite, ich meine, daß was
ich selber zusammen Löte...

von Axos (Gast)


Lesenswert?

Also...Der unterschied zwischen beiden ist nur der stecker. du baust
jetzt einfach die schaltung so nach wie sie auf der von dir genannten
homepage abgebildet ist. in prinzip kannst du einfach den bauen,
welcher stecker dir lieber ist.

dann baust du so einen stecker auf dein board mit dem AVR und zwar
1:1.

SCK -> SCK
MOSI -> MOSI
MISO -> MISO
RESET -> RESET
(die pins stehen im Datenblatt des jeweiligen Controllers)

von avusgalaxy (Gast)


Lesenswert?

Vielen Dank, ich verstehe jetzt wie...

von avusgalaxy (Gast)


Lesenswert?

Beim Ponyprogramm steht :Hardware error, is the interface properly
connected? (-14)

Was kann da falsch sein, wenn ich brennen will?

von Thomas Burkhardt (Gast)


Lesenswert?

hast du unter Setup/Interface Setup den Adapter richtig ausgewählt? Dort
ist ein "Probe"-Knopf, wenns tut, dann sagt der einem das :)

von avusgalaxy (Gast)


Lesenswert?

ja, der Probe Knopf funktioniert---> Test OK

von avusgalaxy (Gast)


Lesenswert?

Upps, habe vergessen, den Prozessor auszuwählen...

Kennt zufällig noch jemand ein Blinklicht Programm, damit ich testen
kann, ob die Schaltung funktioniert. (AT90S2313)

Wäre super, danke avusgalaxy

von Thomas Burkhardt (Gast)


Lesenswert?

iss jetzt nicht dein Ernst, oder?

von avusgalaxy (Gast)


Lesenswert?

bin leider Anfänger

von avusgalaxy (Gast)


Lesenswert?

Hmm....

Ich brenne es mit dem Pony Programm.

Ich will nur eine LED blinken lassen. Hab die led mit minus
angesteuert, aber es passiert nichts.

Muß man nach dem brennen Reseten?

von Tobi (Gast)


Lesenswert?

schonmal das tutorial auf dieser seite angeschaut/ausprobiert?

ohne deinen source wirds zum ratespiel

von avusgalaxy (Gast)


Lesenswert?

Wenn ich das vom AVRStudio erstellte Programm (asm Datei) ind das Pony
Programm lade, und dann brenne, müßte das passen, oder?

Oder muß ich eine hex Datei in das Ponyprogramm laden?

von Tobi (Gast)


Lesenswert?

du musst die hex brennen! (genauer: intel hex format)

von avusgalaxy (Gast)


Lesenswert?

und wie kann ich die erstellen? ich komm echt nicht drauf

von Simon Küppers (Gast)


Lesenswert?

Im AvrStudio kompilieren..

Ich bezweifle dass diese Informationen nirgndwo zu finden sind..

von Tobi (Gast)


Lesenswert?

debug->select platform & device : ausgabe format auf hex einstellen
project->build : hex file erstellen

von Sf2 (Gast)


Lesenswert?

Ich glaub jetzt sollte man mal ein Punkt setzen !
Solche leute haben in einem Forum nix verloren.
Les dir erst mal das Tutorial auf dieser Seite durch und dann kannst du
fragen stellen....

von avusgalaxy (Gast)


Lesenswert?

dankeschön

von avusgalaxy (Gast)


Lesenswert?

Hi nochmal, weiß jemand, warum folgendes Programm nicht funktioniert?

Bei rcall pause springt er zur Pause, aber dann fängt er nach ret
wieder bei 0 an,anstatt an dem Punkt zurückzuspringen, da wo ich die
Pause aufgerufen habe.


.include "2313def.inc"       ;Definitionsdatei einbinden, ggf. durch
                             ;2333def.inc ersetzen

         ldi r16, 0xFF       ;0xFF ins Arbeitsregister r16 laden
         out DDRB, r16       ;Inhalt von r16 ins IO-Register DDRB
ausgeben

main:
         ldi r16, 0x01       ;0b11111100 in r16 laden
         out PORTB, r16      ;r16 ins IO-Register PORTB ausgeben

     rcall pause

         ldi r16, 0x02       ;0b11111100 in r16 laden
         out PORTB, r16      ;r16 ins IO-Register PORTB ausgeben

     rcall pause
         rjmp main           ;Sprung zur Marke "ende" ->
Endlosschleife


pause:
     ; =============================
;   Warteschleifen-Generator
;     10000000 Zyklen:
; -----------------------------
; warte 9999990 Zyklen:
          ldi  R17, $42
WGLOOP0:  ldi  R18, $D6
WGLOOP1:  ldi  R19, $EB
WGLOOP2:  dec  R19
          brne WGLOOP2
          dec  R18
          brne WGLOOP1
          dec  R17
          brne WGLOOP0
; -----------------------------
; warte 9 Zyklen:
          ldi  R17, $03
WGLOOP3:  dec  R17
          brne WGLOOP3
; -----------------------------
; warte 1 Zyklus:
          nop
; =============================

ret

von Tobi (Gast)


Lesenswert?

du bejutzt rcall ohne den stack zu initialiseren. wies geht steht im
tutorial.
es bringt nix sich sachen zusammenzukopieren ohne genau zu wissen was
die machen, lieber ordentlich von vorne anfangen - das bringt mehr...
bitte nicht angegriffen fühlen

von avusgalaxy (Gast)


Lesenswert?

Also ist der stack beim Reset immer auf 00?

von Tobi (Gast)


Lesenswert?

keine ahnung wo der ist, ich denk mal das fällt unter undefiniert. setz
ihn einfach auf einen richtigen wert (welcher das ist musst du schon
selber rausbekommen) und gut ist

von avusgalaxy (Gast)


Lesenswert?

Hi Tobi...

Bitte nicht lachen, aber wo kann man den einzelne bits setzen?

Nehmen wir an, man kann ein Bit namens "0" setzen.

Wenn Bit 0 nicht gesetzt, dann inc R18
Wenn Bit 0 gesetzt, dann dec R18

Wenn R18 = 00 dann lösche Bit 0
Wenn R18 = 1F dann setzt Bit 0

Ich hoffe, du verstehst mich, was ich meine.
Welche einzelnen Bits kann man da setzten? Oder muß man dazu eines der
32 Register nehmen?

Gruß Avusgalaxy

von Sf2 (Gast)


Lesenswert?

Jetzt les dir doch einfach diese sche.... Tutorials durch !
Da ist so zeug beschrieben. Und wenn du ein problem hast, versuchs erst
selber zu lösen, da ist ein viel grösserer lerneffekt dabei !

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.