Hallo Microcontroller Interessierte Ich habe ein paar Fragen zu einem PIC (PIC 16F627A) Da ich gerade erst mit Microcontrollern anfange, wäre es nett wenn die Antworten etwas einfach formuliert wären. Also hier meine Fragen: 1. Wie liegen die Anschlüsse bei dem PIC? Damit meine ich hauptsächlich die Stromversorgung. 2. Ich möchte gerne ein Lauflicht mit ca.6/7 LEDs aufbauen, was für ein Quarz wäre dafür am Besten? 3. Hat jemand zufällig Schaltpläne von Lauflichtern mit dem PIC? Ich bedanke mich schon jetzt einmal für die Antworten!
Hauke Marquardt wrote: > 1. Wie liegen die Anschlüsse bei dem PIC? Siehe Datenblatt, zu finden auf www.microchip.com, genauer: http://www.microchip.com/wwwproducts/Devices.aspx?dDocName=en010208 > 2. Ich möchte gerne ein Lauflicht mit ca.6/7 LEDs aufbauen, was für ein > Quarz wäre dafür am Besten? Wenn's nicht hochpräzis sein soll, würde ich gar keinen Quarz nehmen, sondern den integrierten 4 MHz Oszillator. > 3. Hat jemand zufällig Schaltpläne von Lauflichtern mit dem PIC? http://www.gidf.de oder: Schliesse +5V und GND an die entsprechenden Pins (Vdd und Vss). Dazu nahe am PIC einen 100nF Kondensator. Dann die Leds z.B. an PortB. > Ich bedanke mich schon jetzt einmal für die Antworten! Bitte.
Hier der Link http://www.sprut.de/electronic/pic/programm/lauflicht/lauflich.htm Da der 16f627A pinkompatibel zum 16x84 ist, kannst du die Pins auch aus dem obgenannten Link entnehmen. Zum Quarz, ich würde den internen Oszillator verwenden, und auf einen externen Quarz verzichten.
1. Lies sprut. de 2. Lies das Datenblatt. 3. Versuche das alles zu verstehen. 4. Komme wieder, wenn dann noch Fragen sind. 5. Gehe auf meine Seite http://stefan-privat.de/Sven Im Bereich Elektronik findest du ein Lauflicht mit dem 12F629 Sven
Hauke Marquardt wrote:
> Wie macht man das denn ohne Quarz?
Indem der integrierte präzise (so 1..2%, siehe Datenblatt) RC Oszillator
verwendet wird.
>Das weiß ich ja, aber wie programmiere ich ich, so das er verwendet >wird? Im Configurationword den INTRC auswählen. Also beim brennen.
Das stellst du in den Configurationsbits ein. Also entweder im Brennprogramm die entsprechenden Häkchen setzen (INTRC) oder im Quellcode mit dem Befehl __CONFIG. Z.Bsp. so: __CONFIG _MCLRE_OFF & _PWRTE_ON & _WDT_OFF & _INTRC_OSC_NOCLKOUT & _BODEN_OFF ^^^^^^^^^^^^^^^^^^^ Sven
Ja es läuft!!!! :-) Aber RB4 wird ausgelassen.....???? Ich habe keine Ahnung wie das kommt. Hat das einer von euch schon einmal gehabt?? Und weiß einer von euch wie dieser Fehler zu beheben ist?
Du hast "LV-programming enable" beim Brennen aktiviert, oder im config-register nicht ausgeschaltet, deshalb funktioniert rb4 nicht.
Hauke Marquardt wrote: > Ja es läuft!!!! :-) > Aber RB4 wird ausgelassen.....???? > Ich habe keine Ahnung wie das kommt. > Hat das einer von euch schon einmal gehabt?? > Und weiß einer von euch wie dieser Fehler zu beheben ist? RA4 ist nen opencolector I/O d.h. der schaltet nach gnd haste des bedacht ?
Es war die Rede von RB4, nicht RB3. Zusätzlich hat der besagte uC keinen Open-collector Ausgang, wie du anscheinend glaubst.
Chris S. wrote: > Es war die Rede von RB4, nicht RB3. > Zusätzlich hat der besagte uC keinen Open-collector Ausgang, > wie du anscheinend glaubst. Jo verlesen, und klar hat der einen RA4
Aber ein Open-Drain ist der RA4. Und das ist bei so ziemlich allen 16F so. Deshalb muss man ja bei RA4 als Ausgang auch immer einen Pull-Up dran bauen, wenn man vernünftige Pegel haben will. Oder halt nur gegen Masse schalten lassen (LEDs z.Bsp.). Aber darum geht es dem OP eigentlich gar nicht. Es ging doch um RB4. Und damit sollte die Aussage von >Autor: Chris S. (schris) >Datum: 11.11.2008 23:00 > >Du hast "LV-programming enable" beim Brennen aktiviert, oder im >config-register nicht ausgeschaltet, deshalb funktioniert rb4 nicht. zutreffen. Sven
Wie muss ich das den umstellen? Mein Brenner ist eher spärlich ausgestatet. Wo finde ich denn das confic-register? Ist es dieses? [MPASMWIN] SourceFile=K:\Lauflicht\lauflicht.asm Radix=1 WarningLevel=0 HexOutput=1 ErrorFile=ON ListFile=ON XrefFile=OFF ObjectFile=OFF CaseSensitive=ON EnhancedMode=OFF MacroExpansion=0 Processor=16F627 TabSize=8 ExtraOptions= Top=168 Left=209
Nein, das ist es nicht. In deinem Brennprogramm muss es irgendwo ein Menü geben wo du die Configurationsbits einstellen kannst. Das hat nix mit dem Brenner als Hardware zu tun. Der brennt die Bits einfach mit, welche im Programm eingestellt sind. Oder du schreibst in deinen Quelltext mit dem Befehl __CONFIG die entsprechenden Bits mit rein (wie oben schon beschrieben). Der Assembler übersetzt das mit und schreibt das mit in das HEX-File. Das Brennprogramm erkennt die Anweisung aus dem HEX-File und brennt die Configbits wieder mit. Für den Anfang ist sicher das Einstellen im Brennprogramm das einfachste. Welchen Brenner und welches Brennprogramm benutzt du denn? Sven
Damit meinte ich ja das Brennprogramm. Ich benutze das Prennprogramm von Velleman. (Progpic2) In den Einstellungen habe ich diese Option nicht gefunden. Zusätzlich habe ich Prennprogramm von www.sprut.de
Warum lese ich jetzt eigentlich schon die Bedienungsanleitungen anderer Leute? Also: In deinem Brennprogramm ist das Configurationswort als Hexadezimaler Wert unter der Einstellung "Config." zu finden. Daneben befindet sich ein Button "Change". Gib dort mal den Wert 3F30 ein. Damit wäre der PIC auf interner Osz. ohne Taktausgabe, WDT aus, Powerup ein, Reset ein, BOR aus, LVP aus (damit RA4 nutzbar) und kein Codeprotect gesetzt. Wenn du willst wie man darauf kommt, dann siehe mal im MPLAB unter Configure -> Configuration Bits nach und lese endlich mal Anleitungen... Sven
Setz einfach in der __CONFIG Zeile noch ein "& _LVP_OFF" dazu. __CONFIG _MCLRE_OFF & _PWRTE_ON & _WDT_OFF & _INTRC_OSC_NOCLKOUT & _BODEN_OFF & _LVP_OFF
oder auch nicht. Ich sehe gerade dass _LVP_OFF dem Wert 0x00 entspricht. Also ob es drin steht oder nicht dürfte keinen Unterschied machen. Vielleicht hat er gar keine __CONFIG Zeile drin oder sein Programmer ignoriert die Einstellung einfach.
Gut, dann vermute ich mal stark, daß RB4 nicht auf LOW beim Programmieren ist, denn dann nämlich kann man das Konfigurationsregister nicht umändern, und es ist dann standartmäßig auf LVP und OSC_INT. bei meinem Headerfile ist _LVP_ON EQU H'3FFF' _LVP_OFF EQU H'3F7F'
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.