PIC Anfänger Projekt

Begonnen von picass, 02.12.2022, 17:45:46 CET

⏪ vorheriges - nächstes ⏩

picass

Unser Forenmitglied Volker hat in einem anderen Fred laut über die Möglichkeit nachgedacht, den von Microchip für das PICkit3 Starter Kit entwickelten Kurs mit seinen dreizehn Programmen/Lektionen zu überarbeiten. Damit rennt er bei mir offene Türen ein, denn solch ähnliche Gedanken trieben mich schon seit einiger Zeit um, weswegen ich ja schon ein Board als Ersatz für das nicht mehr erhältliche ,,PICkit Low Pin Count Demo"-Board – ach, ich liebe diesen Namen – nach empfunden habe.

Kurzum, ich schlage die Eröffnung des PAP vor, des PIC Anfänger Projektes. Die Zielgruppe ist klar, es gälte, sich um die Inhalte wie z.B. Hardware und Software zu bemühen.

Hardware....., das wäre was für mich und das erste Board ist ja bereits fertig und wird von Aisler gerade ab heute gefertigt. Dieses erste Board ist für einen PIC18F14K22 vorgesehen und zwar in der SO-Version. Natürlich könnte man auch einen DIL-Sockel da rein plazieren, aber für den Anfang.... Wenn es ein erstes Board gibt, dann müsste es auch.... is klar. Das Zweite ist auch schon in der Pipeline und könnte z.B. als Erstes ein EEProm enthalten, um auch diese eine der dreizehn Lektionen mit praktischem Leben füllen zu können. Angedacht sind dann noch eine – in Worten: 1 – 7seg-LED-Anzeige, vier mehrfarbige LEDs, - die beiden letzten Ausstattungsmerkmale, um mit Tabellen experimentieren zu können -, dann ggf. noch einen OP rein, evtl. ein Relais und das könnte reichen. Das mal als Anregung.

Software: da seid ihr alle aufgerufen! Ein purer Traum wäre es, alle 13 Lektionen in diesen Sprachen vorliegen zu haben:
- Assembler MPASM / bis MPLAB X 5.35
- Assembler MPASMX des XC8 Compilers / ab MPLAB X 5.40
- ,,C"
- Basic

So viel zum Traum. In der hatten Realität wäre es gut, wenigstens die ersten 5 bis 10 der Lektionen in aktueller ,,Übersetzung" und jeder Sprachform vorliegen zu haben. Selbst könnte ich die Progs unter Punkt 1 durch forsten. Den verbleibenden, kümmerlichen ,,Rest" dann...... Freiwillige vor und vergesst nicht: es geht auf Weihnachten zu und da soll man gute Taten begehen!

Von einem solchen Projekt wäre ich hochgradig überzeugt. Es ist wohl keine gewagte These, dass die ersten Schritte beim Zugang auf MicroController die Entscheidenden sein werden: gelingt der Einstieg, dann kann es weiter gehen. Aber an den Hürden des Einstiegs sind schon ganze Heere von  Hoffnungsvollen und mit besten Absichten Gestartete gescheitert. Hilft man da Anfängern nicht mit scheinbar klugen Sprüchen, sondern mit auf Anhieb funktionierenden Programmen auf bezahlbarer Hardware in den Sattel, dann haben beide Seiten gewonnen. Aber bitte beachten: die üblichen Prog-Schnipsel und Hinweise in die weite Inet-Welt sind nicht nur nicht hilfreich, sondern häufig einfach nur kontraproduktiv. Will sagen: die Programme müssen wirklich vollständig sein und deren Ausführung muss ohne Verweise auskommen, dass noch dieses und jenes zu laden und eigentlich  ,,dort" zu finden sein müsste. Eben schlicht so, wie Microchip es vorgestrampelt hat: die Progs sind vollständig, funktionieren und erklären das Wesentliche, rsp. Neue.

In diesem Fred könnten wir besprechen, was zu tun wäre, die einzelnen Schritte  planen, über die Ausstattung von Boards debattieren, evtl. auch über so was Unangenehmes wie Geld reden, meckern und loben, und ,,mit mir nicht !"-Äußerungen anbringen.
Oder versuchen, den Traum zu leben.
Grüße, picass

pic18

mal ein frage, was für welche Programme / Lektionen sind das? Ich bin hier nicht auf dem neusten Stand :'(

picass

