Welchen PIC soll ich verwenden? [geschlossen]

9

Was ist der beste PIC, mit dem man anfangen kann zu lernen? Ich möchte einen PIC mit 8 Pins und analogen Eingängen.

Ich habe einen 16F628A, aber ich denke, dass der 16F684 besser sein könnte. Was ist der Unterschied zwischen PIC16F648 und 684A?

Welches wäre das Beste?

Andrew
quelle
4
Wenn Sie nur lernen , warum sollten Sie dann ein so minimales 8-Pin-Teil auswählen? Ich möchte lieber mit etwas beginnen, das mehr Funktionen bietet, und dann verkleinern (oft sehr einfach, wenn Sie in derselben Familie bleiben), wenn Sie eine bestimmte Anwendung im Auge haben.
Nick T
1
Damit ein allgemeiner PIC einige Hobbyprojekte durchführen und anfangen kann zu lernen, muss er sich nicht um die 16-köpfige Familie kümmern. Stellen Sie sich diese für spezielle Anforderungen vor, wie niedrige Kosten für Produkte mit hohem Volumen, besonders geringen Stromverbrauch und geringe physische Größe. Nichts davon ist für Ihren Fall von Bedeutung. Holen Sie sich das größte Beste in einem 28-Pin-Gehäuse wie einem 18F2620. Das hat viel mehr Dinge, die Sie für den Anfang ignorieren können, aber dann lernen, im Laufe der Zeit zu verwenden.
Olin Lathrop

Antworten:

14

Könnte auch meine 2 Cent reinstecken.

Microchip verfügt hier über eine Teileauswahl: http://www.microchip.com/maps/microcontroller.aspx Sie können alle erforderlichen Elemente eingeben und sehen, was Ihren Anforderungen entspricht.

Wenn Sie einen PIC wünschen, mit dem Sie leichter lernen können, sollten Sie sich keine Sorgen über eine niedrige Pin-Anzahl machen. Stattdessen sollten Sie sich beispielsweise ansehen, welchen Compiler Sie verwenden und welchen Pakettyp der Chip hat. Wenn Sie Brotbrett möchten, sollten Sie einen PIC in einer Durchgangslochversion erhalten. Sie können auch ein Entwicklungsboard mit der gesamten erforderlichen Hardware erwerben.

Ich habe Sie als Compiler erwähnt, weil nicht alle PIC-Serien gute kostenlose oder billige C-Compiler haben. Die PIC16F-Serie hat eine ganz andere Architektur als die PIC18F. Aus diesem Grund unterstützen einige der C-Compiler die 16F-Serie nicht, sodass Sie in der Montage programmieren oder etwas Geld ausgeben können. Da die Architektur unterschiedlich ist, ist es auch schwieriger, etwas in der Montage darauf zu tun.

Kurz gesagt, ich würde empfehlen, eine PIC18F-Serie zu verwenden, es sei denn, Sie haben strenge Anforderungen an 8 Pins. Die Klasse, die ich unterrichte, hat nur aus den von mir aufgeführten Gründen auf die Verwendung der 18F-Serie umgestellt.

Kellenjb
quelle
Vielen Dank! Aber ... gibt es kein 8-Pin-Bild, das ich mit einem einfachen C-Compiler verwenden kann? [muss analogen Eingang haben] ???? danke ps.: diese seite, die du gesendet hast, ist zu kompliziert für mich [einen anfänger]
Andrew
Der PIC18F1330 wird in einem 18-poligen DIP-Gehäuse geliefert und verfügt über einen UART, einen 4-Kanal-10-Bit-ADC, 3 Komparatoren mit programmierbarer Referenz, 6 PWM-Kanäle und zwei 16-Bit-Timer: ww1.microchip.com/downloads/en/DeviceDoc /39758D.pdf
tcrosley
@ Andrew, wenn Sie 8-Pin wollen, überprüfen Sie meine Antwort. Sie können SourceBoost herunterladen, das einen kostenlosen C-Compiler mit begrenzter Codegröße enthält (die 8-Pin-Chips haben weniger Speicher, als Sie ohnehin mit BoostC kompilieren dürfen.)
Mr. Hedgehog
7

Wenn Sie nach 8-Pin sind, würde ich den PIC12F683 ausprobieren. Es hat die gleiche Pinbelegung wie das PIC12F675 und das PIC12F629, verdoppelt jedoch den Speicher und alle Funktionen der kleineren Modelle.

8-Pin-PICs sind ein guter Einstieg, da sie so einfach sind, dass Sie sie schnell verwenden können, ohne zu viele neue Informationen im Kopf zu haben. Denken Sie daran , dass viele Tutorials erwarten , dass Sie zu verwenden PORTAoder PORTBdavon 8-Pin - binäre Ein- oder Ausgänge. Da diese Chips nur 6 Eingangs- / Ausgangspins haben, werden Sie sie verwenden GPIO.

Lesen Sie das Datenblatt, bevor Sie es verwenden.

