Raketenmodellbau.org Portal > Forum > Wasserraketen > Nutzlasten und Bergungssysteme > ServoTimerMini
Du kannst keine neue Antwort schreiben
Seiten (5): « 1 [2] 3 4 5 »

Autor Thema 
CharlyMai

Foren-Prediger


Administrator

CharlyMai

Registriert seit: Mär 2005

Wohnort: Hannover

Verein: SOLARIS-RMB e.V. (P2;T2) / AGM / TRA#21598

Beiträge: 1970

Status: Offline

Beitrag 128443 [Alter Beitrag07. September 2007 um 20:57]

[Melden] Profil von CharlyMai anzeigen    CharlyMai eine private Nachricht schicken   Besuche CharlyMai's Homepage    Mehr Beiträge von CharlyMai finden

Ähm ... Compiler Error, oder wie geht nicht ???

ICQ ?? Yahoo ??

PM ME !!

Charly

Geändert von CharlyMai am 07. September 2007 um 20:57


•"Der Glaube an eine bestimmte Idee gibt dem Forscher den Rückhalt für seine Arbeit.
Ohne diesen Glauben wäre er verloren in einem Meer von Zweifeln und halbgültigen Beweisen." Konrad Zuse

•Konstruiere ein System, das selbst ein Irrer anwenden kann, und so wird es auch nur ein Irrer anwenden wollen.

SOLARIS-RMB e.V. AGM
CharlyMai

Foren-Prediger


Administrator

CharlyMai

Registriert seit: Mär 2005

Wohnort: Hannover

Verein: SOLARIS-RMB e.V. (P2;T2) / AGM / TRA#21598

Beiträge: 1970

Status: Offline

Beitrag 128446 [Alter Beitrag07. September 2007 um 21:13]

[Melden] Profil von CharlyMai anzeigen    CharlyMai eine private Nachricht schicken   Besuche CharlyMai's Homepage    Mehr Beiträge von CharlyMai finden

Also, das compiliert er bei mir einwandfrei :

'********************************************
'** Timer Test für Tiny45 **
'** Testversion **
'** **
'** (C) Pierre Mai 2007 **
'** **
'********************************************

'--------------------------------------------------------------------------------------
'Allgemeine Compiler Konfiguration
$regfile = "attiny45.dat" 'Prozessor Tiny45
$crystal = 8000000 '8 MHz
'$baud = 250000
'$eeprom
'--------------------------------------------------------------------------------------
'Hardware Konfiguration
Portb = &B11111111
Ddrb = &B11111111
'--------------------------------------------------------------------------------------
'Timer Konfiguration
Config Servos = 2 , Servo1 = Portb.0 , Servo2 = Portb.1 , Reload = 5 , Timer = Timer0
Config Timer1 = Timer , Prescale = 1024
Enable Timer1

'--------------------------------------------------------------------------------------
'Variablen Konfiguration



'--------------------------------------------------------------------------------------
'Interrupts einstellen und Starten
On Timer1 Readrctime:
Enable Interrupts

'--------------------------------------------------------------------------------------
'Hauptprogramm

Do
Loop

'######################################################################################
'Subroutinen
'--------------------------------------------------------------------------------------
'Timer 1 ISR
Readrctime:
Toggle Pinb.3
Return


'--------------------------------------------------------------------------------------
'Timer 2 ISR

'--------------------------------------------------------------------------------------
'EEPROM Daten

'--------------------------------------------------------------------------------------
'Ende Programm

End 'end program

Geändert von CharlyMai am 07. September 2007 um 21:13


•"Der Glaube an eine bestimmte Idee gibt dem Forscher den Rückhalt für seine Arbeit.
Ohne diesen Glauben wäre er verloren in einem Meer von Zweifeln und halbgültigen Beweisen." Konrad Zuse

•Konstruiere ein System, das selbst ein Irrer anwenden kann, und so wird es auch nur ein Irrer anwenden wollen.

