pic12F508 I/O Pins Denkfehler?

OP #1781772
Lesenswert?
• ▲
▼
Moin moin,
ich beschäftige mich schon etwas länger mit PIC´s, allerdings blieb dies 
bis jetzt nur auf den 16F84 beschränkt. Habe nun ein kleines projekt in 
dem Ich einen 12F508 benutzen möchte.
Zur programmierung des Pic´s benutze ich das Pickit 2. Als Programm 
MPLAB 8.40 und zum complieren den cc5x.
Da ich zum ersten mal per ICSP programmiere habe ich ein Adapterkabel 
und eine kleine programmierplatine erstellt um den PIC mit dem 
Programmer zu verbinden. Das ist so weit glaube ich auch in Ordnung.
Als erstes wollte ich alle I/O Pins auf Output stellen und an jedem 
einen High pegel liegen haben.
Nun kommt das was ich mir net erklären kann. Wenn ich folgendes in C 
eingebe:

#include <C:\cc5\12F508.h>    // Prozessor-Typ definieren
void main(void)        // Start des Hauptprogramms
{
TRISGPIO = 0b.0000.0000;    // Alle Pins sind Ausgänge
GPIO = 0b.0011.1111;            // Alle High-Pegel
}

Kommt als .asm folgendes heraus:

  processor  12F508
  radix  DEC

PORTB       EQU   0x06
GPIO        EQU   0x06

  GOTO main

main
                  ;TRISGPIO = 0b.0000.0000;// Alle Pins sind Ausgänge
  MOVLW 0
  TRIS  PORTB
      ;GPIO = 0b.0011.1111;// Alle High-Pegel
  MOVLW 63
  MOVWF GPIO
  SLEEP

  END

Wenn ich nun mein PIC Programmiere passiert garnix, MPLAB sagt alles ist 
in Ordnung.
Ich gehe mal davon aus das etwas an dem code nicht stimmt.
Wenn ihr nen tipp für mich habt wäre ich dankbar.
Mfg.
Gast #1781916
Lesenswert?
• ▲
▼
Pronbiers mal so:

#include <C:\cc5\12F508.h>    // Prozessor-Typ definieren

#pragma config |=0b11001

void main(void)        // Start des Hauptprogramms
{
TRISGPIO = 0b.0000.0000;    // Alle Pins sind Ausgänge
GPIO = 0b.0011.1111;            // Alle High-Pegel
}
OP #1781950
Lesenswert?
• ▲
▼
Danke für eure Hilfe.
Habe die config nun innerhalb meines codes erstellt, MPLAB hat es trotz 
der entsprechenden Einstellung nicht selber gemacht.
Bleibt bei mir noch eine Frage offen.
Kann ich den PIN Nr.2 GP2/TOCKI als normalen Output benutzen?
Wenn ja, muss noch etwas spezielles umgestellt werden, im mom bekomm ich 
kein high pegel mit ihm erzeugt, alle anderen funktionieren.
MFG
OP #1782044
Lesenswert?
• ▲
▼
Sorry, ich meine natürlich Pin Nr. 5.
Schaffe es einfach nicht einen High Pegel damit zu erzeugen, ist nun 
auch nicht weiter schlimm, weil ich den auch als Input Pin benutzen 
kann... das funktioniert ohne Probleme.
Ich hab zwar immer noch keine Ahnung warum sich GP2 nicht auf high 
schalten lässt aber danke euch trotzdem für eure Hilfe.
Falls jemand doch noch einen Gedankenblitz hat, warum GP2 nicht will 
kann er ja nochma schreiben.
Mfg

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.