Im Anschluss würde ich einfach zu einem PIC18F oder PIC24F übergehen (wählen Sie einen aus, der den gewünschten Funktionen und dem gewünschten Speicher entspricht - Sie können dies besser beurteilen, nachdem Sie mit einem PIC12F herumgespielt haben).

Mr. Hedgehog
quelle
6

Acht Pins und analoge Eingänge bedeuten so etwas wie den PIC12F675. Es verfügt über einen 10-Bit-ADC mit vier Kanälen.

Ich würde den 16F628A vergessen, wenn Sie nichts anderes finden, er ist veraltet. Das moderne Äquivalent ist der 16F88. Letzteres verfügt über On-Chip-Debug-Hardware, die Sie mit vielen kleineren Geräten nicht erhalten (sie benötigen einen speziellen Debug-Header).

Das A nach einem Teil zeigt an, dass es sich um eine neuere, verbesserte Version handelt.

Leon Heller
quelle
+1 für die Nichtverwendung von 628A. Viele Bücher gehen dafür und es ist veraltet. Viele Bücher verwenden absolute Montage und das ist auch veraltet (ungefähr 10+ Jahre). Ich verwende die Baugruppe (natürlich umsetzbar) für die 16F-Serie. Ich habe den 16F88 verwendet, aber ich habe den PIC16F1825 gefunden, der schneller ist, eine niedrigere Spannung, einen verbesserten linearen Speicher im mittleren Bereich aufweist und viel billiger zu booten ist. Ich habe angefangen, das vor allem anderen zu verwenden, billiger als ein guter Motivator.
Carveone
5

Ich würde den PIC16F690 empfehlen.

Es ist ein großartiger Starter-Chip: Er verfügt über 256 Byte EEPROM, 7 KB Programmspeicher, 256 Byte RAM, 3 Timer (1 x 16 Bit), MSSP, UART, 8-Kanal-10-Bit-ADC, Komparatoren - alles, was Sie brauchen sollten. Der verwendete Mikrochip liefert den Chip mit seinen PICkit 2-Demoboards. Sie liefern jetzt den PIC16F887 aus, der ebenfalls ein sehr leistungsfähiger Chip ist (ähnlich dem PIC16F690).

Thomas O.
quelle
Es gibt eine ganze Reihe von Beispielprogrammen im Internet, die auch den 16f690 betreffen (wahrscheinlich, weil er früher mit dem pickit2 ausgeliefert wurde). Das ist immer eine gute Sache für den Anfang.
Ponkadoodle
4

Ich würde PIC16F877A empfehlen .

Dies hat 5 Ports für E / A-Operationen. Hiermit können Sie Schritt für Schritt die PIC-Programmierung erlernen, beginnend mit LEDs, Schaltern, 7-Segment-Anzeigen, externen Interrupts, Hardware-Interrupts (Timer0,1,2), USART, CCP, EEPROM usw.

Dieser leistungsstarke (200-Nanosekunden-Befehlsausführung) und dennoch einfach zu programmierende (nur 35 Einzelwortbefehle) CMOS FLASH-basierte 8-Bit-Mikrocontroller packt die leistungsstarke PIC®-Architektur von Microchip in ein 40- oder 44-Pin-Gehäuse und ist abwärtskompatibel mit dem PIC16C5X-, PIC12CXXX- und PIC16C7X-Geräte. Der PIC16F877A verfügt über 256 Byte EEPROM-Datenspeicher, Selbstprogrammierung, einen ICD, 2 Komparatoren, 8 Kanäle 10-Bit-Analog-Digital-Wandler (A / D), 2 Erfassungs- / Vergleichs- / PWM-Funktionen, die synchrone serielle Schnittstelle kann Sie können entweder als SPI ™ (3-Wire Serial Peripheral Interface) oder als I²C ™ -Bus (2-Wire Inter-Integrated Circuit) und als USART (Universal Asynchronous Receiver Transmitter) konfiguriert werden. All diese Funktionen machen es ideal für fortgeschrittenere A / D-Anwendungen in Automobil-, Industrie-, Haushalts- und Verbraucheranwendungen.

Es kann über eine serielle Verbindung programmiert werden.

Vicky Rao
quelle
1
Hat es analoge Eingänge?
Andrew
2
Was bedeutet "Es hat UART-Unterstützung, die die wirtschaftlichste ist, die das Einbrennen von Code absolut cool macht"?
XTL
Sie können die Kosten für einen USB-232-Konverter im Wert von 15 US-Dollar nicht berücksichtigen, da Computer mit RS232-Anschlüssen schon lange nicht mehr hergestellt wurden.
Nick T
16F877A war der Höhepunkt des 14-Bit-Kerns, wird jedoch jetzt durch den 16F887 (14-Bit-Kern) und die verbesserten 14-Bit-Kernchips (16F1xxx) ersetzt. Aber wie gesagt, wenn das OP keine strengen Anforderungen für einen 8-Pin-Chip hat (die Chips, die er erwähnt, sind keine 8-Pin-Chips, also denke ich, dass er es nicht tut), würde ich empfehlen, einen 18F-Chip auszuwählen.
Wouter van Ooijen
4