#2
In dem Nachbar-Fred "PICkit Low Pin Count Demo Board : Nachbau" - auch so zu finden unter:
https://www.pic-microcontroller.de/index.php?msg=1077htt
sind Links gesetzt, einer davon führt zum Download dieses Programmier-Kurses mit seinen 13 Lektionen.
Kurz gesagt: wer vom MicroController-Programmieren noch keine Ahnung hatte, sich aber das Microchip PICkit3- Starterkit zulegte, die passende MPLAB-Umgebung installierte, der hat nach dem Abarbeiten dieser 13 Lektionen ein sehr stabiles Grundgerüst an Programmier-Techniken je nach Wahl in Assembler und/oder "C" und kann wunderbar eigene Programme entwerfen! :)

Unser Job könnte sein, für das nicht mehr verfügbare Starterkit einen mindestens gleichwertigen Ersatz zu besorgen - ist in einigen Tagen verfügbar - und die Programme in diesen 13 Lektionen auf aktuellen Stand/Standart zu setzen. Und gänzlich traumhaft wäre es, das Software-Angebot derart auszubauen, dass außer "C" und Assembler z.B. auch noch Basic angeboten würde.

Wirf bitte mal einen Blick in die down-geladenen Microchip-Programme. Zumindest die ersten dürften einen minimalen Aufwand an "Übersetzung" bedeuten, startet dieser Kurs doch mit dem berühmten "Hallo World", was für einen gestandenen Programmierer eher keine Herausforderung sein dürfte. Und auch danach steigert sich der Aufwand sehr betuhlich. :D
Grüße, picass   

vloki

Die Lektionen 1..10 für den 16F... in pic-as Assembler wären schon mal da.

Wie im anderen Thread erwähnt aber ohne Überarbeitete Doku!
Die passende Doku ist für Anfänger allerdings unabdingbar ;-)

Bevor jemand damit anfängt, die Doku zu überarbeiten, sollte ein Konzept dazu da sein.
(z.B. vorhandene Doku mit Fußnoten versehen, die in einem eigenen Dokument ...
oder komplette Neuerstellung...)

Auch für die Aufbereitung des Quellcodes der Beispiele gibt es ja verschiedene Möglichkeiten.
Für jedes Beispiel eigenes Projekt, oder ein Projekt für Alle mit Auswahl über Konfiguration.

Mir gefällt zum Beispiel ein Projekt für Alle Beispiele eines Typs und Compilers.
So etwa wie im Anhang...
MPLABX  XC8  KiCAD

picass

Au man.... da war ja jemand fleißig! Lob, usw... >:D

Bei der Überarbeitung wäre ich eher für eine Neuerstellung. Fußnoten, die auf andere Dokumente verweisen, dienen nicht wirklich der Übersichtlichkeit, jedenfalls kaum für Leute, die eh' um jedwede Orientierung ringen.

Aufbereitung des Quellcodes: wie vor aus Gründen der Übersichtlichkeit wäre ich auch für die Zusammenfassung der Beispiele für je einen µC-Typ und Compiler über ein Auswahlmenü.

In der angebotenen Download-Zip-Datei befinden sich im Unterordner "nbproject" Configurations-Dateien im XMS-Format. Sowohl - wenn ich die im einfachen Editor als auch im Libre-Office mit der Textverarbeitung "Writer" öffne, ergibt sich eine elend lange Datei. Ähm......, ist die zu betrachten oder nur im Prog brauchbar zu nutzen?
Grüße, picass

vloki

Zitat von: picass am 03.12.2022, 16:56:15 CETIn der angebotenen Download-Zip-Datei befinden sich im Unterordner "nbproject" Configurations-Dateien im XMS-Format. Sowohl - wenn ich die im einfachen Editor als auch im Libre-Office mit der Textverarbeitung "Writer" öffne, ergibt sich eine elend lange Datei. Ähm......, ist die zu betrachten oder nur im Prog brauchbar zu nutzen?

 ;D Wenn diese Datei jemand öffnet und dann auch noch versteht,
anstelle einfach das Projekt in MPLABX zu öffnen,
dann braucht er wahrlich keine Anfängerhilfe mehr ;D
MPLABX  XC8  KiCAD

vloki