SOLARIS-RMB e.V. AGM
MarkusJ

Gardena Master of Rocketry


Moderator

Registriert seit: Apr 2005

Wohnort: Kandel

Verein:

Beiträge: 2148

Status: Offline

Beitrag 128452 [Alter Beitrag07. September 2007 um 21:58]

[Melden] Profil von MarkusJ anzeigen    MarkusJ eine private Nachricht schicken   MarkusJ besitzt keine Homepage    Mehr Beiträge von MarkusJ finden

*Glaskugelauspack*
So wie sich das anhört, funktioniert der Code auf dem Atmel nicht ... aber ich hab keine Ahnung von nichts wink

mfG
Markus

PS: Pierre, wann kommt denn dein Ultra-Einsteigerfreundliches-Atmel-Lehrgang-Buch raus *g* *duck&run*

WARNUNG: Dieser Beitrag kann Spuren von Ironie beinhalten
Ich bin weder eine Suchmaschine, noch ein Nachschlagewerk - PNs zu Themen die im Forum stehen oder dorthin gehören, werde ich nicht beantworten.
Bilder bitte NICHT über Imageshack oder andere Imagehoster einbinden!
Scorpion_XIII

Poseidon

Scorpion_XIII

Registriert seit: Jun 2005

Wohnort:

Verein:

Beiträge: 1154

Status: Offline

Beitrag 128454 [Alter Beitrag07. September 2007 um 22:24]

[Melden] Profil von Scorpion_XIII anzeigen    Scorpion_XIII eine private Nachricht schicken   Besuche Scorpion_XIII's Homepage    Mehr Beiträge von Scorpion_XIII finden

Zitat:
Original geschrieben von MarkusJ

*Glaskugelauspack*
So wie sich das anhört, funktioniert der Code auf dem Atmel nicht ... aber ich hab keine Ahnung von nichts wink




Die Glaskugel stimmt big grin Compilieren tut er ohne Probleme aber die Hardware macht nix


Edit:
Ich sehe gerade zufällig in der Bascom-Hilfe, dass der Timer1 als 16bit deklariert ist. Der ATTiny hat aber nur 2 8bit Timer.
Man müsste auf den Timer2 ausweichen, der wiederum ein 8bit ist aber da streikt der Compiler.
Wenn ich das richtig verstehe muss man das "zu Fuss" machen also die Register selber schreiben.
Und das mit den Registern ist noch etwas confused

Gruß
Scorpion_XIII

Geändert von Scorpion_XIII am 08. September 2007 um 00:20


t(h)rust in GARDENA
CharlyMai

Foren-Prediger


Administrator

CharlyMai

Registriert seit: Mär 2005

Wohnort: Hannover

Verein: SOLARIS-RMB e.V. (P2;T2) / AGM / TRA#21598

Beiträge: 1970

Status: Offline

Beitrag 128483 [Alter Beitrag08. September 2007 um 15:20]

[Melden] Profil von CharlyMai anzeigen    CharlyMai eine private Nachricht schicken   Besuche CharlyMai's Homepage    Mehr Beiträge von CharlyMai finden

Nein, es bleibt bei Timer 0 und 1 ...

Die Frage ist noch, welchen Takt Du nimmst und damit welchen Prescaler Du auswählst. Nicht dass Du myriaden Jahre auf den INT warten must ...

Da bleibt ein Rechnen nicht aus ....

Welche BASCOM Version nutzt Du ?? Ich habe die 1.11.8.9 m.W. nach hatten die Vorgänger Probleme mit den Timern bei den Tiny-Prozzies. Als Anlage habe ich mal die History.txt hier in den Post gepackt, vielleicht da mal nachschauen.

Zeit meines Buches ... Ohgottohgott... das ist derzeit wie mit dem Interrupt hier ... :-) Es kommt nicht .... aber das würde den Beitrag hier sprengen und auch nicht hierhergehören !!

