Forum: Mikrocontroller und Digitale Elektronik PIN Variable


von Pierre G. (bqube)


Lesenswert?

Guten Morgen ihr schlaflosen

Ist es möglich bei dem asm Befehl
SBIS PIN,0

Die Zahl nach dem Komma als variable zu deklarieren

Z.b. SBIS PIN,X ?

Wenn es möglich wäre würde mein Programm um einiges kleiner werden

Mfg Bqube

von Max D. (max_d)


Lesenswert?

Nein, wenn du sowas willst nimm C.

von Pierre G. (bqube)


Lesenswert?

Ja aber c macht dann das gleiche was ich in asm Schreiben muss mir 
geht's nicht
Um das viele schreiben dachte nur es wäre möglich aber danke für die 
rasche Antwort

Mfg Bqube

von Pierre G. (bqube)


Lesenswert?

Ich habe in einem LCD programm folgendes gefunden....
1
; .equ definiert ein Symbol und dessen Wert
2
.equ LCD_PORT = PORTD
3
.equ LCD_DDR  = DDRD
4
.equ PIN_E    = 5
5
.equ PIN_RS   = 4
6
7
 ; erzeugt den Enable-Puls
8
lcd_enable:
9
           sbi LCD_PORT, PIN_E          ; Enable high
10
           nop                          ; 3 Taktzyklen warten
11
           nop
12
           nop
13
           cbi LCD_PORT, PIN_E          ; Enable wieder low
14
           ret

Wenn also dem Label PIN_E eine 5 zugeteilt ist kann ich diese dann nicht 
einfach erhöhen oder verringern ?


Mfg Bqube

von Denis (Gast)


Lesenswert?

"Wenn also dem Label PIN_E eine 5 zugeteilt ist kann ich diese dann 
nicht
einfach erhöhen oder verringern ?"

Ja, aber nur vor dem Compilieren. ;)

von Pierre G. (bqube)


Lesenswert?

Achso also sobald das Hauptprogram in gange ist kann ich diese 
einstellungen nicht mehr verändern...

das ja scheiße..

Mfg Bqube

von Strickwettbewerbgewinner (Gast)


Lesenswert?

Pierre Gnauck schrieb:
> Achso also sobald das Hauptprogram in gange ist kann ich diese
> einstellungen nicht mehr verändern...
>
> das ja scheiße..
>
> Mfg Bqube

So funktioniert der AVR Core nunmal. Da muss man eben etwas drumherum 
arbeiten

von spess53 (Gast)


Lesenswert?

Hi

>Achso also sobald das Hauptprogram in gange ist kann ich diese
>einstellungen nicht mehr verändern...

>das ja scheiße..

Wozu auch? Willst du dein LCD während des Betriebs umstecken?

MfG Spess

von Pierre G. (bqube)


Lesenswert?

Nein das mit dem Display hatte ich nur gefunden ..... Ich will den z.b

Sbis pind ,0.  Pin0 am portd abfragen ob er gesetz ist wenn ja dann ... 
Wenn Nein dann .. und das ganze mit jedem Bit von portd .... Es 
funktioniert ist aber halt ein wenig Text

Ich wollte das ganze verkürzen in dem ich immer nur die Pin ZAHL ander 
und immer die selbe Abfrage nutze o schreib ich ja für jeden Pin eine 
einzelne Abfrage und die Aktion dahinter

Mfg Bqube

von Jonathan S. (joni-st) Benutzerseite


Lesenswert?

Schiebe doch deinen Port-Wert in einer Schleife nach rechts durch und 
prüfe immer Bit 0. Falls Du das nicht verstanden hast, schau dir das 
AVR-Tutorial (Abschnitt "Bitoperationen") an, da wird sowas beschrieben.


Gruß
Jonathan

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.