www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik PIC16F627A mit internem Takt betreiben


Autor: Olaf Rechtner (gruser)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen,

ich versuche den PIC16F627A mit dem internen Taktgeber (also ohne ext. 
Beschaltung) zum Laufen bringen - leider ohne Erfolg.

Testweise möchte ich 2 Ausgänge auf "High" setzen. Gibt es noch etwas 
bestimmtes, dass beachtet werden müsste?

Danke schon vorab für Euer Feedback.

Hier auszugsweise der Code (ich verwende den CC5X Compiler):

...
...
...

#pragma config |= 0b.11.1111.0111.0000

// Bit 1,0 :   11-RC, 10-HS,   01-XT, 00-LP
// Bit 2 :   1 - Watchdog Ein,   0 - Watchdog Aus
// Bit 3 :   0- Power up Timer Ein,   1- Power up Timer Aus
// Bit's 13...4 :   0-Leseschutz Ein,   1-Leseschutz Aus



void main(void)
{
OSCF = 0;                       // 37kHz
TRISA = 0b.0011.1111;    // RA6/ RA7 als Ausgang
PORTA = 0;

PORTA.6 = 1 ;      //  Bit 6 von PortA setzen
PORTA.7 = 1 ;      //  Bit 7 von PortA setzen

...
...
...
}

Autor: ich (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ansich müsste die Config passen, evtl. liegt es auch am Programm, sollte 
bei den "..." noch was anderes stehen.

Probier testweise mal die config: 0b.10.0001.0001.1000

Danach kannst du auch probieren, die Config auf:
0b.10.0001.0001.1001
zu stellen, damit RA6 als ClockOut fungiert. Am besten die LED oder was 
da dran ist abmachen und dann mit nem Oszi messen, ob da die 4MHz 
rauskommen. Hast du keins, kannst du auch n voltmeter nehmen. sollte 
dann so 2,3 oder 2,5 V haben, aber kannst nicht kontrollieren, ob das 
wirklich ein Takt ist. Wenn du da aber 0V oder 5V misst, is da was 
falsch.

Autor: ich (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Oh mist, vergessen.. Häng am besten die *.c Datei komplett an.. und dein 
kommentar " // 37kHz"... Laut DB sind es 48kHz

Autor: Olaf Rechtner (gruser)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Vielen Dank,

Dein Tipp hat mich auf die richtige Spur gebracht. Es lag daran dass 
meine Schaltung über Solarzellen (3V) versorgt wird und nicht mit den 
üblichen 5V. Da ein Betrieb bis runter auf 2V möglich ist, habe ich dem 
keine Beachtung geschenkt. Es ist aber so, dass dann der Brown-out Reset 
(Bit Nr. 6 in Konfiguration) kommt, sobald die Betriebsspannung unter 4V 
abfällt.

Setze ich das Bit 6 auf "0" dann klappts.

Besten Dank nochmal!

Olaf

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.