PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Pic betreiben



El_Salvador
10.12.2007, 20:36
Hallo Leute,

ich bin grad neu hier und will gleich auch was wissen^^.

Ich besitze einen Pic16f690 und will ihn mal anschließen(zum test ob der richtig funktioniert). Kann mir dabei bitte jemand helfen. Bin extrem unerfahren damit(Bin eher mit java zurrechtgekommen).

Nun zu meinen Fragen:

1. ich will einige port-pins einfach nur auf high haben. Wie geht den der Befehl(in C)?

2. Wie schließe ich den uC an, weenn ich nur die portpins ansteuern will(ohne PWM oder so)

theborg
10.12.2007, 21:27
schau mal auf sprut.de

El_Salvador
11.12.2007, 14:22
Ok, vielen Dank erstmal für die schnelle Antwort.

Auf der Seite habe ich auch gleich ein Schaltplan unter "Was braucht ein PIC zum arbeiten an Peripherie?" gefunden. Demnach ist alles klar, bis auf den CST. Ich benötige einen Schwinger mit 1,4,8 oder 20MHz, laut Datenblatt. Ich habe momentan nix von allem(so viel zeugs, dennoch nix da^^). Aber ich hätte ein Quarz mit 4,194MHz geht der auch?

theborg
11.12.2007, 14:39
jo 1 bis 20Mhz

.....

El_Salvador
11.12.2007, 15:09
kann ich dann den Quarz einfach an den fosc1 und fosc2 anscließen? Denn auf dem Bild ist das so, aber da läuft noch ei pin zu Ground. Wie muss ich das machen?

Beim googeln hab ich gesehen, das einer 2x 22pF Kondensatoren an Masse hat und an Fosc1 und Fosc2 verbunden hat. Dann hat er den Quarz mit den beiden verbunden. das kapier ich absolut nicht. Wofür sind da die Kondesatoren?

http://webfuture.it/pctuner/ICD-2_1.2_Schematic.gif

HF SHOOTER
11.12.2007, 17:35
Die Kondensatoren brauchste um den Quarz zu belasten sonst schwinget er nicht.

mfg
Benny

El_Salvador
12.12.2007, 23:23
OK,... dann müsste ich Hardware technisch alles wissen, um es mal zu betreiben. Nun hab ich mir mal nen Code zusammengeschuhstert und wollte mal sicher gehen, dass der auch klappen würde.

Ich benutze MPLAB 8.00 und picl.

-------------------------------------------------------------------
#include <pic.h>

main(void)
{
int i = 0; // grad unnuetz
TRISA = 0b00000000; // Alle Pins des Ports A sind Ausgänge
PORTA = 0b00010101; // Port A, bit 1 3 und 5 auf high und den rest auf low
while(1);
}
-------------------------------------------------------------------

Könnte sich jemand das angucken, ob das funktionieren würde und ob ich das richtig verstanden habe? Bin mir da nicht so sicher, weil ich schon Code gesehen habe, da wurde GPIO1 = 1 verwendet, aber das geht bei mir nicht:-(

Ich müsste dann, nach dem Quellcode theoretisch pin 19,17 und 3 auf high haben. Stimmt das?

T.J.
13.12.2007, 08:13
klingt soweit gut, aber ich bin nicht sicher ob du auch noch die PIC konfiguration im code brauchst.

El_Salvador
14.12.2007, 11:29
Kondensatoren benutzt. Das Problem ist, es liegt nix am RA0(RA2, RA4) an.

Ich habe zwei Theorien:

1. Es könnte an den Werten der Kondensatoren liegen(2,2uF)

2. Es liegt wirklich an den Einstellungen.



Kann mir jemand das #define__ geben? Müsste eigendlich ganz primitiv sein [-o<

Die Anschlüsse können es nicht sein, die habe ich mehrere mals Kontrolloliert.

Ich hoffe, dass ich niemandem auf den Geist gehe mit dien leichten fragen und bitte um hilfe.

MfG

El_Salvador

HF SHOOTER
14.12.2007, 14:39
Hi,

Die beiden Kondensatoren müssen ineinem Bereich von ca. 15 - 33 pF liegen, deine sind also vom Wert her viel zu hoch!

mfg
Benny

El_Salvador
17.12.2007, 10:31
Vieleb dank an alle. Ich kann jetzt den Pic schreiben und ansteuern.

Die Kondensatoren waren wirklich zu groß(war eben ne notlösung, wegen Bestellung. musste erst kommen).