Nachttrag:
Gruß Stefan! ;-)
Druckbare Version
Nachttrag:
Gruß Stefan! ;-)
Hi Stefan,
bin zwar auch Anfänger in Bascom un Co., aber Multitasking am Mega8
währ ne tolle Sache, wenn ich's mir auch nicht so recht vorstellen kann.
Was natürlich nicht heiß, das ein Crack auch das hinbekommt.
Aber warum nimmste nicht einfach nen zweiten Mega und lässt den
dann das Messergebnis per UART rüber schieben? Haste auch gleich
nen Interrupt bei ;o)
mfg
Marko
Hi Marko!
Ganz so aufwendig wollt eich's dann auch nicht treiben. ;-) Ich hab' jetzt mal probiert statt der 200ms einfach meinen übrigen code "reinzuschieben". Das geht sogar ganz gut. Aber je nach codelänge vertut sich der Sensor immer um ein paar Grad!?! Momentan wären es nämlich 37°C Raumtermperatur bei mir. ;-D Ist der Code länger, klappt's komischer Weise...
Allerdings wird mein Hauptprogramm immer wieder durch einen externen Interrupt unterbrochen. (Es wird aber nur ein Befehl "incr zähler" ausgeführt. Dann "return") Und wenn diese Interrupts nun sehr schnell sind, "steigt" meine Temperatur?? Wie geht das? "Return" heißt doch, gehe zurück, wo Du aufgehört hast.
Gruß StefanCode:...
on int0 Int0_Interrupt
...
Do
1wreset 'reset the device
1wwrite &HCC 'read ROM command
1wwrite &H44
'weiterer code etc
'...
1wreset 'reset the device
1wwrite &HCC 'read ROM command
1wwrite &HBE 'read ROM command
For I = 1 To 2
Ar(i) = 1wread() 'place into array
Next
Locate 2 , 1
Temperatur = Ar(1)
If Ar(2) > 0 Then Temperatur = 0 Else Shift Temperatur , Right
Lcd Temperatur ; ".";
'restlicher code
loop
'#############
Int0_Interrupt:
incr zähler
return
End
Hallo,
erhöhe mal die Stackwerte. Dann stimmts wahrscheinlich. Die Interrupts fressen mindestens 32 Bytes
Wolfgang
Hallo Wolfgang! :-)
Sorry für die blöde Frage, aber wie (?) erhöht man Stackwerte?
Gruß Stefan
in Bascom unter Options -Compiler-Chip findest Du unten die drei Werte. Die sind von Haus aus viel zu klein gestellt. Jetzt spielt es noch eine Rolle, welchen Chip Du benutzt -SRAM Größe - . Wenn Du nicht mindestens einen Mega 8 benutzt, kann es verdammt eng werden.
Wolfgang