Ich würde Herrn Hedgehogs Vorschlag, mit dem PIC12f683 zu arbeiten und die compilerfreie Version von SourceBoost zu verwenden, nachdrücklich unterstützen. Es ist ein großartiger Chip mit vielen Funktionen und viel Programmraum / RAM für einen so kleinen Teil. Nicht um meine eigene Trompete zu blasen, aber hier sind einige Dinge, die ich damit gemacht habe .

Wenn Sie etwas Größeres wollen, schlage ich vor, direkt zur 24f-Serie zu gehen. Sie kosten das gleiche oder oft weniger als die 18f-Serie mit besseren Eigenschaften. Der Compiler ist kostenlos, sie sind 16 Bit, können sehr schnell laufen (16 Mips) und am besten haben die meisten Peripheral Pin Select (PPS), mit denen Sie so ziemlich alle Peripheriegeräte (SPI, USART, CCP usw.) so ziemlich zuweisen können Jeder GPIO-Pin, den Sie mögen. Diese machen das Routing Ihrer Leiterplatten so viel einfacher.

Meine Favoriten wären der PIC24FJ64GB002 und der PIC24FJ64GA102. Sie sind beide im DIP-Paket (28 Pin) erhältlich, haben Tonnen von Programmspeicher und RAM (64 KB, 8 KB) und viele Peripheriegeräte. Sie sind ziemlich identisch, außer dass GB002 USB-Hardware auf Kosten einiger GPIOs eingebaut hat.

IMHO Als Anfänger lohnt es sich nicht, sich mit der 16f- oder 18f-Serie zu beschäftigen, es sei denn, Sie haben ein ganz spezielles Bedürfnis danach.

Und schließlich holen Sie sich den USB-basierten PicCit 2 oder 3 In Circuit Serial Programmer (ISCP). Sie sind nicht teuer bei etwa 30 USD. Es lohnt sich einfach nicht, sich mit älteren / billigeren / gefälschten / selbstgebauten Programmierern zu beschäftigen, zu viel Aufwand. Natürlich können Sie später einen Bootloader verwenden, wenn Sie möchten, aber als Anfänger mit einem neuen Projekt möchten Sie sicher sein, dass alle Probleme, die Sie haben, mit Ihrer Schaltung und nicht mit Ihrem Programmierer zusammenhängen. Es war das Beste, was ich getan habe, um mein Leben leichter zu machen ...

Matt Casey
quelle
1
+1 Sie haben einige sehr gute Punkte gemacht. Willkommen auf der Seite! Ich liebe das PPS, ich habe es auf dem dsPIC verwendet und bin fast so weit gekommen, es selbst für einfache Projekte zu bevorzugen. Ich möchte, dass die Leute sich darüber im Klaren sind, dass, wenn sie jemals ihr Produkt vermarkten wollen, jeder Cent zählt und in großen Mengen die unteren PICs billiger sind. Es kann schwierig sein, PIC-Leitungen später zu wechseln. Wenn Sie also anfangen, Produkte herzustellen, versuchen Sie, mit einem 18f oder niedriger zu beginnen, es sei denn, Sie benötigen etwas in der höheren Leitung. Aber 24f und dsPICs eignen sich immer noch hervorragend zum Lernen.
Kellenjb
Danke Kellenjb. Ich habe vollkommen recht mit Ihnen in Bezug auf Produktionsmaßstäbe. Für "echte" Produkte würden Sie sich die Zeit nehmen, um das billigste Bild zu finden, das genau den Anforderungen entspricht, die Sie benötigen. Es gibt einige viele von ihnen!
Matt Casey
Entschuldigung . Dies sollte 1 Kommentar sein. Mir war das Bearbeitungszeitlimit nicht bekannt, das die schlechte Rechtschreibung erklärt! Für den Hobbygebrauch überwiegt meiner Meinung nach die Benutzerfreundlichkeit die Kostenabweichung von ein oder zwei Dollar. Es ist auch schön, mit einem "großen" Chip zu beginnen, um Erfahrungen zu sammeln, ohne sich über die Fähigkeiten Gedanken machen zu müssen. Sobald Sie mehr Vertrauen haben, können Sie Bewegungen in andere Richtungen ausführen. Für mich ist das die 24f Familie. Nichts, was ich versucht habe, hat seine Fähigkeiten wirklich erweitert. Wohlgemerkt, es ist ein bisschen traurig, an den 24f zu denken, der da sitzt und mit den Daumen dreht, während ich ihn bitte, ein paar LEDs zu blinken.
Matt Casey
2

In Bezug auf C-Compiler und verwandte Software gibt Microchip ihre Standard-MPLAB-IDE kostenlos weiter. Damit können Sie immer in Assemblersprache programmieren. Wenn Sie jedoch C möchten, haben sie auch eine kostenlose Version ihres Hi_Tech C-Compilers. Sie bieten es für die 18F-Serie und dann ein anderes für die 10/12 / 16F-Serie an.

Ich habe mit MPLAB und dem CC5X C-Compiler (bknd.com) begonnen und auch HI-Tech C verwendet.

Duane Benson
quelle