B ASCOM, mega8, Zeit anzeigen

Gast #107556
Lesenswert?

Hallo !
Arbeite mit BASCOM-AVR-Basic und möchte dem mega8 die Zeit entlocken.
------------------------------------
$regfile = "m8def.dat"
$crystal = 3686400
$baud = 9600

Enable Interrupts
Config Clock = Soft
Time$ = "20:11:07"
' TIME$ ,  Internal variable that holds the time.

Do
Print Time$
Wait 4
Loop
End
-------------------------------------

Nach Angabe der Hilfe ist TIME$ eine interne Variabel, die die Zeit
beinhaltet. Über RS232/TerminalProgramm soll die Zeit alle 4 Sekunden
ausgegeben werden. Leider läuft die Uhr nicht. Die eingestellte Zeit
von "20:11:07" geht nicht weiter. RS232/Terminal ist ok.

Was ist mein Fehler ?
Gast #107558
Lesenswert?

Vielleicht sowas wie START CLOCK ?
Mein FASTAvr-Basic hat zwar keine Uhr drinne, aber ich muss alles
starten, bevor's losgeht.
START TIMER1
START ADC
usw...
Vielleicht isses ja hier auch so?
Axel
Gast #107561
Lesenswert?

Jaja, der Uhrenquarz muss ran! PortC6+7 Timer2 wird dann auf ext.
asyncron gestellt "Config Clock = Soft".
sieh doch mal inden erzeugten ASM-Code.
Wie schon erwähnt, ich habe FastAVR, sollte aber ähnlich sein...
Axel
Gast #107563
Lesenswert?

Hi again !

Quelle: Bascom-Hilfe, Thema: Config Clock !
Dort steht:
"Notice that you need to connect a 32768 Hz crystal in order to use
the timer in async mode, the mode that is used for the clock timer."

Das dürfte wohl des Rätsels Lösung sein.

Magnus
Gast #107566
Lesenswert?

Achso, zu schnell auf Enter gedrückt, was ich eigentlich fragen wollte:
Muss ich die obligatorischen Kondensatoren mit anschließen, oder werden
automatisch irgentwelche internen Kapazitäten zugeschaltet?
(Ich les' auch nochmal im Datenblatt, habs aber gerade nicht zur
Hand)
Axel
Gast #107567
Lesenswert?

Hi, ich stehe gerdae vor dem gleichen Problem...

Könnte mir jemand verraten, wo ich denn nun den Quarz ranklemmen muss?


An PB 6 + 7 ist doch mein "normaler" Quarz angeschlossen. Stehe
irgendwie gerade auf dem Schlauch...
Gast #107573
Lesenswert?

Ich benutze den Atmega8 und Die TOSC anschlüsse sind an Pinb.6 + Pinb.7

Jedoch weiß ich immernoch nicht, wie ich jetzt die Takte dort
einspeise...

Muss ich jetzt zwei Oszillatoren aufbauen und den Arbeitstakt an Pinb.6
einspeisen während pinb.7 den Zähltakt bekommt?

Oder kann ich irgendwie eine einfachere Beschaltung benutzen?
#107574
Lesenswert?

Wieder mal:
Warum nicht einfach mal ins Datenblatt schauen? Wann werden
BASCOM Programmierer das endlich lernen?

ATMega8, Seite 5
If the internal Calibrated RC Oscillator is used as chip clock
source, PB7..6 is used as TOSC2..1 input for the Asynchronous
Timer/Counter2 if the AS2 bit in ASSR is set.

The various special features of Port B are elaborated in
'Alternate Functions of Port B' on page 56 and
'System Clock and Clock Options' on page 23.
Gast #727529
Lesenswert?

Hi,

Ich find im datenblatt des Mega8 nich ob der 32,768kHz quarz jetzt n 
paar kondensatoren braucht oder nich.
Wenn man ihn als haupttakt verwendet soll man unter 100kHz nen 
keramikresonator nehmen und kein quarz, hahaha
aber was is mit dem timer und tosc1 und 2, welche kapazität???
egal ich setz mal die fuses und guck ob er rennt xD

greatings
Gast #727532
Lesenswert?

Hi

Aus dem Datenblatt:

To use a 32.768 kHz watch crystal as the clock source for the device, 
the Low-frequency Crystal Oscillator must be selected by setting the 
CKSEL Fuses to “1001”. The crystal should be connected as shown in 
Figure 11. By programming the CKOPT Fuse, the user can enable internal 
capacitors on XTAL1 and XTAL2, thereby removing the need for external 
capacitors. The internal capacitors have a nominal value of 36 pF.

MfG Spess

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren