Forum: Mikrocontroller und Digitale Elektronik ATmega16 IO-Pins Konfiguration


von Lukas -. (lukas)


Lesenswert?

Nabend.

Ich möchte an meinem ATMega16 den Pin 3, 16 und 17 als normalen INPUT 
Pin benutzen. Das geht auch bei allen Pins bis auf bei Pin 17 (PortD3).
Alle drei Pins sind genau gleich konfiguriert. Ich arbeite mit Bascom.

Pin17 hat immer 5V egal ob ich versuche ihn mit nem 500 Ohm Wiederstand 
auf Masse zu ziehen, oder nicht.

Woran liegt das?


Vielen Dank im vorraus für eure Hilfe!!

Gruß, Lukas.

von Gast (Gast)


Lesenswert?

Zeile 42

von H.Joachim S. (crazyhorse)


Lesenswert?

oder Platinenfehler.

von Lukas -. (lukas)


Lesenswert?

Platine habe ich nochmal überprüft, die ist ok.

@ Gast: Was ist mit "Zeile 42" gemeint?

von Otto (Gast)


Lesenswert?

> Was ist mit "Zeile 42" gemeint?

Du fragst uns, weshalb es nicht funktioniert hängst aber weder dEIN 
pROGRAMM NOCH dEINE sCHALTUNG AN::::

von spess53 (Gast)


Lesenswert?

Hi

@ Gast: Was ist mit "Zeile 42" gemeint?

Statistisch hat sich herausgestellt, das in unbekannten Programmen, der 
Fehler mit grosser Wahrscheinlichkeit in Zeile 42 ist. Korealiert mit 
der Frage nach dem Sinn des Lebens (bitte Gurgel bemühen).

MfG Spess

von H.Joachim S. (crazyhorse)


Lesenswert?

jaja, die Korealaner :-)

von Lukas -. (lukas)


Lesenswert?

Ooops, ja es war gestern schon spät am Abend,.. sorry, hier das 
Programm:
1
$regfile = "m16def.dat"
2
$crystal = 8000000
3
4
5
';;;;LCD-Initialisierung
6
   Rw Alias Portc.5                                         'Alias für den RW pin am LCD
7
   Helligkeit Alias Portc.7                                 'Alias für den Pin zur Steuerung der Helligkeit der LCD-HIntergrundbeleuchtung
8
   Config Portc = Output
9
   Rw = 0                                                   'RW auf Low
10
   Helligkeit = 0                                           'Hintergrundbeleuchtung aus
11
   Config Lcdpin = Pin , Db4 = Portc.0 , Db5 = Portc.1 , Db6 = Portc.2 , Db7 = Portc.3 , E = Portc.6 , Rs = Portc.4
12
   Config Lcd = 20 * 2
13
   Initlcd
14
   'Cursor Off
15
   Cls
16
';;;;
17
18
19
';;;;Encoder-Initialisierung
20
21
Config Portb.2 = Input                                      'Pins als eingang definieren                              '
22
Config Portd.2 = Input
23
Config Portd.3 = Input
24
Portb.2 = 1                                                 'Pull ups aktivieren
25
Portd.2 = 1
26
Portd.3 = 1
27
28
29
30
';;;;Hauptprogramm
31
32
33
34
35
Do                                                           'Zustand der Eingänge auf LCD anzeigen
36
   Cls
37
   Locate 1 , 1
38
   If Pinb.2 = 1 Then
39
   Lcd "PB2 "
40
   End If
41
42
   If Pind.2 = 1 Then
43
   Lcd "PD2 "
44
   End If
45
46
   If Pind.3 = 1 Then
47
   Lcd "PD3 "
48
   End If
49
   Wait 1
50
Loop

Die Schaltung besteht derzeit nur noch darin, dass ich den entprechenden 
Pin mit einen 500 Ohm Widerstand auf Masse ziehe oder nicht.

Vielen Dank!

Gruß, Lukas.

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.