Forum: Mikrocontroller und Digitale Elektronik ICP-Interrupt am Tiny44


von E. S. (ede_wolf)


Lesenswert?

Hallo zusammen,

ich bräuchte mal bitte von jemand ein Statement, der das Problem 
vielleicht kennt, das mich gerade in den Wahnsinn treiben will.

Kann es sein, dass beim Tiny44 (evtl. auch 24 od. 84) der ICP-Interrupt 
NICHT ausgelöst wird wenn der Timer1 nicht läuft?

Ich hab keinerlei Aussagen dahingehend finden können dass dieses so ist, 
und auch die bekannten Funktionsschaubilder über die ICP-Funktion zeigen 
keinerlei Abhängigkeit des Interrupts vom Prescaler. Aber es scheint 
wirklich so zu sein. Sobald der Timer am laufen ist,... kein Problem.

Bei anderen Tinys, z.B 2313 hatte ich dahin gehend noch nie ein Problem?

Wär schön wenn mir jemand dazu was sagen könnte. (bitte aber nicht sowas 
dass Capture ohne laufenden Timer keinen Sinn macht !)

Danke schon mal!
Ede

von c-hater (Gast)


Lesenswert?

E. Stäbler schrieb:

> Kann es sein, dass beim Tiny44 (evtl. auch 24 od. 84) der ICP-Interrupt
> NICHT ausgelöst wird wenn der Timer1 nicht läuft?

Nein, der funktioniert auch, wenn der Timer nicht läuft.

> Bei anderen Tinys, z.B 2313 hatte ich dahin gehend noch nie ein Problem?

Dann hast du dort höchstwahrscheinlich irgendeinen Fehler bezüglich der 
Initialisierung nicht gemacht, den du jetzt beim Tiny44 gemacht hast. 
Zeig' einfach deinen Code, dann wird er vermutlich gefunden werden.

von E. S. (ede_wolf)


Lesenswert?

Danke sehr. Das war die klare Aussage die ich gebraucht habe.

Ich habe nun eine Testroutine auf eine kleine extra dafür gestrickte 
Hardware gemacht und ausprobiert. Richtig, es geht.

---> DER BUG IST IM SIMULATOR!

Wer also seine Tiny44-Programm mit Hilfe des AVR-Studio-Simulators 
testet sei gewarnt. Es tritt zumindest o.g. Problem auf.

Dies betrifft Version 4.13.571 SP2.

Ja OK, ich weiß ich bin ein paar Jahre hinterher, aber für NUR Assembler 
sind die alten Versionen einfach viel übersichtlicher. Und wer weiß ob 
der Bug nicht weiterhin besteht. Vielleicht testet es ja mal jemand.

Himmel noch eins,... jetzt muss ich mir bald diese völlig überladene V6 
antun ächtz ...
Danke für eure Hilfe

von spess53 (Gast)


Lesenswert?

Hi

>Himmel noch eins,... jetzt muss ich mir bald diese völlig überladene V6
>antun ächtz ...

Das ist der Sumulator auch nicht besser. Könntest aber einigstens auf 
4.19 auf rüsten.

MfG Spess

von m.n. (Gast)


Lesenswert?

E. Stäbler schrieb:
> Ich habe nun eine Testroutine auf eine kleine extra dafür gestrickte
> Hardware gemacht und ausprobiert. Richtig, es geht.
>
> ---> DER BUG IST IM SIMULATOR!

Daß Du einen Simulator verwendest, hättest Du gleich schreiben sollen.
Habe ich nie verwendet - werde ich nie verwenden! Ein schöner Oskar ist 
da hilfreicher.

von c-hater (Gast)


Lesenswert?

spess53 schrieb:

>>Himmel noch eins,... jetzt muss ich mir bald diese völlig überladene V6
>>antun ächtz ...
>
> Das ist der Sumulator auch nicht besser.

Oh doch. Der Tiny44 wird im Studio4 leider nur durch den Simulator V1 
unterstützt. Und der ist wirklich ziemlich grottig.

Der Simulator V2 ist da um Welten besser (wenn auch immer noch nicht 
umfassend fehlerfrei). Im Studio6 gibt's nur noch diesen und hier 
unterstützt er dann auch endlich den Tiny44. Timer und zugehörige 
Interrupts sollten hier jedenfalls für einen Tiny44 wirklich vollständig 
korrekt simuliert werden.

Der Simulator V2 im Studio 6.2 ist sogar so gut, daß er sogar einen Bug 
in der teilweise neuen Hardware des Tiny441/841 vollkommen korrekt (also 
übereinstimmend mit dem Verhalten seiner Pendants aus dem real life) 
simuliert...

von Norbert S. (norberts)


Lesenswert?

c-hater schrieb:
> einen Bug
> in der teilweise neuen Hardware des Tiny441/841 vollkommen korrekt (also
> übereinstimmend mit dem Verhalten seiner Pendants aus dem real life)

Hi,

wärest Du so nett, mitzuteilen was dieser Bug ist?

Gruß,
Norbert

von spess53 (Gast)


Lesenswert?

Hi

>Oh doch. Der Tiny44 wird im Studio4 leider nur durch den Simulator V1
>unterstützt. Und der ist wirklich ziemlich grottig.

Letzteres stimmt, ersteres nicht.

>wärest Du so nett, mitzuteilen was dieser Bug ist?

Sieh ein fach mal in der Hilfe zum Simulator unter 'Known issues' nach.

MfG Spess

von Norbert S. (norberts)


Lesenswert?

Hi,

spess53 schrieb:
> Sieh ein fach mal in der Hilfe zum Simulator unter 'Known issues' nach.

Da sind offensichtlich nur Bugs vom Simulator.
So verstehe ich das jedenfalls.

Gruß,
Norbert

von E. S. (ede_wolf)


Lesenswert?

Tja, ... das ist wohl ein größeres Thema als ich erwartet hätte.

In Ermangelung anderer/besserer Diagnosemöglichkeiten wie Logic-Analyzer 
od. In-Circuit-Debugger usw. hat mir der Simulator bisher eigentlich 
gute Dienste geleistet.
Er ist meiner Ansicht nach (wenn er funktioniert) ein wirklich 
brauchbares  Werkzeug wenn es vornehmlich um die Abläufe innerhalb des 
Controllers geht.

Da andere Controller bisher mit genau dieser Funktion fehlerfrei 
dargestellt wurden und der 44 nicht, hat mich natürlich, weil ich einen 
anderen Fehler gesucht habe, auf eine Menge Holzwege geführt.

Na ja, es ist wohl trotzdem, allein wg. der neueren Typen unumgänglich, 
sich in die aktuelleren Versionen einzuarbeiten, ... und dann mit neuen 
Fehlern zu kämpfen ;-)

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.