Glaskugeln gehören in den Zauberladen ... aber nicht in einen Ernsten Beitrag der auf Lösungen wartet !!


viele Grüße
Pierre




Anhang: history.txt

Geändert von CharlyMai am 08. September 2007 um 15:20


•"Der Glaube an eine bestimmte Idee gibt dem Forscher den Rückhalt für seine Arbeit.
Ohne diesen Glauben wäre er verloren in einem Meer von Zweifeln und halbgültigen Beweisen." Konrad Zuse

•Konstruiere ein System, das selbst ein Irrer anwenden kann, und so wird es auch nur ein Irrer anwenden wollen.

SOLARIS-RMB e.V. AGM
Scorpion_XIII

Poseidon

Scorpion_XIII

Registriert seit: Jun 2005

Wohnort:

Verein:

Beiträge: 1154

Status: Offline

Beitrag 128621 [Alter Beitrag10. September 2007 um 20:46]

[Melden] Profil von Scorpion_XIII anzeigen    Scorpion_XIII eine private Nachricht schicken   Besuche Scorpion_XIII's Homepage    Mehr Beiträge von Scorpion_XIII finden

Es scheint so, als ob der Timer1 bei Bascom und dem ATTiny45 ein Problem ist frown

Aber es gibt auch Erfreuliches, es gibt eine runde Version der Platine wink
Mit ca. 6cm Durchmesser passt sie wunderbar in eine 0,5er Rakete.

Ansteuerung von 2 Servos, Triggerung über Abreißkontakt, LED zur Anzeige, Mode- und Resettaster, Zeiteinstellung und -speicherung Notfallprogramm bei Stromverlust in Startphase...

Sollten sich noch Fehler in Schaltplan oder Layout geschlichen haben, bitte melden.



Anhang: runde version1.zip


(Wenn ich das Problem mit dem Timer1 gelöst habe, stell ich auch den SourceCode hoch)

Gruß
Scorpion_XIII

Geändert von Scorpion_XIII am 10. September 2007 um 20:46


t(h)rust in GARDENA
Reinhard

Überflieger

Reinhard

Registriert seit: Sep 2003

Wohnort: Österreich

Verein: TRA #10691, AGM

Beiträge: 1186

Status: Offline

Beitrag 128630 [Alter Beitrag11. September 2007 um 00:00]

[Melden] Profil von Reinhard anzeigen    Reinhard eine private Nachricht schicken   Besuche Reinhard's Homepage    Mehr Beiträge von Reinhard finden

Hi,

die HW sieht ziemlich gut aus. Teste aber am Besten vorher noch ob die Spannung nicht zu sehr einbricht wenn beide Servos gleichzeitig losfahren und dabei auch noch belastet werden. Wenn die Schaltung das nicht ohne Reset wegsteckt musst du die Versorgungsspannung für Servo und AVR entkoppeln.

Ist der Resettaster im normalen Betrieb notwendig? Wenn nicht, dann würde ich darauf verzichten ihn zu bestücken. In dieser Einbaulage könnte er bei stark beschleunigenden Raketen ausgelöst werden, was vermutlich zum Versagen der Schaltung führt. Je nach SW kann das auch für S2 gelten, aber dass kann man ja ohne Probleme umgehen.

Gruß
Reinhard
Scorpion_XIII

Poseidon

Scorpion_XIII

Registriert seit: Jun 2005

Wohnort:

Verein:

Beiträge: 1154

Status: Offline

Beitrag 128638 [Alter Beitrag11. September 2007 um 11:39]

[Melden] Profil von Scorpion_XIII anzeigen    Scorpion_XIII eine private Nachricht schicken   Besuche Scorpion_XIII's Homepage    Mehr Beiträge von Scorpion_XIII finden

Hi,