Zitat von: picass am 03.12.2022, 16:56:15 CETBei der Überarbeitung wäre ich eher für eine Neuerstellung. Fußnoten, die auf andere Dokumente verweisen, dienen nicht wirklich der Übersichtlichkeit,
Sehe ich auch so - ist aber recht aufwändig :-(
MPLABX  XC8  KiCAD

picass

Zitat von: vloki am 03.12.2022, 17:29:34 CET- ist aber recht aufwändig :-(
Das wirft eher beiläufig die Frage auf, wie denn für den Fall der Notwendigkeit und auch derjenigen, in welcher vier Mitglieder fünf Meinungen äußern, entschieden werden sollte.
Da gäbe es ja das Prinzip der Demokratie (Mehrheitsentscheidung). Darüber könnte ich Schlechtes sagen, z.B., dass Entscheidungen in einer Autokratie einfacher zu fällen sind - zumindest für einen! Bei der Gelegenheit: sollten wie einen "Projekt-Boss" wählen? ::) Der dann....!
Im Zweifel oder wenn keine Einstimmigkeit zu erziehlen wäre, würde ich nahelegen wollen, dass derjenige, welcher die Arbeit tatsächlich auszuführen bereit ist, sich den Weg aussuchen darf. Ach ja: brauchen wir noch eine Geschäftsordnung? >:D
Grüße, picass

vloki

Zitat von: picass am 03.12.2022, 18:41:00 CETIm Zweifel oder wenn keine Einstimmigkeit zu erziehlen wäre, würde ich nahelegen wollen, dass derjenige, welcher die Arbeit tatsächlich auszuführen bereit ist, sich den Weg aussuchen darf.
Da habe ich keine Zweifel, dass derjenige das sonst eh nicht macht 8)
MPLABX  XC8  KiCAD

pic18

