PIC16F1825 will nicht so, wie ich will

Gast #3024476
Lesenswert?
• ▲
▼
Hallo zusammen,

ich habe folgedes Problem, ich habe hier ein Board mit einem PIC16F1825 
Die Funktion der Hardware ist folgende, auf dem Pin RC5 ein 100Hz PWM 
ausgeben und der Pin RA2 ist als Capture eingestellt. Die Pins RC0 und 
RA4 steuern jeweils eine Status-LED an. Das Problem, was ich habe, wenn 
ich den Timer 1 fürs Capture konfiguriere (initTimer1();), dann geht der 
Pin RA4 nicht mehr, kommentiere ich die Funktion aus, dann gehts wieder. 
Das gleiche Verhalten ist auch für den Pin RA5 zu beobachten. Die 
restlichen Pins des Ports A RA0 und RA1 gehen ohne Probleme (USART), RA3 
ist /MCLR. Der Pin RC0 (und andere freie RC-Pins) geht auch immer.

Ich habe mittlerweile alles mögliche probiert. Der Quellcode ist aufs 
Nötigste zusammengestrichen und ich finde den Fehler nicht.

Fällt irgedjemand was auf, was ich vergessen habe?

Danke im Voraus.
Angehängte Dateien:
#3024785
Lesenswert?
• ▲
▼
andy schrieb:
> PIC16F1825 will nicht so, wie ich will

Ein ähnliches Problem habe ich mit meiner Frau auch (naja, manchmal ;-)

> Fällt irgedjemand was auf, was ich vergessen habe?
Nur mal ins blaue geraten (absolut keine Zeit momentan, sry):

Mit Deiner AFCON1/2 Einstellung legst Du T1G auf den RA4. Wenn Du dann 
den Timer1 aktivierst übernimmt er den Pin, oder ?

Grüße
Andreas
Gast #3025502
Lesenswert?
• ▲
▼
>T1OSCEN  = 1;//Timer1 Oszillator aktivieren

>Wieso das? Damit schaltest du einen Uhrenquarz an T1OSO/T1OSI ein. Kein
>Wunder, das RA4/RA% danach nicht mehr als Port zu gebrauchen ist.

Du hast recht, genau das war das Problem. Jetzt fällts mir wie die 
Schuppen von den Augen, hätte ich mir das Blockdiagramm genauer 
angeschaut, hätte ich es auch gesehen, aber nein, das läuft wie immer, 
man verrennt sich.

Danke für den Tip.

>Mit Deiner AFCON1/2 Einstellung legst Du T1G auf den RA4. Wenn Du dann
>den Timer1 aktivierst übernimmt er den Pin, oder ?

Nicht ganz, man muss dann auch die Funktion im Timer aktivieren.
Der Reset-Wert der beiden Register ist eh 0x00, das war reine 
Probiererei nach dem Motto "vielleicht bringts was" :-)

Antwort schreiben

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.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.