Danke, das mit dem Reset stimmt der ist nicht so wichtig (Strom unterbrechen ist ja der gleiche Effekt)
Der Modeschalter S2, im jetzigen Layout S1, wird nur zum Einstellen der Zeit benötigt. Ist der Timer einmal scharf, wird der Zustand von ihm nicht mehr beachtet.

Mit Netzteil funtioniert die Schaltung ohne Einbrechen der Spannung wink oder Reset.
Der Strombedarf liegt bei Servobetrieb am 9V Netzteil bei durchschnittlich 150-200mA und kurzzeitigem Spitzenwert von 250mA. (Die billig Servos von Conrad)
Batterien habe ich leider gerade keine im Haus teste ich dann aber auch noch mal.
Der Ruhestrom ist bei aktiver LED bei max. 15-20mA

Gruß
Scorpion_XIII

Edit: Die Software habe ich jetzt mal mit wait-Befehlen ausgestattet und teste einfach wie lange der jeweilige wait-Befehl wirklich ist. Das Programm passt sogar noch auf den ATTiny13 (96% des Speichers belegt big grin)

Geändert von Scorpion_XIII am 11. September 2007 um 13:25


t(h)rust in GARDENA
Lightning_Man

Raketenbauer

Registriert seit: Jul 2007

Wohnort: -----

Verein: -----

Beiträge: 176

Status: Offline

Beitrag 128796 [Alter Beitrag14. September 2007 um 18:16]

[Melden] Profil von Lightning_Man anzeigen    Lightning_Man eine private Nachricht schicken   Besuche Lightning_Man's Homepage    Mehr Beiträge von Lightning_Man finden

Hi Scorpion_XIII,


>Der Ruhestrom ist bei aktiver LED bei max. 15-20mA

Wenn Du low current LEDs nimmst (2-5mA) und den Tiny
nach getaner Arbeit mit dem BASCOM Befehl "sleep" schlafen
legst, kannst Du den Stromverbrauch nochmal drastisch
reduzieren. Nachdem die Servos betätigt wurden, brauch
der Atmel ja nix mehr machen.

viele internette Grüße,

Reinhard

if nothing else helps, just add a couple of kilovolts smile)

L1
TRA #: 11857
Scorpion_XIII

Poseidon

Scorpion_XIII

Registriert seit: Jun 2005

Wohnort:

Verein:

Beiträge: 1154

Status: Offline

Beitrag 131930 [Alter Beitrag07. November 2007 um 15:14]

[Melden] Profil von Scorpion_XIII anzeigen    Scorpion_XIII eine private Nachricht schicken   Besuche Scorpion_XIII's Homepage    Mehr Beiträge von Scorpion_XIII finden

big grin big grin
Auf http://www.mikrocontroller.net konnte mir jemand die entscheidenen Zeilen sagen.
Timer1 wird über seine Register angespochen und Timer0 ist für die beiden Servos.

$regfile = "ATTiny45.dat"
$crystal = 1000000 '1MHz

$hwstack = 32
$swstack = 16
$framesize = 40

'''TCCR1=&H07 'This will replace Config Timer1 = Timer , Prescale = 64
TCCR1=&H0D 'This will replace Config Timer1 = Timer , Prescale = 4096
'''TCCR1=&H0F 'This will replace Config Timer1 = Timer , Prescale = 16384
''' See datasheet for more prescaler values

On Timer1 Readrctime
Enable Timer1

Config PINb.3 = Output 'LED
Led1 Alias Portb.3

Enable Interrupts

Do
!NOP
Loop

End

'ISR
Readrctime:
Toggle Led1
Return


Wenn dieses Codefragment noch im eigentlichen ServoTimerMini-Programm funktioniert bin ich glücklich. bounce

Grüße
Scorpion_XIII

t(h)rust in GARDENA
Seiten (5): « 1 [2] 3 4 5 »
[Zurück zum Anfang]
Du kannst keine neue Antwort schreiben