Hallo, guten Tag. Wie kann man bitte die Pins ansprechen beim Mega2560 mit Luna-Avr ? Bei den anderen Avr lese ich immer Porta..Portb ...Portc usw. Wie spreche ich zb beim Mega2560 den Pin45 an? Danke. Gruss
> Bei den anderen Avr lese ich immer Porta..Portb ...Portc usw.
Arduino Pin45 ist PORTL Bit 4
(Von Luna habe ich KA)
Ah.. danke. Das wusste ich nicht, das die Pins auch nach a,b,c usw aufgeteilt sind. Danke. Gruss
peter schrieb: > Das wusste ich nicht, das die Pins auch nach a,b,c usw aufgeteilt sind. Einfach mal ins Datenblatt des 2560 gucken koennte helfen...
Kaj schrieb: > Einfach mal ins Datenblatt des 2560 gucken koennte helfen... Ist heutzutage zu schwer, es muss alles doppelt vorgekaut werden, erst dann flutscht es.
Hallo Peter, Du gingst von einer Arduinonamensgebung aus. Atmel hat die Port Nummer und Bedeutungen im Atmega2560 Datenblatt dokumentiert. Arduino setzt darauf auf und vergibt u.a. vorlaufende Nummern für digitale I/O Pins. Siehe: https://www.arduino.cc/en/Hacking/PinMapping2560 Komme doch ins LunaAVR Forum für weitere Erläuterungen zur Sprache. Natürlich kann man sich auch eine Arduino -> Atmel AVR Namensraum erstellen.
1 | #define D0 as porte.0
|
2 | #define D1 as porte.1
|
3 | ' ... |
4 | |
5 | ' -- |
6 | #define D40 as portg.1
|
7 | #define D41 as portg.0
|
8 | #define D42 as portl.7
|
9 | #define D43 as portl.6
|
10 | #define D44 as portl.5
|
11 | #define D45 as portl.4
|
12 | #define D46 as portl.3
|
13 | #define D47 as portl.2
|
14 | #define D48 as portl.1
|
15 | #define D49 as portl.0
|
16 | ' -- |
17 | #define D50 as portb.3
|
18 | #define D51 as portb.2
|
19 | #define D52 as portb.1
|
20 | #define D53 as portb.0
|
Dann weiter mit einigen Beispielen:
1 | D45.mode = output, low |
2 | D46.mode = output, high |
3 | D47.mode = input, nopullup |
4 | D48.mode = input, pullup |
5 | |
6 | D45 = 0 ' low |
7 | D45 = 1 ' high |
8 | D45.toggle |
Ich setze die Ports und Register lieber laut Datenblatt direkt, da hat man die volle Kontrolle, z.B.:
1 | avr.DDRL.PINL0 = 1 'als eingang konfigurieren |
2 | value = avr.PORTL.PINL0 'pin zustand lesen |
Thomas schrieb: > Ich setze die Ports und Register lieber laut Datenblatt direkt, da hat > man die volle Kontrolle, z.B.: Du krasser Draufgänger!
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.