gebtmirantworten
12.05.2011, 14:14
hallo leute wer kann mir helfen ich brauche ein assembler programm für avr studio 4
ich muß ein 2 bit stuffing realisieren!
hier die genaue aufgabenstellung
die 8-bit daten werden im register R18 eingesetzt.der ausgang wird durch das bit "0" des ports B realisiert.
nach jeweils zwei gleichen bits wird ein bit entgegengesetzter polarität eingeführt.
danke schon mal im vorraus
DanielSan
12.05.2011, 17:22
Die Hausaufgaben macht dir hier aber keiner.
Wo genau kommst du nicht weiter? Zeig mal was du bis jetzt schon hast.
Gruß Daniel
QuantreX
18.05.2011, 17:44
Hier ein Beispiel. Davon ab Hausaufgaben erzielen keinen Nährwert.
.include"8515def.inc"
;Zuweisung
.def Temp=R17
.def Zahl=R18
.def Pointer=R19
;Initialisierung
ldi Temp,LOW(RAMEND)
out SPL,Temp
ldi Temp,HIGH(RAMEND)
out SPH,Temp
ser Temp
out DDRB,Temp
clr Zahl
clr Temp
clr Pointer
;HP 2-Bit stuffing
ANF:clr Pointer
in Zahl,PIND
S1: mov Temp,Zahl
andi Temp,$03 ;Bei 4-bit $0F
cpi Temp,$00
breq null
cpi Temp,$03 ;Bei 4-bit $0F
breq eins
sbrs Zahl,0
cbi PORTD,0
sbrc Zahl,0
sbi PORTD,0
lsr Zahl
S2: inc Pointer
cpi Pointer,$08
brne S1
rjmp ANF
null: cbi PORTD,0 ;Bei 4-bit noch 2mal cbi
cbi PORTD,0
sbi PORTD,0
lsr Zahl ;Bei 4-bit noch 2mal lsr
lsr Zahl
inc Pointer ; Bei 4-bit noch 2mal inc
rjmp S2
eins: sbi PORTD,0 ; Bei 4-bit noch 2mal sbi
sbi PORTD,0
cbi PORTD,0
lsr Zahl ;Bei 4-bit noch 2mal lsr
lsr Zahl
inc Pointer ;Bei 4-bit noch 2mal inc
rjmp S2
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.