Hallo, Ich möchte PIC-Programmierung erlernen. Welches Buch ist dabei Hilfreich? bis bald Siegfried
Hi Das große PIC-Mikro Handbuch ist eigentlich nicht schlecht, aber kostet recht viel. Eigentlich reicht es wenn du dir die Seite von Sprut( www.sprut.de) durchliest. Dort stehen alle wichtigen Informationen für den Anfang. Brauchbar ist auch das Tutorial auf www.fernando-heitor.de(Das Forum selbst ist auch sehr hilfreich und interessant) Ich empfehle dir gleich mit den PIC18F anzufangen. mfg Schoasch Ps.: Mit welcher Programmiersprache willst du anfangen?
hallo, @ "Mit welcher Programmiersprache willst du anfangen?" weis ich noch nicht. Am besten wäre eine C++ ähnliche. bis bald Siegfried
Wie wärs denn dann mit C?! Dann empfehle ich nochmal die PIC18F ;-). Dafür gibts auf www.microchip.com eine IDE (MPLAB) und dazu einen C-Compiler (C18). Weiters ist im MPLAB auch der CCS-Compiler includiert. Da kannst du dann auch die kleinen PICs (PIC10F und ein paar PIC12F) in C programmieren. Für den C18 gibts auch ein "Getting start", wo der Start recht einfach erklärt wird. Hast du schon ein programmiergerät? Gibts noch irgendwelche Fragen? mfg Schoasch
Hallo, werde die Compiler mir ansehen. Programmiergerät habe ich. (GALEP4) bis bald Siegfried
Hallo, Habe eine kleine Frage. Wer ist bereit, einige Grundkenntnisse für PIC beizubringen. Von Vorteil wäre es, wenn diese/r im Raum 55743 wohnt, und gegebenfals sich auch mit mir direkt in Verbindung setzen würde. bis bald Siegfried
Hallo Siegfried Ich schreibe gerade ein Tutorial, für den leichten Einstieg in die PIC-Welt. Ich habe es noch nicht veröffentlicht und suche jemanden, der es mal Probe liest. Da ich aber persöhnlich keinen PIC-Anfänger kenne, für den ein solches Tutorial interressant wäre, kommst du sozusagen wie gerufen. Du kannst es ja mal durchlesen. Es ist speziell für komplette Anfänger. Ich kann dir dann auch ein bisschen weiter support geben. Typic
Hallo Michael, habe nocheinmal ins Forum gesehen. Werde dieses mal verarbeiten und melde mich wieder. gute Nacht und bis bald Siegfried
Hallo Timo und Thomas Etwas zu spät geworden. Habe bei der Anrede nicht aufgepasst. @Thomas, Link ist sehr gut. @Timo, lese gerne deine Anleitung durch, kannst dich ja wieder melden. bis bald Siegfried
ich hab jetzt nicht genau geschaut, obs schon einer geschrieben hat, aber wer pichilfe sucht sollte auch mal hier rein schauen!!! http://www.fernando-heitor.de/ dauert zwar manchmal ein klein wenig länger als im mikrocontroller.net aber ist halt ein reines picfroum. gruß
Hallo, Habe mir vorgenommen, dieses in C zu programmieren. Die Schreibweise kann man etwas mit C++ vergleichen. Habe aber noch wichtige Fragen. Suche die Syntax-Befehle für den PIC ( z.B. PORTA, PORTB usw.). Sollte in deutscher Sprache sein. Weiter möchte ich meine PIC in der Platine programmieren (Bootloader ??) Zum externen brennen nutze ich GALEP4. Ist leider noch nicht alles, was ich wissen möchte. Melde mich wieder. bis bald Siegfried
Hi Das Galep4 kann auch ICSP(In curcuit serial programming... sprich in der Schaltung) brennen. Ich hab selbst ein Galep4, jedoch hab ich dieses Feature nie benutzt. Ich hab mir von Sprut einfach den Brenner8minip nachbebaut und benutz jetzt den zum brennen. Der Vorteil hier liegt da, dass ich jetzt über USB und in der Schaltung brennen kann. Von Bootloadern halte ich recht wenig, weil es da zu Problemen mit dem Interrupt und mit dem speicher kommen kann. Und das umgehen diese Probleme will ich eigentlich vermeiden ;-) >>Suche die Syntax-Befehle für den PIC ( z.B. PORTA, PORTB usw.). Sollte >>in deutscher Sprache sein. Was meinst du denn damit genau? Schau am besten ins Headerfile deines Compilers, dort stehen die drin. mfg Schoasch
hallo, @Schoasch, dieses habe ich nicht verstanden. habe im Headerfile nachgesehen. "Was meinst du denn damit genau? Schau am besten ins Headerfile deines Compilers, dort stehen die drin." Ich habe damit gemeint, wie z.B. die schreibweise, um den Port A "zu lesen oder zu schreiben", oder einem Timer die Zeit mitgeben, ist. Werde warscheinlich den PIC16F877-20/P bei meinem ersten Pic-Projekt einsetzen. Bedingt durch die I/O's muß ich 4 Stück auf meinem Board bringen. Frage 1: kann ich die 8 analog input channels auch für digital I/O's verwenden? Frage 2: Wie oft kann ich den EEPROM beschreiben? Frage 3: Wenn ich im C-Sourcecode eine Variable z.B. 8bit Zähler angebe, wird diese im Data Memory(RAM) angelegt? Frage 4: Im Datenblatt sind 3 Pin angegeben mit RD, WR, CS. Kann ich mit diesen in verbindung mit "Port D" dem PIC aus einem externem Bussystem Daten übertragen oder auch abfragen? Frage 5: Da ich 4 PIC auf meinem Board benötige, muß ich dann für jeden PIC einen Quarz vorsehen, oder geht dieses auch anderst? Frage 6: Für "ICSP(In curcuit serial programming... sprich in der Schaltung) brennen" benötige ich eine 5 poligen Anschluß. Da die 5 Volt Stromversorgung nicht nur für die PIC's benötigt werden, muß ich dann beim Programmieren die 5V-PIC zu den anderen IC's unterbrechen ? Frage 7: Benötigt der PIC für die ICSP eine erste grundprogrammierung? bis bald Siegfried
Hi >>Werde warscheinlich den PIC16F877-20/P bei meinem ersten Pic-Projekt >>einsetzen. Bedingt durch die I/O's muß ich 4 Stück auf meinem Board >>bringen. Würden nicht auch IO-Expander gehen? Das wär vl einfacher und auch billiger. WIch will nicht unhöflich sein, aber einige deiner Fragen lassen sich durch einen kurzen Blick ins Datenblatt einfach beantworten.(Siehe Datenblatt Seite:3) >>kann ich die 8 analog input channels auch für digital I/O's verwenden? Ja, kannst du. Beachte aber das RA4 ein Open-Drain Ausgang ist.(Datenblatt Seite 12) >>Wie oft kann ich den EEPROM beschreiben? "1,000,000 erase/write cycle Data EEPROM memory typical" >>Wenn ich im C-Sourcecode eine Variable z.B. 8bit Zähler angebe, wird >>diese im Data Memory(RAM) angelegt? Variablen werden wohl im Ram abgelegt. Ich bin mir da aber nicht sicher.. aber ich glaub, man kann auch durch einstellung des Linkers/compilers einfluss darauf nehmen. Am besten ist, du fragst Bernd im www.fernando-heitor.de Forum >>Im Datenblatt sind 3 Pin angegeben mit RD, WR, CS. Kann ich mit diesen >>in verbindung mit "Port D" dem PIC aus einem externem Bussystem Daten >>übertragen oder auch abfragen? Das gehört zum Parallel Slave Port (PSP). Ja kannst du. >>Da ich 4 PIC auf meinem Board benötige, muß ich dann für jeden PIC einen >>Quarz vorsehen, oder geht dieses auch anderst? Du kannst einen Quarzoszillator für mehrere PICs verwenden, einen Quarz jedoch nicht. Das würde auch Probleme beim Platinen routing machen. >> muß ich dann beim Programmieren die 5V-PIC zu den anderen IC's >>unterbrechen Ich würd mal behaupten, dass hängt von der Schaltung(Belegung der ICSP-Pins) und deinem Brenner ab(ob diese alle PICs auch treiben kann). >>Benötigt der PIC für die ICSP eine erste grundprogrammierung? Nein. mfg Schoasch Ps.: ICh möchte dir das Forum von Fernando Heitor ans herz legen. Dort wirst du sicher noch einiges lernen.
Hallo, @Schoasch Danke für deine ausführliche Antworten. Ich finde es nicht als unhöflich, erst einen Blick ins Datenblatt zu werfen oder selbst im Internet suchen. Diese Aktionen sollten immer zuerst erfolgen. Kein Problem wenn ich auf solches hingewiesen werde. Muß leider von mir preisgeben, das ich kein Englich gelernt habe. Somit bin ich öffters auf die hilfsbereiten Mitglieder von Forums angewiesen. Die vorgeschlagene IO-Expander Version werde ich im Auge behalten. Muß in Eagele 3.55 erst das Libary anlegen, und dann im Schaltplan die Möglichkeit einfliesen lassen. Was ich voraus an I/O's für das Board abschätzen kann, sind wie folgt. 32 Out für Opto 16 In für Opto 16Out für Kontroll LED mal sehen, ob ich für die Opto IO-Expander 8Bit oder seriell mache, das gleiche für die LED 3 In für WR,RD,CS 8 In/Out für daten 1 IN für Reset X für ICSP X für VCC/GND bis bald Siegfried
Hast du dir Spruts Seite schon zu gemüte geführt? Und auch Fernando Heitors Seite? www.sprut.de www.fernando-heitor.de Da stehen sehr viele Infos auf Deutsch. Wie schnell soll den auf alle Ein- und Ausgänge zugegriffen/reagiert werden? Bei den Eingängen würd sich ein IO-Expander mit Interrupt anbieten. Maxim und NXP haben da einige im Angebot. für die Ausgänge(zb für die LEDs) wären zb.: schieberegister eine überlegung wert. Du hast oben geschrieben, dass du in C programmieren willst. Und wieso nimmst du da dann einen PIC16F? Hast du dafür schon einen Compiler? Ansonst würd ich dir wirklich einen PIC18F ans herzen legen. HAst du Probleme mit SMD Bauteilen? Erklär mal bitte etwas mehr über dein Projekt. Vl kann man dir dann etwas besser Helfen. mfg Schoasch
Hallo, habe die Seiten mir angesehen. Der Zugriff auf die Ein- Ausgänge ist unterschiedlich. Die Ausgänge für die LED sind nur zur Kontrolle. Die 32 Ausgänge müssen mindestens 10kHz verarbeiten. die 16 Eingänge sollen relativ schnell reagieren, da diese entsprechend je einem Eingang zwei der 32 Ausgänge abschalten soll. Die 8 I/O für Daten und die 3 Steuerbit müssen mit dem Bussystem mithalten. Der IO-Expander muß ich mir ansehen, da ich diese nicht kenne. Zur Zeit habe ich den Compiler CC5X. Auf der Homepage gibt es auch einen CC8E. Werde mir auch die PIC18F... ansehen. Probleme mit SMD habe ich nicht, werde aber keine Chips mit Pinabstand < 1 mm verarbeiten. Dafür bin ich nicht ausgerüstet. Nun zu der Projektbeschreibung. Das Projekt nutze ich für mein Hobby. (Modelleisenbahn) Habe ein Programm in C++ geschrieben, das die Anlage steuert und überwacht. Die Anbindung an die Hardware erfolgt über die parallele Schnittstelle. Die Hardware besteht aus einem großem 19" Rahmen mit unterschiedlichen Einschubkarten. Zu der Karte mit den PIC. PC überträgt Daten an Karte/PIC mit unterschiedlichen Parameter. Der PIC soll die Berechnung des PWM Signal berechnen. Das PWM Signal steuert über einen Opto eine kurzschlußfeste FET-Enstufe an. Bei Kurzschluß muß der PIC das Signal unterbinden und über den Bus es dem PC mitteilen. bis bald Siegfried
Hallo, // Taktfrequenz 4MHz #include <C:\cc5\16F84.h> // Prozessor-Typ definieren #pragma config |= 0b.1111.1111.0010 // Konfigurationswort void pause(void) // Unterprogramm zum Abwarten einer Millisekunde { OPTION = 2; // Vorteiler auf 8 einstellen TMR0 = 131; // 125 * 8 = 1000 (= 1 ms) while (TMR0); // Schleife, solange bis TMR0=0 wird } habe mir dieses Beispiel angesehen. Frage: wa bedeutet " OPTION = 2;" bis bald Siegfried
Scha dir mal die Seite 9 im Datenblatt an dann wirst du sehen das eine Dezimale 2 im Option Register nur das bit 2 setzt und damit der Vorteiler auf 1:8 gesetzt wird. MFG Ralf
Siehe Datenblatt PIC16F84 page 9, Abschnitt 2.3.2 Erklärung des OPTION-Registers Die Bits 0, 1 und 2 sind der (Vor-)Teilerfaktor für Timer0 bzw. Watchdog. Ein Wert von 2 (binär 010) heisst Teiler durch 8 für den Timer oder Teiler durch 4 für den Watchdog.
Hallo, bin gerne bereit mit den "PIC18F" zu arbeiten, habe aber weder bei R, C, K, einen entsprechenden Typ zum "PIC16F877" gefunden. Welcher unterschied ist zwischen "PIC18F877" und "PIC18F877A". wieviele Bit werden in der " SPI Mode " übertragen? Stellt man die Anzahl z.B. 32 Bit ein oder werden diese immer in einem Paket von 8 Bit übertragen. Habe ein kleines Demo (Schaltplan) dazu gesehen, in diesem 32 Bit gelesen und geschrieben werden. bis bald Siegfried
Hi Probiers doch mal mit dem PIC18F452(Reichelt: PIC 18F452-I/P).WEnn du Schüler oder Student bist, kannst du dir auch direkt von Microchip mal ein paar Samples zum kennenlernen zukommen lassen. Die A-Version ist eine neue Überarbeitete Version des µC, wo dann diverse andere Features dazu gekommen sind. SPI überträgt beim PIC immer nur 8 Bit in einem Stück. Mehr kann er auch nicht Schicken, da sein Shiftregister halt mal nicht grösser als 8 bit ist. mfg Schoasch
hallo, schade, die Uhr kann man nicht zurückdrehen. Würde gerne bei Microchip dan das Angebot warnehmen. zum PIC18F452, I/O, Code und Ram sind ok. Aber kein EEPROM SPI ist dan auch ok. Muß dann die Byts immer in Pakete veschicken. bis bald Siegfried
> zum PIC18F452, I/O, Code und Ram sind ok. Aber kein EEPROM
Dann muss ich Tomaten auf den Augen haben ;-)
Hallo, nein. Ich sollte auch Datenblatt durchsehen. Ist auch schon spät. Device FLASH (bytes) Single Word Instructions RAM(bytes) Data EEPROM(bytes) PIC18F242 16K 8192 768 256 PIC18F252 32K 16384 1536 256 PIC18F442 16K 8192 768 256 PIC18F452 32K 16384 1536 256 Hier die Reichelt Info ; Produktbeschreibung: Gehäuse: DIP-40 Programm-Memory: 16394x16 Ram-Bytes: 1536 max.: 40MHz I/O-Pins: 34 Hersteller:MICROCHIP Artikelnummer des Herstellers: PIC18F452-I/P ; Produktbeschreibung: Gehäuse: PLCC-44 Programm-Memory: 16394x16 Ram-Bytes: 1536 max. MHz: 40MHz I/O-Pins: 34I/O Hersteller:MICROCHIP Artikelnummer des Herstellers: PIC18F452-I/L ; bis bald Siegfried
Hallo freunde, ich habe zufälig ins forum geraten. Aber weil sehr gut känne PIC microprpcesoren möchte ich emfelen wunderbare Bücher und entviklungs hardware welche einmalig ist und mit hilfe von sehr erfarenen tim. Am schenste dabei ist das man Buch für einsteiger umsonst am internet ist. Auserdem Basic Paskal und C sind frei zu laden eizige begrencug ist der grese des programs. Preise für foll werion sind auch manirlich. sehen Sie www.mikroe.com/de/ Gruss Vukic
bogdan wrote: > bitte hilfe!! > > was konnen sie mir uber PIC18F877A sagen. Dass es ein solches Ding meines Wissens gar (noch) nicht gibt! Was wollen Sie den wissen?
ich habe ein ubung fur die schule und ich muss Suche das Datenblatt des PIC18F877A. wo konnte ich es suchen
Es gibt keinen PIC18F877A, wenn es 877A sein soll dann ist es ein PIC16F. Datasheet gibt es hier http://ww1.microchip.com/downloads/en/DeviceDoc/39582b.pdf
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.