Ich glaube ich kann Euch hier nicht helfen, da ich noch mit der alten MBLAB-IDE und den Compiler arbeite. :(

picass

Habe übers Wochenende die beiden Board-Entwürfe überarbeitet. Der extravagante SMD-Schalter und der ähnlich ausgefallene winzige Trimmer wurden durch leicht beschaffbare, größere und preiswerte Versionen ersetzt. Dieser Austausch klingt nach ,,nichts", um aber Platz zu schaffen, musste u.a. der ganze Mittelbereich neu geroutet werden. Noch so'ne ,,Kleinigkeit": der Abblock-Kondensator für den µC saß etwas im Abseits. Der hat nunmehr den  optimalst möglichen Platz direkt zwischen den beiden Versorgungspinnen.
Bei der DIL-Version gabs noch ein Schmanckerl: gerade diese DIL-Version ist bei mir in häufigem Programmier-Einsatz, will sagen, da wurde teils dauernd der frisch programmierte µC rausgerupft, später wieder rein gepropft, usw.. Das Rausziehen mittels dieses Spreizwerkzeuges mit den beiden unteren Haken gerät schnell zum Verbiegen mehrerer Pinne, weswegen ich die Methode bevorzuge, mittels eines kleinen Uhrmacher-Schraubendrehers beidseits im Wechsel unter das IC und in die Fassung zu popeln und den µC so heraus zu hebeln. Wofür natürlich Platz zum Hebeln sein muss. Und da war zur Platinenmitte hin evtl. der Jumperblock im Wege. Deshalb wurde der dort auseinander gezogen, sodass gettz voll gehebelt werden kann.
Sind alles nur ,,Kleinigkeiten", aber ein paar Stunden braucht es doch.. fällt unter Produktpflege. ;) 
Grüße, picass

Peter

Oder einen Nullkraft Sockel einbauen.
Dann hat man keine Probleme mehr mit der IC Fassung.
Muss natürlich Platz geschafft werden.

picass

Ja, für User, welche sowas wie eine Serienproduktion planen, wäre das sicher eine Lösung... is klar, die Dinger kosten. Platz schaffen wäre nicht das Prob, im einfachsten Falle würde eine neue, angepasste Platine dann breiter. Da warte ich aber erst mal, ob dafür Interesse besteht. In einem früheren, Jahrzehnte zurückliegenden Kaufrausch hatte ich mal mehrere solcher N-Sockel gekauft, die liegen jetzt hoch und trocken irgendwo versteckt in den Regalen... :-[

@pic18
Mal ganz unabhängig von dem Projekt in diesem Fred: willst du nicht mal auf den MPASM-X umsatteln? Der Umzug ist meiner Ansicht nach eher einfach möglich. Allerdings kann ich nicht beurteilen, ob das auch für den C-Compiler so ist.
Grüße, picass

picass

Zitat von: Peter am 05.12.2022, 10:12:17 CETOder einen Nullkraft Sockel einbauen. Dann hat man keine Probleme mehr......
Stimmt! Also fast!
Peter, du Lurchie, jetzt hast du verschuldet, dass ich angefixt von deiner Idee meine Regale durchforsten musste und - is klar - im allerallerletzten Kästchen gut gesichert, aber ebenso gut verborgen fanden sich die Zif-Sockel. Wer Ordnung hält, ist nur zu faul...Diese Zifs haben allerdings 28 Pinne, was für das Anfänger-Board nicht benötigt wird. Mal sehen, ob sich da noch 'ne Verwendung in einem anderen finden ließe.

Das wirft übrigens nun eine andere, nächste Frage auf: welche Prozessoren sollen in Angriff genommen werden? Für die beiden bisherigen Boards mit 20 Pinn-µCs sind sicher der PIC18F14K22 eine Wahl. Aber da gehts schon mit der DIL-Version los. Die ist nahezu vom Markt verschwunden.

Schaut man bei den üblichen Verdächtigen, also den Großhändlern wie Farnell und Consorten in die Listen, bekommt man runde Augen. Kaum was lieferbar!
Vom "Nachfolge-Typ" für den obigen PIC käme z.B. der PIC18F25K22 in Frage, der hat dann alle 3 Ports voll belegt, was dann zu 28 Pinnen führt. Da gibts nur noch Restbestände in SO-Ausführung, nahezu alle Großen haben da schon nichts mehr. Ganz düster sieht es z.B. bei dem von Microchip als Nachfolge-Typ für den o.g. ..14K22 aus, den PIC18F24Q10. Der ist nirgends zu bekommen, Lieferzeiten frühestens Mai 23, gerne auch Weihnachten 23. Oder so! Da sollten wir uns auch mal Gedanken erlauben, wie und was....

Krass ist übrigens nebenbei gesagt, mal wieder die Liefersituation bei Grafikkarten für PCs. Währen in der Zeitschrift "c't" bereits mehrfach stand, dass die überzogenen Preise des letzten Jahres sich so langsam dem Normal-Niveau näherten, zeigt ein Blick z.B. in die Regale von Alternate, dass es an AMD-Grakas genau zwei Stück überhaupt auf deren HP zu betrachten gibt, zwei Winzig-Dinger für Büro-PCs. Nix, aber auch gar nichts an Mittelklasse- oder High-End-Grakas. Ach ja, die beiden Büro-Dinger sind auch nicht lieferbar, die stehen nur als Bild zur Bewunderung bereit. Was ein Schotter! Lotto war gestern, aktuell ersetzt durch Angebote für Grakas!
Grüße, picass


PICkel

#14
Zum Thema Software:

Ich wäre bereit, an einer Programmiereinführung in mikroBASIC Pro for PIC mitzuarbeiten.
Vorher wäre zu klären:
1. Gibt es überhaupt Interesse daran?
    (Ich vermute, nur Peter nutzt mBPro momentan. Die Free-Version ist bis 2k Maschinencode lizenzfrei.)
   
2. Welche PICs sollen verwendet werden?
    ( Es geht nicht nur um Speicher und Pins, auch interne Register sollten identische Namen haben.)

Ich habe ein voll ausgestattetes Testboard und kann PICs von 8 bis 40 Pins testen, bin also nicht auf spezielle Testplatinen angewiesen.
(Ist unter "Tipps für PIC-Testplatinen" beschrieben.)
Testplatinen mit fest verbauten SMD-PICs halte ich für ungünstig: Nach kurzer Zeit genügt die auf ziemlich spezielle Testfälle ausgelegte Platine nicht mehr den Anforderungen und landet irgendwo in der Schublade.
Der PIC ist dann "vertan".
Zum Testen hätte ich sofort folgende PICs verfügbar:
           
PIC16F882    (28 Pins)   
PIC16F1827    (18)   
PIC16F1503    (14)   
PIC16F1713    (28)   

PIC18F24K22    (28)

Grüße
PICkel

Schnellantwort

Name:
Verifizierung:
Bitte lassen Sie dieses Feld leer:
Geben Sie die Buchstaben aus dem Bild ein
Buchstaben anhören / Neues Bild laden

Geben Sie die Buchstaben aus dem Bild ein:

Tastenkürzel: Alt+S Beitrag schreiben oder Alt+P für Vorschau