PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : umstieg von M32 auf M128 - probleme mit 1wire, I2C



zwanzischmark
01.03.2006, 10:53
Hallo,

sorry das ich grad viele dumme fragen stelle, aber ich steh etwas aufm Schlauch. Wie der Titel schon sagt bin ich vom M32 auf den M128 gewechselt. Mein Display und UART zum PC funktioniert, aber 1wire und I2C tun nix.

Zur Zeit benutze ich 16Mhz externen Quarz, habe Fusebit auf M128 umgestellt und habe JTAG deaktiviert

Ich grieg am PortF(7) meinen 1Wire nicht zum laufen

als Ausgang (mit LED getestet) funktíoniert der Port
und als Eingang (Taster) funktioniert er auch

Ein mini Programm um die id eines Sensors auszulesen hab ich vom M32 direkt übernommen und beim M128 funktioniert es nicht.



$regfile = "m128def.dat"
$crystal = 16000000
$baud1 = 9600
$hwstack = 32
$swstack = 10
$framesize = 40

Config 1wire = Portf.7
Dim I As Byte
Dim Dsid1(8) As Byte

Open "com2:" For Binary As #1

Print #1 , "test"

Dsid1(1) = 1wsearchfirst()

If Dsid1(8) = Crc8(dsid1(1) , 7) Then
For I = 1 To 8
Print #1 , Hex(dsid1(i));
Print #1 , " ";
Next I
End If

Close #1
End


Weiss jemand wo das Problem liegen kann? Muss ich noch irgendwas umstellen oder kann trotz das der ein-/ausgang soweit geht was kaputt sein?

----------------------------------------------------------------------------------
edit:

Ich habe jetzt auf Port E, Port A und Port B verschiedene Pins probiert. Auf alles läuft es bis auf Port F wo es laufen soll. Kann das doch an irgendwelchen Fusebits liegen?

mfg Paul

zwanzischmark
01.03.2006, 21:09
Vielleicht sollte ich nochmal eine einfache Frage formulieren: Ist es möglich das der Chip kaputt ist wenn einfache input- (taster) und einfache output (LED) Funktionen funktionieren, aber sachen wie DCF33 Empfänger, I2C Uhr und 18B20 Temp Sensor NICHT funktionieren. (die eben genannten Dinge Bausteine laufen bei gleichem Quellcode auf dem Mega32 fehlerlos)

Paul

x-ryder
01.03.2006, 21:16
das weiß ich zufällig auch in etwa, bei mir funktioniert der port nämlich auch nicht, wenn ich ne sonderfunktion nutzen will, du bist nicht allein mit dem problem...

daher hab ich den post auch markiert ^^

Martin

linux_80
02.03.2006, 00:40
Hallo,
wenn ich so das DB angucke, sehe ich an Port F erstmal die Pins von JTAG, was Du ja ausgeschaltet hast,
dann sind alle Pins AD-Wandler, deshalb ist die nächste Frage :
Ist AVCC und AGND und was so dazugehört auch angeschlossen ?

Denn irgendwo stand mal, das die PortPins nicht geschaltet werden wenn der ADC keine Power hat, auch wenn man den ADC selber nicht verwenden will !

zwanzischmark
02.03.2006, 07:25
Hallo,

AVCC und AGND sind angeschlossen! Mein Problem ist das ausser PortF auch alle anderen Ports Als normale Ein- und Ausgänge funktionieren aber nicht als Eingang für DCF-Empfänger oder I2C-Uhr. An Port F sollten meine Temp Sensoren dran. Das sind komischer Weise die einzigen Bausteine die an allen anderen Ports funktionieren. Wie gesagt softwaremässig nehme ich exakt die Programme vom M32 (nur abändern von lib und Ports).

edit:
So,
mittlerweile bin ich um einiges schlauer. Das DCF Problem hat sich gelöst. Mein MAX232 stört den Empfang wohl extrem. Wenn ich den Empänger nicht direkt auf die Platine stecke, oder den MAX rausnehme gehts. Die I2C Uhr funktioniert an Port A nicht, läuft aber an anderen Ports. Damit ist alles bis auf die PortF Geschichte jetzt OK. Wenn x-ryder das Problem kennt wird das ein Problem vom M128 oder Bascom sein.

mfg Paul

Ratber
02.03.2006, 10:48
@zwanzischmark


Höhrt sich an als ob der M128 noch im Kompoatibilitätsmodus als M103 läuft.

zwanzischmark
02.03.2006, 10:51
hallo,

habe im ersten Beitrag geschrieben das er auf M128 gestellt ist

x-ryder
02.03.2006, 11:10
ausserdem wär sonst die LED wohl nicht angegenagen, hatte ich ja auch schon dran gedacht

Ratber
02.03.2006, 13:08
@zwanzischmark

Tja,dann weiß ich auch nicht.

Viel Glück