Ich verwende PIC18f2420, um PWM zu erzeugen. Ich verwende Timer 2 mit 4-MHz-Kristall, der perfekt funktioniert, indem er mir PWM gibt. Ich brauche eine Frequenz von 100 kHz für PWM, wofür ein 4-MHz-Kristall nicht ausreicht, da dies meine Auflösung auf ein inakzeptables Niveau reduziert. Ich habe den 4-MHz-Quarz auf 20 MHz geändert, ohne die Konfigurationsbits, die Hardware oder das Programm zu ändern, da ich nicht weiß, was ich ändern muss. Könnt ihr mir bitte einen Rat geben was ich ändern soll? Mein Kristall ist mit zwei 27-pF-Kondensatoren verbunden, funktionieren sie auch für 20-MHz-Kristalle?
Aktuelle Konfigurationsbits:
#pragma config OSC = HS //HS oscillator
#pragma config PWRT = ON, BOREN = OFF //power-up timer on, brown-out detect off
#pragma config WDT = OFF //watchdog timer off
#pragma config LVP = OFF //low voltage programming off
#pragma config PBADEN = OFF //Configuration setting
Erstens funktioniert Ihr Kristall gut mit 27-pf-Kondensatoren, wenn er für den Betrieb mit 27-pf-Kondensatoren ausgelegt ist . Bitte geben Sie einen Link zum Datenblatt für den Kristall an, damit wir sehen können, was er benötigt (27pf klingt für mich etwas hoch).
Zweitens klingt es nach Ihrer Beschreibung so, als würde der Kristall möglicherweise nicht schwingen. Ihre Konfigurationsbits sehen für einen 20-MHz-Quarz gut aus.
Stellen Sie die Sonde mit Ihrem Oszilloskop auf die 10-fache Impedanz ein. Prüfen Sie dann den OSCI
Pin des PIC18, um zu sehen, ob Sie eine 20-MHz-Wellenform erhalten. Wenn ja, dann oszilliert es offensichtlich. Wenn nicht, dann ist es nicht in der Lage, die Oszillationen zu starten. Dies könnte daran liegen, dass Ihre Lastkondensatoren zu groß sind (wie gesagt, 27pf klingen etwas hoch, aber wir können das nicht sagen, ohne zu wissen, welchen Kristall Sie verwenden).
Das "zufällige Sinuswellensignal" ist wahrscheinlich der Pin mit hoher Impedanz, da der Chip nicht startet, sodass Sie lokales Rauschen aus dem Netz aufnehmen.
brhans
Tut
brhans
Samad Muhammed
Samad Muhammed
Majenko