PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Anfenger Frage ? ? ?



Ferdinand
06.05.2005, 21:11
Hi

was mus ich endern wen ich hir


; ---------------------------------------
; Test-Projekt: blinkende LED an Port PB0
; ---------------------------------------
;
.include "2313def.inc" ;Definitionsdatei laden
.cseg ;Beginn eines Code-Segmentes
.org 0 ;Startadresse=0
;
start: ldi r16,low(ramend) ;Stackpointer auf
out spl,r16 ;RAM-Ende setzen
ldi r16,0b00000001 ;PortB: PB0 auf Ausgang
out ddrb,r16 ;setzen
clr r16 ;Anfangswert setzen
;
loop: out portb,r16 ;Daten an PortB ausgeben
rcall wait ;Warteschleife aufrufen
inc r16 ;Datenwert erhöhen
rjmp loop ;Schleife neu beginnen
;
; Warteschleife (ungefähr 500ms)
;
wait: ldi r19,10 ;r19, r18 und r17
clr r18 ;ergeben zusammen
clr r17 ;einen 3-Byte-Zähler
wait1: dec r17 ;niedrigstes Byte -1
brne wait1 ;0 erreicht? nein -> Schleife
dec r18 ;mittleres Byte -1
brne wait1 ;0 erreicht? nein -> Schleife
dec r19 ;höchstes Byte -1
brne wait1 ;0 erreicht? nein -> Schleife
ret ;Schleifenende, Rückkehr


stat minus plus schalten wiel

danke

by Ferdinand

uwegw
06.05.2005, 21:56
wie meist du das? rückwärts zählen? pegel am port invertieren damit zb ne led im entgegengesetzten moment leuchtet?

Ferdinand
06.05.2005, 22:18
pegel am port invertieren damit zb ne led im entgegengesetzten moment leuchtet?

genau das meinte ich blos ohne inventiren

sondern direkt mit plus schalten

danke

by Ferdinand

Ferdinand
06.05.2005, 22:27
dort ist der auf bau test 1 ich möchte die led jetst anderst herum schalten
https://www.roboternetz.de/phpBB2/zeigebeitrag.php?t=849

also anode kadote fertauschen das heist das der chip ein ne plus spanung aus gibt

ales klar ?

danke

by Ferdinand

uwegw
06.05.2005, 23:18
also anode kadote fertauschen das heist das der chip ein ne plus spanung aus gibt

in dieser richtung können zumindestens die älterern avrs nicht soviel strom leifern dass es für eine led reicht... bei den neueren geht es aber hab ich gehört...

wenn du beim blinken bleibts musst du nichts am programm ändern, denn der pin schaltet jetzt ständig zwischen plus und minus hin und her. wenn du jetzt also an den einem port eine led nach plus und eine zweite nach masse schaltest, blinken sie immer abwechselnd...

Ferdinand
07.05.2005, 00:10
[quote]
wenn du beim blinken bleibts musst du nichts am programm ändern, denn der pin schaltet jetzt ständig zwischen plus und minus hin und her. wenn du jetzt also an den einem port eine led nach plus und eine zweite nach masse schaltest, blinken sie immer abwechselnd...

das tuht irgend wie nicht

ich wil eigentlich einen "ULN2803A" steuern der einen motor mit 12V schaltet

Danke

by Ferdinand

uwegw
07.05.2005, 11:21
also bvraucht der uln nen 5V-pegwel damit er schaltet? der soltle eigentlich
beim avr rauskommen.. mess mal nach was sich am pin so tut spannungsmäßig... (dafür evtl die verzögerungszeit höher setzen damit das messgerät besser mitkommt -> das rcall wait mehrmals einfügen)