ISP Programmieradapter

Gast #137373
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
Gast #137378
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)
Gast #137395
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
Gast #137396
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
Gast #137399
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

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren