PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Tiny45: Start timer0



Sauerbruch
11.02.2007, 12:36
Moin zusammen!

Ich habe gerade ein funktionierendes (*stolz sei...) Programm zur Ausmessung von Pulsweiten eines RC-Senders geschrieben. Für ´nen ATmega8, auf dem es auch superzuverlässig läuft.

Da ich eigentlich nur einen Input, einen Output, einen Analog-Eingang (Hysterese) und 2 Timer brauche, hab´ ich das mal für einen ATTiny45 umgeschrieben. Jawoll - alle Pins und Ports mit korrekter, neuer Bezeichnung, und $regfile ist auch korrekt.

Beim Compilieren meckert BASCOM (1.11.8.1) nun in jeder Zeile, in der Start timer0 oder Stop timer0 vorkommt (und das sind ziemlich viele): ".EQU not found - probably using functions that are not supported by the selected chip [TCCR0]".

Kann´s denn sein, dass man bei diesem µC nicht mit Start/stop timer arbeiten kann, und wenn ja, kann ich mitten in ein BASCOM-Programm auch einfach so Änderungen im TCCR0-Register reinbasteln?

Daniel

linux_80
11.02.2007, 13:37
Hallo,
der Tiny45 hat nur ein TCCR0B, so stehts auch in der ATtiny45.Dat, damit man damit Arbeiten kann, könnte man diesen Workaround benutzen:
In dieser Datei die Zeile mit TCCR0B kopieren und TCCR0 draus machen, so das beide Namen vorkommen, und die gleiche Adresse haben.

Sauerbruch
11.02.2007, 13:55
...ich werd´ weich: Es funktioniert!! \:D/

Nachdem ich überhaupt erst seit 2 Wochen mit AVRs allgemein und BASCOM speziell rumspiele, hätte ich mich niemals von selber getraut, in so einem "heiligen" Bereich wie den regfiles rumzukritzeln. Aber da darf man wohl nicht allzuviel Respekt vor haben, oder? Zumindestens, wenn man das Original irgendwie vorher sichert...

Also - vielein Dank für diesen Supertip!!

Daniel

Sauerbruch
11.02.2007, 14:22
Ein´ hab ich noch:

Pin Nr.1 (PB.5) ist ja nun der Reset beim Tiny45. Wenn ich den als Output konfiguriere, um einen Transistor anzusteuern - bin ich dan sicher vor Resets, wenn das Programm Portb.5 von LOW auf auf HIGH setzt?

linux_80
11.02.2007, 15:40
Wenn man den Reset-Pin als normalen IO Verwenden will, kann der Tiny nicht mehr mit dem ISP programmiert werden, geht dann nur noch mit der HV Methode !

Sauerbruch
11.02.2007, 15:57
*schluck...

dann lass´ ich lieber den Quarz weg, nehme stattdessen den internen RC-Oszillator und verwende B.3 oder B.4. als I/O. Die Sache mit ISP finde ich nämlich ziemlich genial...