PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : PIC 18F1230



poorsod
09.04.2008, 15:34
Hi,

Habe den PIC 18F1230.

Ich habe ein Problem und zwar habe ich erst seit kurzem angefangen PIC's zu programmieren. Jetzt meine Frage: Hat jemand ein Programm oder kann dies schnell schreiben ( bitte in der Programmiersprach C ) damit ich z.B. am Ausgang RB0 eine LED anhängen könnte und diese dann schön leuchtet?
Leider schaffe ich nicht einmal das.

Zur meiner arbeitsumgebung (falls das wichtig ist) ich arbeite auf keinem Board, ich habe den PIC auf einer steckplatine, daher wäre vieleicht einige Tipps für externe Bauteile angebracht, da vielleicht mir hier ein Fehler unterlaufen ist.

Ich danke euch schon mal im Vorraus für die Antworten

mfg Poorsod

theborg
09.04.2008, 15:37
schau mal auf sprut.de nach der grundschaltung da findest auch einige beispiele im bezug auf die leds

Enrock
09.04.2008, 15:38
Servus,

wie wäre es, wenn du mehr zu deinem Aufbau schreibst oder gar ein Bild postest!

Gruß

poorsod
09.04.2008, 16:00
Also hier im Anhang findet ihr meine aufgebaute Schaltung...

Enrock
09.04.2008, 16:08
Servus.
Und als Oszillator benutzt du dann den internen? Weil extern ist ja kein Quarz angeschlossen.
Gruß

poorsod
09.04.2008, 16:17
jop genau, das hatte ich vor.
leider weiss ich nicht genau was ich mit den Anschlüssen TX/CK & RX/DT machen soll, kann ich diese einfach unangschlossen lassen?

Aber der interne Quarz sollte mir jetzt noch keine Sorgen bereiten, da ich ihn noch nicht gebrauche. Oder doch?

mfg

Enrock
09.04.2008, 16:22
Also...

les dir auf jeden fall mal die sachen unter www.sprut.de durch. Und ja du brauchst mindestens den internen Qurz damit der PIC überhaupt läuft.
Und TX/RX stehe unter andem für die Kommunikation via RS232. Achja jeder Port hat mehrer Funktionen soviel sei schon mal gesagt.
Ich programmiere nur in assembler von daher kann ich dir in sachen Code schwer helfen also ohne C compiler
Gruß

poorsod
09.04.2008, 16:31
ok danke,

aber RS232 brauch ich nicht, da ich den PIC immer schön ausziehe und in den brenner klemme... (später dann per ISCP)

sprut.de kenne ich leider habe ich keine brauchbaren codes gefunden, vor allem nicht für meinen PIC. z.B. bin ich mir nicht sicher ob ich ein #include brauche... und die meisten code bsp. die es hat (welche sicherlich sehr gut sind) sind leider nicht in C geschrieben, oder ich habe sie nicht gefunden.

Ich hoffe ihr könnt mir hier noch weiterhelfen!

mfg Poorsod

Duke of Doom
09.04.2008, 16:53
Welchen C-Compiler verwendest du? (c18 oder ccs)

poorsod
10.04.2008, 23:58
Ich verwende den CC5X-Compiler... und zum brennen des PIC's das SmartProg von ELNEC.

the_Ghost666
13.04.2008, 20:09
Wird der PIC wirklich unterstütz? Hast du in den Config Bits den internen Oszi angegeben?

poorsod
14.04.2008, 07:58
ja, PIC wird unterstützt. In den Config Bits habe ich den Oszi auf intern geschaltet.
Denke also, dass es nur noch an meinem C-Programm liegen kann...

Habe gerade gemerkt, dass ich einen Fehler gemacht habe und zwar habe ich den internen Clock im C-Programm nicht definiert, jedoch weiss ich auch nicht wie ich das mache!

OSCTUNE: OSCILLATOR TUNING REGISTER

Ich denke ich bräuchte dies: (bit7) '00001111' (bit0) hex: 0x0F

Wie kann ich dies aber in meinem C-Code integrieren?

Danke für eure Hilfe

poorsod
14.04.2008, 08:13
habs herausgefunden, ich muss nur OSCTUNE = 0x0F; und schon funktioniert es!

endlich...

poorsod
15.04.2008, 11:32
war nix, ist nur so ne feineinstellung für die 32kHz einer Uhr oder so...

aber das Programm läuft jetzt einwandfrei:

void main ()
{
ADCON1 = 0xFF; //PORTA. 0....4 auf IN/Out statt analog
TRISA = 0xFF; //PortA Richtungsreg auf Input (hex)
TRISB = 0x00; //PortB Output (hex)

while(1)
{
PORTB = 0x88; //Alle Ausgänge auf 1
}

}

Das Ziel ist es von mir, dass ich eine Blockkommutierung (für Drehstromerzeugung) programmieren kann, leider habe ich kein Plan wie ich da weiterfahren sollte....
Hat jemand eine Idee?