Hallo zusammen ich denke dass mein Quarz spinnt es ist ein 16 mhz, wie
kann ich das rausfinden?
habe ein Oszi zuhause...
muss ich parallel zum quarz messen? wenn ja dann hab ich 30-50 Hz , kann
das sein?
Klaus schrieb:
> Hallo zusammen ich denke dass mein Quarz spinnt es ist ein 16 mhz, wie> kann ich das rausfinden?
16 Milliherz?
Wow
Warum denkst du das?
> muss ich parallel zum quarz messen? wenn ja dann hab ich 30-50 Hz , kann> das sein?
Eher nicht.
ich hab atmega32 der quarz ist ja an Xtal1 und 2 angeschlossen, habe die
Fuses für frequenz dann auf 16 Mhz +64 ms .... gestellt jedoch spinnt
mein LCD immernoch obwohl ich alles eingestellt habe auch in den
lcd_routines...
daher dachte ich vielleicht spinnt der quarz.
Klaus schrieb:
> ich hab atmega32 der quarz ist ja an Xtal1 und 2 angeschlossen, habe die> Fuses für frequenz dann auf 16 Mhz +64 ms .... gestellt jedoch spinnt> mein LCD immernoch obwohl ich alles eingestellt habe auch in den> lcd_routines...>> daher dachte ich vielleicht spinnt der quarz.
Wie wäre es, wenn du erst mal ausmessen würdest, ob dein Quarz aktiv
ist.
Wenn sich herausstellt, dass dein Quarz tatsächlich vom µC benutzt wird,
dann noch mal die Konfiguration des LCD überprüfen. Auch die Verkabelung
des LCD nochmal überprüfen. Ist da nichts zu sehen, dann kann man mal
über einen Softwarefehler nachdenken.
Und erst dann fällt der Verdacht möglicherweise auf den Quarz
Hast du an deinem Mega32 an irgendeinem Pin eine LED angeschlossen?
(Wenn ja, wo?)
1
#define F_CPU 16000000UL
2
3
#include<avr/io.h>
4
#include<utils/delay.h>
5
6
#define LED_DDR DDRx
7
#define LED_PORT PORTx
8
#define LED_PIN PBx
9
10
intmain()
11
{
12
LED_DDR|=(1<<LED_PIN);
13
14
while(1){
15
LED_PORT|=(1<<LED_PIN);
16
_delay_ms(500);
17
LED_PORT&=~(1<<LED_PIN);
18
_delay_ms(500);
19
}
20
}
setze die richtigen Werte bei den #define ein.
Wenn dein µC mit 16Mhz arbeitet, dann ist die LED 1/2 Sekunde ein und
1/2 Sekunde aus.
Ist der Quarz nicht in Aktion (und der µC läuft mit 1Mhz), dann ist die
LED 8 Sekunden ein und 8 Sekunden aus.
Blinkt gar nichts, dann hast du den µC verfused.
Nach 30 Sekunden weißt du was Sache ist.
das mit der Zeit funktioniert, habe auf dem LCD alle 0,5 sec was
aufblinken lassen und das geht auch wunderbar, jedoch hab ich in der 1.
und 2. Zeile des LCD bis Zeichen 8 bestimmt die Hälfte weniger an
Kontrast und zudem ist in diesem Bereich sehr häufige Dreher der
Zahlen/Buchstaben usw zu erkennen.
Habe alle Verbindungen ohmisch durchgemessen usw. ist alles Wunderbar...
Kann es sein das es am Display liegen kann obwohl das neu ist.
LCD 4 x 20 Zeichen,
hatte deswegen schonmal ein Thread aufgemacht.
Wenn der Kontrast schon unterschiedlich zum rest des Displays ist, ist
am Display was nicht ok. Der Kontrast an sich ist über den
entsprechenden Pin mit Spannungsteiler korrekt eingestellt?
Kannst du an anderen stellen des LCD was korrekt ausgeben?
Gruß
Fabian
Klaus schrieb:
> aufblinken lassen und das geht auch wunderbar, jedoch hab ich in der 1.> und 2. Zeile des LCD bis Zeichen 8 bestimmt die Hälfte weniger an> Kontrast und zudem ist in diesem Bereich sehr häufige Dreher der> Zahlen/Buchstaben usw zu erkennen.
Das hört sich aber schon ganz anders an, als noch ein paar Postings
weiter oben :-)
> Habe alle Verbindungen ohmisch durchgemessen usw. ist alles Wunderbar...
gut.
Hätt mich auch gewundert.
Wenn du einen Wackelkontakt hättest, würde das Display sporadisch
komplett ausfallen und nicht mehr reagieren.
> Kann es sein das es am Display liegen kann obwohl das neu ist.
Möglich.
Aber gehn wir nicht vom schlimmsten aus.
Was machst du mit dem LCD? Was gibst du aus?
Wenn du nur schnell genug immer wieder das LCD löscht (oder einzelne
Teile davon) und neu beschreibst, sinkt auch der Kontrast und man kann
nichts mehr lesen.
Allerdings, wenn du Dreher drinnen hast, kann es auch sein, dass dein
Timing ein bischen zu knapp ist. Also: LCD Ausgaberoutinen durchforsten
und bei allen Wartezeiten ein wenig höher gehen.
Hallo
@Fabian
Ja habe ein 10k poti an PIN 5 des LCD hengen, wenn ich daran drehen wird
es heller und dunkler. jedoch wie schon erwähnt in dem kleinen Bereich
ist die Helligkeit der buchstaben einfach viel dunkler.
@Karl
Die änderung der Zeit bringt so wie ich das beurteilen kann ein wenig
erfolg, habe aber die Zeit von z.B. 1 auf 10 anheben müssen, mit dieser
Zeit macht er jetz weniger fehler aber sind immernoch vorhanden
besonders nach dem aufspielen des Programms dann muss ich nochmal
aufspielen oder reset dann gehts.
Jedoch ist der kontrast immer noch soo dunkel, und das komische ist das
es nur in diesem dunklen bereich diese Fehler auftreten.
Klaus schrieb:
> muss ich parallel zum quarz messen?
Eher an XTAL2, allerdings erhöhst du durch die Eingangskapazität
des Tastkopfes die Last für den Quarz geringfügig. Mit einem 10:1-
Tastkopf sollte das aber trotzdem noch klappen.
Ohne Rückwirkung auf den Quarz kann man die Frequenz messen, indem
man einen Timer im CTC-Modus programmiert, das entsprechende OCRx-
Register auf 0 setzt und den OCx-Pin auf "toggle on compare match"
stellt (muss natürlich ein Ausgang sein). Dann misst man an diesem
Pin f_CPU/2.
...oder ein kleines Programm, das einfach nur abwechselnd einen Port
setzt und zurücksetzt. An diesen dann das Oszi klemmen.
Wackelt´s am Port, dann wackelt auch der Quarz. Du weisst dann nichts
über die Frequenz, aber du weisst, dass er oszilliert.
Eine eigene Frage?
Dieser Thread ist über 16 Jahre alt.
Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.