Forum: Mikrocontroller und Digitale Elektronik mega168 port-B Problem


von Wolfgang N. (wolfgangnitzschke)


Lesenswert?

Hallo,
habe wg Speicherproblemen vom mega8 auf den mega168 wechseln wollen, 
bekomme aber mein Programm dort nicht zum laufen, bzw. es gibt Probleme 
mit Port-B:
Taster an Port B Pin0 bis Pins5 und GND
LED mit Vorwiderstand an Port D2
Wenn ich einen der Taster an PortB0 bis PortB4 drücke, wechselt die LED 
von an nach aus und zurück, nicht aber an Port B5. Was mach ich falsch?
Hier der Code:
$regfile = "m168def.dat"
$crystal = 3686400
Config Portb = Input
Config Portd = Output
Portb = 255
Config Debounce = 200

Mainroutine:
Do
Debounce Pinb.5 , 0 , Light
Debounce Pinb.4 , 0 , Light
Debounce Pinb.3 , 0 , Light
Debounce Pinb.2 , 0 , Light
Debounce Pinb.1 , 0 , Light
Debounce Pinb.0 , 0 , Light
Loop

Light:
Toggle Portd.2
Goto Mainroutine

Die Fusebits habe ich folgendermassenb gesetzt:
Lockbits: FF
Fusebits low: ED
Fusebits high: D5
ext. Fusebits: F9

Hat jemand eine Idee?
Gruß
Wolfgang

von Stefan B. (stefan) Benutzerseite


Lesenswert?

Hast du schon die Hardware überprüft? PB5 geht sauber auf LOW, wenn man 
es nachmisst und ein anderer µC funktioniert grundsätzlich mit dem 
gleichen Programm?

Ich sehe im Datasheet keine Mehrfachbelegung von PB5, die das 
hervorrufen könnte. Die Fuses sehen auch richtig aus.

Softwareseitig könnte man noch versuchen, die Reihenfolge der Abfragen 
zu tauschen, ob dass Problem dann an einem anderen Pin auftritt. Das ist 
aber eine wilde Verzweiflungstat.

von Wolfgang Nitzschke (Gast)


Lesenswert?

Habs gefunden, der Programmer steckte noch am board, dann wird b5 an SCK 
gelegt und reagiert falsch. Nach abziehen des Programmers war dann ok.
Trotzdem hab ich Probleme, das Programm, das vorher auf dem mega8 lief, 
auf dem mega168 korrekt zum laufen zu bringen. Na ja, werd mich mal mit 
den fusebits rumschlagen, die sind ja anders als beim mega8.
Danke für die Hilfe.
Gruß
Wolfgang

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.