Forum: Mikrocontroller und Digitale Elektronik Liste von ICs usw. fürs Breadboard


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Jürgen (bergensdorf)


Lesenswert?

Hallo,

ich würde gerne mit einigen ICs auf dem Breadboard rumspielen. Hat da 
vielleicht jemand hier schon mal eine Liste für sich gemacht, was man so 
bestellen kann? Also sowas, wie ein Schieberegister, analoge und 
digitale Temperatursensoren, Infrarot-Sender und Empfänger und was es 
nicht so alles gibt... . Die vorgefertigten Boxen sind doch meist völlig 
überteuert.

Also es muss ja keine Liste sein, aber wenn ihr ein paar Ideen habt, was 
ich so bestellen kann, wäre mir schon viel geholfen, da man bei so 
vielen Teilen, die es gibt, nicht an alles denken kann und ich auch 
nicht alles kenne.

Und ich bräuchte auch ein paar billige ATMEGA Mikrocontroller (DIL), die 
bestimmt auch mal geschrottet werden meinerseits, am besten 
unterschiedliche. Da bin ich auch für jeden Vorschlag dankbar.

Gibt es eigentlich sowas wie im Link
https://www.reichelt.de/avr-schwenkhebler-nullkraftsockel-diamex-avr-sh-p305272.html?CCOUNTRY=445&LANGUAGE=de&trstct=pos_0&nbc=1&&r=1
als Platine, mit verschiedenen Größen, verschiedener Mikrocontroller 
(Beispielsweise DIL16, 18 oder 40) und den Anschlüssen rausgeführt und 
am besten eine Möglichkeit per USB die Versorgungsspannung drauf zu 
geben? Ist etwas schwammig formuliert, aber ich hoffe ihr versteht was 
ich meine. Ich glaube, ich habe so etwas auch schon mal irgendwo 
gesehen.

Bin, wie gesagt, für jede Hilfe dankbar.

: Bearbeitet durch User
von Spess53 .. (hardygroeger)


Lesenswert?

Hi

Warum es gibt? Es gibt doch PSPICE von TI, Warum willst du dich mit 
halbseidene Breadboards herumschlagen?

MfG Spess

von Jürgen (bergensdorf)


Lesenswert?

Spess53 .. schrieb:
> Hi
>
> Warum es gibt? Es gibt doch PSPICE von TI, Warum willst du dich mit
> halbseidene Breadboards herumschlagen?
>
> MfG Spess

Hey,

hab noch nicht davon gehört, aber ich will es halt einfach privat für 
mich machen, mehr als Hobby. Also es geht darum, mit verschiedenen 
Bauteilen und Mikrocontrollern zu experimientieren. Da geht es mir halt 
vor allem darum die Programmierung der Software für die Mikrocontroller 
zu schreiben.

Habe vor einigen Tagen zum Beispiel mit einem Arduino, 8 LEDS und einem 
Schieberegister einen binären Zähler gebastelt, der von 0 bis 255 zählt 
(binär halt). Es macht einfach super viel Spaß, sowas zu programmieren 
und es dann auch in echt zu sehen.

Der nächste Schritt wäre dann zum Beispiel mit einem Multiplexer eine 
(oder mehrere) 7 Segment- Anzeige(n) anzusteuern. Da ist es doch 
langweilig so etwas am PC zu simulieren. Die Bauteile sind doch meist 
auch billig, oder nicht?

: Bearbeitet durch User
von Spess53 .. (hardygroeger)


Lesenswert?

HI

Hättest doch gleich sagen können das du Arduino verseucht bist.
Versuchs mal im Aduino-Forum.

MfG Spess

von Jürgen (bergensdorf)


Lesenswert?

Spess53 .. schrieb:
> HI
>
> Hättest doch gleich sagen können das du Arduino verseucht bist.
> Versuchs mal im Aduino-Forum.
>
> MfG Spess
Hi,

nein, ich will auf ATMEGA programmieren mit MC Studio. Es war nur ein 
Beispiel, was mir Spaß macht. Ich habe doch sogar einen Post hier vor 
einigen Tagen, in dem mir erklärt wurde, einen XMEGA zu initiieren mit 
MC Studio. Ich möchte sehr gerne das gleiche, mit dem Schieberegister 
nochmal auf einer ATMEGA-Einheit programmieren, es geht doch nur ums 
lernen. Kommt meine Anfrage so falsch rüber?

: Bearbeitet durch User
von Spess53 .. (hardygroeger)


Lesenswert?

Hi

> es geht doch nur ums lernen.

Na Ja, Dann Lerne erst Mal programmieren. Früher hat man das studiert. 
Jetzt glaubt der Dödel er könne programmieren.

MfG Spess

von Jürgen (bergensdorf)


Lesenswert?

Spess53 .. schrieb:
> Hi
>
>> es geht doch nur ums lernen.
>
> Na Ja, Dann Lerne erst Mal programmieren. Früher hat man das studiert.
> Jetzt glaubt der Dödel er könne programmieren.
>
> MfG Spess

Dann mache ich das, mein Lieber. Ich werde deine Tipps sowas von 
beherzigen und sie an die Wand hängen. Du bist so ein guter Mensch und 
ein Vorbild für all unsere Kinder. Mit meinen breiten Schultern bin ich 
ganz schön eingeschüchtert von deinen schmalen. Wir können uns ja gerne 
mal in echt treffen mein Lieber. Wie wäre es mit Übermorgen mit einem 
Ort Deiner Wahl, damit du mir endlich zeigst, wie dumm ich bin. ;)

von Jürgen (bergensdorf)


Lesenswert?

Ist das Forum echt so voll mit Trolls?

von Christian S. (roehrenvorheizer)


Lesenswert?

Jürgen schrieb:
> Also es muss ja keine Liste sein, aber wenn ihr ein paar Ideen habt, was
> ich so bestellen kann

Hallo,

als ICs könnte man LM324, LM393, MCP6002, NE555

beliebige aus der CMOS 40er-Reihe siehe

https://informatik.rostfrank.de/rt/lex04/cmos_liste.html

da gab es entweder die vielen Zähler, die Flipflops, die Gatter, die 
Schieberegister oder die 7-Segment-Anzeigen-Treiber in Varianten, die 
D-Flipflops und das 4046-PLL-IC und die vielen addierer

Man kann natürlich auch solche aus der HC Reihe oder HCT-Reihe nehmen, 
wenn man sie denn noch bekommt und zu moderaten Preisen versteht sich, 
denn das sind alles Dinosaurier als DIL.

Den At90S2313 wird es nicht mehr geben, dafür eher den AT-Tiny2313 als 
Einstieg, später kann man dann auf die Mega-Typen mit wesentlich 
größerem Innenleben umsteigen, wenn man schon ohne Schwimmflügel zurecht 
kommt.

als IR-Empfänger eignen sich die diversen TSOP-Typen, die sich in der 
Lichtfarbe und der Trägerfrequenz unterscheiden. Der Sender sollte die 
gleiche Wellenlänge möglichst haben.

Wichtig sind noch die Spannungsregler z.B. 7805

und Standard-Transistoren wie BC547 und BC557 und ähnliche.

Zum Spielen und Üben eignet sich auch noch der Temperatursensor DS18S20.
analog KTY81 in Varianten.

Widerstände in mindestens 10er-Mengen, besser 100er von 22 Ohm bis 470 
kOhm, diverse Kondensatoren von 1 nf bis 220nF und Elkos von 1µF bis 470 
µF, z.B. 16 V.
diverse LEDs nach Belieben, mindesten 10 von jeder Farbe.

Das dürfte bis Ostern an Beschäftigung reichen und wird 100€ deutlich 
überschreiten.

mfg

von Peter (pittyj)


Lesenswert?

Dann schau doch mal selber bei den Herstellern nach.
Den ToF Sensor von STM bieten die auch selber auf einem Evalboard an.
https://www.st.com/en/evaluation-tools/vl53l5cx-satel.html
23 Euro für 2 Platinen. Damit hat man einen ganzen Monat Spass.

Viele andere Hersteller machen es ähnlich.
Oft gibt es auch Platinen von Sparkfun o.ä die man einfach benutzen 
kann.
https://www.sparkfun.com/

Aber dass jemand eine Liste von allem erstellt hat, daran glaube ich 
nicht.

Und überteuert finde ich ein Accelerometer-Board LIS3DH für 6.95 $ 
nicht.
Da ist eine Kinokarte oder ein McD Besuch teurer.

von Christian M. (likeme)


Lesenswert?

Spess53 .. schrieb:
> Hättest doch gleich sagen können das du Arduino verseucht bist.
> Versuchs mal im Aduino-Forum.

Was bitte ist Arduino verseucht?

von Michael B. (laberkopp)


Lesenswert?

Jürgen schrieb:
> Also es muss ja keine Liste sein

https://dse-faq.elektronik-kompendium.de/dse-faq.htm#F.2

> Und ich bräuchte auch ein paar billige ATMEGA Mikrocontrolller (DIL)

Da man die nur über einen iSP Dongle programmieren kann, haben sich 
inzwischen eher uC mit USB durchgesetzt, Arduino Nano passt ins 
Breadboard, es gäbe auch BluePill aber du willst ja ATMega.

Jürgen schrieb:
> Die vorgefertigten Boxen sind doch meist völlig überteuert.

Na ja, eigentlich wäre der Weg andersrum: eine Beschreibung von vielen 
Experimenten, 100 oder gar 1000, mit guten Erklärungen, und dann die 
Liste was man dazu braucht, das ist der Weg der fertigen 
Experimentierkästen. Da gibt es einige mit Experimentiersteckbrettern.

von Monk (roehrmond)


Lesenswert?

Schieberegister: 74HC165 und 74HC595
A/D Wandler: MCP3208
USB-UART: MCP2221A

AVR Mikrocontroller:

   8 Pins: ATtiny 25, 45, 85
  14 Pins: ATtiny 24, 44, 84, 441, 841
  20 Pins: ATtiny 261, 461, 861
  28 Pins: ATmega 48, 88, 168, 328
  40 Pins: ATmega 164, 324, 644, 1284

Auf Vorrat habe ich davon nur den ATtiny85 und ein paar Arduino Nano 
Module.

Meine regelmäßigen Vorräte an Widerständen habe ich inzwischen auf 
relativ wenige reduziert:

47, 100, 200, 470 Ω
1, 2.2, 4.7, 10, 22, 47, 100, 220, 470 kΩ
1 MΩ

Bisher konnte ich mir alle nötigen Werte durch Kombination von 2 
Widerständen herstellen. Da ich aber fast nur noch digital bastle, ist 
das nur selten nötig.

: Bearbeitet durch User
von Arduino F. (Firma: Gast) (arduinof)


Lesenswert?

Christian M. schrieb:
> Was bitte ist Arduino verseucht?

Ach, die meisten Arduino Basher sind einfach nur zu blöd um mit C++ zu 
arbeiten.
Sie werden da gerade von den Arduino Jüngern überholt.
Das macht Frust, welcher dann über Anfänger ausgeschüttet wird.

Ein bisschen so, als wenn alternde Männer auf der Straße Kinder 
verprügeln, weil die eigene Potenz langsam den Bach runter geht.

von Wilhelm M. (wimalopaan)


Lesenswert?

Steve van de Grens schrieb:
> 8 Pins: ATtiny 25, 45, 85
>   14 Pins: ATtiny 24, 44, 84, 441, 841
>   20 Pins: ATtiny 261, 461, 861
>   28 Pins: ATmega 48, 88, 168, 328
>   40 Pins: ATmega 164, 324, 644,

Warum denn diesen alten Mist.
Nimm von den neueren aus der DA, DB, DD oder EA Serie. Da ist alles 
einfacher.

von Motopick (motopick)


Lesenswert?

> Was bitte ist Arduino verseucht?

Das sind die Dummbeutel die:

- LEDs ohne Vorwiderstand an ICs anschliessen
- den Basisvorwiderstand einer Schaltstufe nicht ausrechnen koennen
- unbenutzte IC Eingaenge einfach offen lassen
- Abblockkondensatoren fuer ueberfluessig halten
- OPVs mit zu wenig Spannung versorgen
- an den OPV Ausgang einen Elko anschliessen, damit sie das Schwingen 
nicht mehr sehen
- Taktsignale von einigen MHz ueber Meter mit ungeschirmten Kabeln 
fuehren
- ihre Chinaboelleroszis nicht richtig bedienen koennen
- 9 Volt Batterien fuer die einzig moegliche Energiequelle halten
- das Arduino C++ Gestammel fuer gute Programmierung halten
- statt Timern ihr Gestammel mit delay() anreichern
- "normale" Controller nicht benutzen koennen, weil der "Bootlader" 
fehlt :)

  ...

und dann auch noch denken, sie wuerden damit "irgendjemanden" 
ueberholen.

Gut™ das es fuer PICs, DSPs und FPGAs diesen Kinderkram nicht gibt.

: Bearbeitet durch User
von Dieter D. (Firma: Hobbytheoretiker) (dieter_1234)


Lesenswert?

Motopick schrieb:
> 9 Volt Batterien fuer die einzig moegliche Energiequelle halten

Und schaffen genuegend davon so zusammenzustecken bis es reicht fuer 
eine oneway Fahrkarte in die ewigen Jagdgruende.

: Bearbeitet durch User
von Frank O. (frank_o)


Lesenswert?

Jürgen schrieb:
> nein, ich will auf ATMEGA programmieren mit MC Studio.

Kannst auch Arduino Board unter diesen Bedingungen als Hardware nutzen.
Da ich (ist schon länger her) ganz gerne für kleine Sachen den ATTiny10 
benutze, programmiere ich erst auf einen Arduino Nano und wenn alles 
läuft, löte ich den programmierten ATTiny10 in die Schaltung.
Hab mir eine Platine mit Zif-Sockel gebaut, zum programmieren der Tinys.
Viele nehmen ATTiny85, aber da sind einige Sachen anders. Bei den 
ATTiny10 musst du nicht mehr viel an der Programmierung ändern.

Benutze ruhig die Hardware weiter! Ist letztlich auch ein AVR, mit 
stabiler Hardware drum rum und lässt sich gut in ein Breadboard stecken.
Musst halt nur einen Programmer anschaffen, dass du über die 
ISP-Schnittstelle programmieren kannst.
Ein ICE ist toll, musst du aber nicht unbedingt nehmen. eHajo hat auch 
einen Programmer, der zumindest unter dem Atmel-Studio lief.
Wie gesagt, ist schon ein bisschen her, dass ich was gemacht habe.

von Frank O. (frank_o)


Lesenswert?

Arduino F. schrieb:
> Sie werden da gerade von den Arduino Jüngern überholt.
> Das macht Frust, welcher dann über Anfänger ausgeschüttet wird.

Leider sind hier immer noch einige der Meinung, wenn du nicht mit 
Assembler anfängst, wirst du niemals ein echter Programmierer und wirst 
auch niemals Mikrocontroller verstehen.
Ohne Arduino hätte ich den Kram gleich in die Ecke geworfen.
Aber man kann durchaus genau andersrum anfangen. Denn wenn die Led 
blinkt, dann kommt das Interesse meistens von ganz allein mehr wissen zu 
wollen oder ein Projekt zwingt dich dazu.
Natürlich kannst du, wenn du "von der Pieke auf" anfängst, das alles 
hinterher viel besser verstehen.
Aber da ist dann noch eine ganz andere Baustelle. Der Mikrocontroller 
ist ja längst nicht alles.
Ich hatte mit Elektronik schon beruflich zu tun und konnte Schaltpläne 
lesen, aber für mich war 1 Ampere damals fast kein Strom. Hier ist das 
schon richtig viel.
Man öffnet durch den Einstieg in die Mikrocontroller eine Tür, hinter 
der ein ganzes Universum ist. Zumindest für Menschen die nicht schon in 
der Kindheit mit Elektronik angefangen haben.
Damals dachte ich, dass ich schon ziemlich viel weiß, heute weiß ich, 
dass ich eigentlich viel zu wenig weiß. :-)

von Dieter D. (Firma: Hobbytheoretiker) (dieter_1234)


Lesenswert?

Frank O. schrieb:
> Leider sind hier immer noch einige der Meinung, wenn du nicht mit
> Assembler anfängst, wirst du niemals ein echter Programmierer und wirst
> auch niemals Mikrocontroller verstehen.

Stimmt, aber Ausnahmen bestaetigen die Regel. Die Ausnahme waere 
fruehzeitig noch mit Assembler hineinzuschnuppern.

von Monk (roehrmond)


Lesenswert?

Wilhelm M. schrieb:
> Warum denn diesen alten Mist.

Weile diese alle im DIL verfügbar sind und eine ISP Schnittstelle haben 
und so programmiert werden, wie in 95% aller Tutorials steht. Gerade für 
Anfänger ist es oft besser, gut abgehangene Bauteile zu verwenden.

Zudem empfehle ich nur Bauteile, mit denen ich vertraut bin. Die DA, DB, 
DD oder EA Serie habe ich noch nicht verwendet.

> Nimm von den neueren aus der DA, DB, DD oder EA Serie.
> Da ist alles einfacher.

Solange Wilhelm Frage dazu beantwortet, kann man das run.

: Bearbeitet durch User
von Wilhelm M. (wimalopaan)


Lesenswert?

Steve van de Grens schrieb:
> Wilhelm M. schrieb:
>> Warum denn diesen alten Mist.
>
> Weile diese alle im DIL verfügbar sind

Nimm den AVR128DA28, den gibt es auch als DIL.
Oder löte einen TQFP-32 auf eine Adapterplatine, das schafft jeder 
Löt-Anfänger.

>  und eine ISP Schnittstelle haben

UPDI braucht nur einen PIN, viel einfacher.

> und so programmiert werden, wie in 95% aller Tutorials steht.

Gibt es auch für die neuen, die so neu ja gar nicht sind, weil aus den 
xmega hervor gegangen.

> Gerade für
> Anfänger ist es oft besser, gut abgehangene Bauteile zu verwenden.

An dieser Stelle: Quatsch.

> Zudem empfehle ich nur Bauteile, mit denen ich vertraut bin. Die DA, DB,
> DD oder EA Serie habe ich noch nicht verwendet.

Dann solltest auch Du mal umsteigen.

>> Nimm von den neueren aus der DA, DB, DD oder EA Serie.
>> Da ist alles einfacher.
>
> Solange Wilhelm Frage dazu beantwortet, kann man das run.

Mache ich täglich.

von Christian S. (roehrenvorheizer)


Lesenswert?

Motopick schrieb:
> Das sind die Dummbeutel die:

An dieser Aufstellung ist leider viel Wahres dran. Es ist nunmal so, daß 
diese Anfänger, die mit Arduino ihren Start machen, eigentlich sehr weit 
vorn einsteigen in die Welt der Elektronik, aber zuvor den langen und 
beschwerlichen Weg, auf dem man Erfahrung mit reinen 
Transistorschaltungen, analog ICs, Operationsverstärkern, TTL-ICs, dann 
CMOS ICs und so manchem umfangreichem Bauvorschlag, einfach niemals 
gegangen sind, weil sie nicht ganz hinten bei den einfachen Sachen und 
den Grundlagen eingestiegen sind.

Zudem verführt die unermessliche Fülle des heutigen Internets dazu, den 
Überblick zu verlieren und halt "irgendwo" einzuhaken, um den Anfang zu 
bekommen.

Ihr glaubt gar nicht, wieviele Komilitonen "damals" von praktischen 
Elektronikschaltungen überhaupt keine Ahnung hatten. "Damals" waren an 
17-Zoll-Monitoren Internetseiten zu sehen, deren Aufbau sich in Minuten 
beobachten lies, da das ganze Gebäude quer durch die Stadt von nur einer 
einzigen vermutlich ISDN-Leitung Internetzugang hatte. Es gab aber schon 
bleifreies Benzin aber noch 20W50 Öl im größeren Supermarkt und die 
Fernseherinnen waren noch nicht flach.

Und wieviele Elektronikteile und ICs sind meinen stümperhaften 
Anfängerversuchen geopfert worden? Die beiden UAA1003 waren nicht 
billig.

mfg

: Bearbeitet durch User
von Jürgen (bergensdorf)


Lesenswert?

Frank O. schrieb:
> Arduino F. schrieb:
>> Sie werden da gerade von den Arduino Jüngern überholt.
>> Das macht Frust, welcher dann über Anfänger ausgeschüttet wird.
>
> Leider sind hier immer noch einige der Meinung, wenn du nicht mit
> Assembler anfängst, wirst du niemals ein echter Programmierer und wirst
> auch niemals Mikrocontroller verstehen.
> Ohne Arduino hätte ich den Kram gleich in die Ecke geworfen.
> Aber man kann durchaus genau andersrum anfangen. Denn wenn die Led
> blinkt, dann kommt das Interesse meistens von ganz allein mehr wissen zu
> wollen oder ein Projekt zwingt dich dazu.
> Natürlich kannst du, wenn du "von der Pieke auf" anfängst, das alles
> hinterher viel besser verstehen.
> Aber da ist dann noch eine ganz andere Baustelle. Der Mikrocontroller
> ist ja längst nicht alles.
> Ich hatte mit Elektronik schon beruflich zu tun und konnte Schaltpläne
> lesen, aber für mich war 1 Ampere damals fast kein Strom. Hier ist das
> schon richtig viel.
> Man öffnet durch den Einstieg in die Mikrocontroller eine Tür, hinter
> der ein ganzes Universum ist. Zumindest für Menschen die nicht schon in
> der Kindheit mit Elektronik angefangen haben.
> Damals dachte ich, dass ich schon ziemlich viel weiß, heute weiß ich,
> dass ich eigentlich viel zu wenig weiß. :-)

Tatsächlich habe ich die Microcontrollerprogrammierung in Assembler 
begonnen. Ich bin gelernter Elektroniker für Geräte und Systeme und wir 
haben erst Assembler programmiert, bevor wir überhaupt mit C in 
Konsolenfenstern angefangen haben (in der Schule). Was ich erstmal gar 
nicht so richtig verstanden habe, also ich habe Assembler besser als C 
verstanden.

Leider war unser PICboard etwas beschränkt und ich habe so ziemlich 
alles mit einem Byte an LEDs auf diesem Board ausgeschöpft und mich seit 
Jahren nicht mehr damit beschäftigt und ich weiss nix mehr darüber, 
außer das hier noch irgendwo eine Liste mit allen Befehlen des 
spezifischen PICs rumliegt, und das man irgendwie die Werte immer 
verschieben muss und man plus und minus rechnen kann.

Der Chef unserer Abteilung hat mir ein C Buch geschenkt, was mir 
mittlerweile etwas langweilig vorkommt, weil ich C zum grossen Teil 
schon kenne und ich beschäftige mich gerade mit C++, weil es mir Wilhelm 
M. empfohlen hat.

Allerdings hat mir mein damaliger Vorgesetzter tatsächlich erklärt, dass 
es ihm schwer fällt in C zu programmieren, weil er zu sehr in Assembler 
steckt und ich war damals noch nicht so weit.

Auf jedenfall schon mal danke für die ganzen Antworten. Muss erstmal 
alles lesen.

: Bearbeitet durch User
von Wilhelm M. (wimalopaan)


Lesenswert?

Jürgen schrieb:
> Der Chef unserer Abteilung hat mir ein C Buch geschenkt, was mir
> mittlerweile etwas langweilig vorkommt, weil ich C zum grossen Teil
> schon kenne und ich beschäftige mich gerade mit C++, weil es mir Wilhelm
> M. empfohlen hat.

Das stimmt so nicht. Du selbst hast gesagt, dass Du C++ kannst:

Im Beitrag Beitrag "Re: LED toggeln mit ATxmega256A3BU" sagtest 
Du:

"Und zu der Aussage möchte ich noch sagen, dass ich erst richtig gelernt
habe C bzw. C++ zu nutzen, durch das Programmieren mit einem Arduino."

Dort behauptest Du also, C++ zu können. Und deswegen habe ich dort in 
C++ geantwortet.

: Bearbeitet durch User
von Motopick (motopick)


Lesenswert?

> An dieser Aufstellung ist leider viel Wahres dran.

Die Aufstellung liesse sich leicht weiter ergaenzen.

> Es ist nunmal so, daß
> diese Anfänger, die mit Arduino ihren Start machen, eigentlich sehr weit
> vorn einsteigen

Du verwechselst vorne und hinten. Wo "Arduino" ist, ist niemals vorn. :)
Und "einsteigen" tun sie uebrigens auch nie wirklich, und so finden
sie auch keinen weiteren Weg. Sie sind auf vorgefertigtes geistiges
Eigentum anderer angewiesen. Mehr schaffen ihre Zellen um die
Zirbeldruese herum nicht.

Niemand wuerde auf den Gedanken kommen, einen Fusionsreaktor aus
Legosteinen zusammenzustecken. Und mehr als Legosteine sind Arduinos
eben nicht.

Spess53 ist ganz sicher kein Troll. Er schreibt hier schon viele
Jahr(zehnt)e fachlich gute Beitraege. Aber er ist ganz sicher,
so wie andere hier auch, von dieser geistigen Bettelei genervt.

"Listen" der Bauelemente, die fuer den Anfaenger empfehlenswert
waere, findet sich genug. Und wenn es um Grundlagenwissen geht,
sollte man Listen auf denen ein "Arduino" auftaucht,
tunlichst meiden. Den braucht es fuer Grundlagen eben gar nicht.

Und wenn dem TO hier 4000er CMOS empfohlen werden,
zitiere ich mal aus meiner Aufstellung:
> - unbenutzte IC Eingaenge einfach offen lassen
Das werden bestimmt sehr "spannende" Experimente. :)

von Christoph M. (mchris)


Lesenswert?

>Du verwechselst vorne und hinten. Wo "Arduino" ist, ist niemals vorn. :)

Probiers mal etwas kleiner: Da wo du bist, ist niemals vorn.

CERN:
https://indico.cern.ch/event/1275950/

von Motopick (motopick)


Lesenswert?

> Da wo du bist, ist niemals vorn.

Mir reicht es da zu sein wo ich bin. Wo auch immer das ist.

von DSGV-Violator (Gast)


Lesenswert?

Manche nageln sich aus Steckbrettern ganze Computer zusammen:
https://www.heiko-pruessing.de/projects/hbc65/marvin1.jpg

von Michael B. (laberkopp)


Lesenswert?

Motopick schrieb:
> Niemand wuerde auf den Gedanken kommen, einen Fusionsreaktor aus
> Legosteinen zusammenzustecken.

Aber ziemlich sicher hat der Fusionsreaktorkonstrukteur im Kindesalter 
mit Lego konstruieren gelernt - ganz ohne Statikberechnung, 
Festigkeitsparameter und die örtliche Bauverordnung zu kennen.

von Peter D. (peda)


Lesenswert?

Wilhelm M. schrieb:
> Nimm von den neueren aus der DA, DB, DD oder EA Serie. Da ist alles
> einfacher.

Die Doku ist erheblich umfangreicher und viel schwerer zu verstehen. 
Viele Einheiten sind nur noch als Black-Box dargestellt, ohne das 
Innenleben. Das muß man sich erst umständlich aus dem Text zusammen 
klauben.
Auch ist das Datenblatt nicht mehr vollständig, sondern man braucht 
immer das Usermanual. Man muß dann immer erst nachschauen, ob die 
Einheit im Usermanual auch wirklich in dem jeweiligen Derivat 
implementiert ist und in welchem Umfang.

von Monk (roehrmond)


Lesenswert?

Da kann man dann auch gleich auf STM32 oder andere ARM Controller 
upgraden - sofern einem die 5V nicht wichtig sind.

von Wilhelm M. (wimalopaan)


Lesenswert?

Peter D. schrieb:
> Wilhelm M. schrieb:
>> Nimm von den neueren aus der DA, DB, DD oder EA Serie. Da ist alles
>> einfacher.
>
> Die Doku ist erheblich umfangreicher und viel schwerer zu verstehen.

Finde ich überhaupt nicht.

Insgesamt ist die Struktur wesentlich aufgeräumter.

Der Mist ISP ist weg, man braucht keinen speziellen Programmieradapter 
mehr.

Versorgungsspannungsbereich ist auch größer, mögliche Taktfrequenz 
höher.

Ich mache im 8bit Bereich nichts mehr mit den alten Dingern.

von Wilhelm M. (wimalopaan)


Lesenswert?

Steve van de Grens schrieb:
> Da kann man dann auch gleich auf STM32 oder andere ARM Controller
> upgraden - sofern einem die 5V nicht wichtig sind.

Die meisten IOs sind doch 5V tolerant.

Und die G0xx sind doch die richtigen für Hobbyosten, auch im SOIC8. Wenn 
man einmal den RCC verstanden hat, ist der Rest doch easy.

von Harald W. (wilhelms)


Lesenswert?

Michael B. schrieb:

>> Niemand wuerde auf den Gedanken kommen, einen Fusionsreaktor aus
>> Legosteinen zusammenzustecken.
>
> Aber ziemlich sicher hat der Fusionsreaktorkonstrukteur im Kindesalter
> mit Lego konstruieren gelernt - ganz ohne Statikberechnung,
> Festigkeitsparameter und die örtliche Bauverordnung zu kennen.

Atomkraftwerke baut man so:
https://de.wikipedia.org/wiki/Weihnachten_bei_Hoppenstedts

von Wilhelm M. (wimalopaan)


Lesenswert?

Wilhelm M. schrieb:
> Ich mache im 8bit Bereich nichts mehr mit den alten Dingern.

Und der interne Taktgenerator ist ausreichend genau, Quarz meistens 
überflüssig.

von Motopick (motopick)


Lesenswert?

> Aber ziemlich sicher hat der Fusionsreaktorkonstrukteur im Kindesalter
> mit Lego konstruieren gelernt - ganz ohne Statikberechnung,
> Festigkeitsparameter und die örtliche Bauverordnung zu kennen.

Und, ist jemals dabei ein Fusionsreaktor herausgekommen?
So ganz ohne Statikberechnung und Bauverordnung?

Im uebrigen:
Maedchen spielen mit Puppen.
Jungs mit Puppenkoepfen.

von Georg M. (g_m)


Angehängte Dateien:

Lesenswert?

Steve van de Grens schrieb:
> Da kann man dann auch gleich auf STM32 oder andere ARM Controller
> upgraden - sofern einem die 5V nicht wichtig sind.

Heute müssen große Mikrocontroller schon 32 Bit breit sein.
Aber es gibt auch kleinere Aufgaben, für kleinere Mikrocontroller. Die 
kann man sogar mit C programmieren, ohne ++.

von Veit D. (devil-elec)


Lesenswert?

Hallo Jürgen,

du brauchst doch nur ICs im DIP Gehäuse die man damit direkt auf das 
Breadboard stecken kann. Und wenn es speziell wird und der Wunsch IC nur 
in SMD erhältlich ist lötet man ihn auf einen Adapter. Für 
Schieberegisterspielerreien nimmste zwei 74HC595 in DIP.

Bsp. solche, gibts auch Einzeln in allen Formaten.
https://www.ebay.de/itm/275579627518?hash=item4029d367fe:g:HBwAAOSwF91jmP1D
https://www.ebay.de/itm/275970980675?hash=item404126fb43:g:WJYAAOSwKaRkw9re

Achte nur darauf nicht die unnötig großen Multikulti Platinen zu 
erwischen die dann Steckreihen blockieren.

von Veit D. (devil-elec)


Lesenswert?

Peter D. schrieb:
> Wilhelm M. schrieb:
>> Nimm von den neueren aus der DA, DB, DD oder EA Serie. Da ist alles
>> einfacher.
>
> Die Doku ist erheblich umfangreicher und viel schwerer zu verstehen.
> Viele Einheiten sind nur noch als Black-Box dargestellt, ohne das
> Innenleben. Das muß man sich erst umständlich aus dem Text zusammen
> klauben.
> Auch ist das Datenblatt nicht mehr vollständig, sondern man braucht
> immer das Usermanual. Man muß dann immer erst nachschauen, ob die
> Einheit im Usermanual auch wirklich in dem jeweiligen Derivat
> implementiert ist und in welchem Umfang.

Hallo Peter,

also mal ehrlich, du wiederholst schon länger immer dem gleichen Mist. 
Da platzt mir bald der Kragen. Die Manuals sind einfacher zu lesen, eben 
weil aufgeräumter und mehrere benötige ich auch nicht pro Controller. 
Vielleicht solltest du einmal deine Sammlung aktualisieren. Die 
allerersten Manuals waren geteilt, ja, aber das ist schon lange Schnee 
von gestern.
Ich weiß auch beim besten Willen nicht was du dich darüber laufend 
beschwerst. Vergleich doch mal die Kapitel. In den alten gehts kreuz und 
quer. Hier mal etwas Registererklärung da mal etwas Registererklärung. 
Alles übers Kapitel wild verstreut. In den neuen Manuals wird die 
Einheit erklärt und dann gibts die kompletten Registerübersichten mit 
allen drum und dran. Sogar mit Lesezeichen zum hinspringen. Ich wüßte 
nicht was daran schlechter sein soll. Das ist eindeutig besser. Hat man 
die Einheit einmal verstanden benötigt man nur die 
Registerübersichtstabelle. Benötigt man doch mal eine Biterklärung im 
Detail klickt man direkt dort rein. Absolut easy.

Peter, ich schätze dich im allgemeinen, aber hier liegst du mit deiner 
Meinung absolut neben der Spur. Darum die klaren Worte.

Und wer die Sperren aus den Manuals entfernt haben möchte jagd das 
Manual durch diesen Konverter, mein Liebling https://online2pdf.com/de/
Die Einstellung kann man belassen. Man sollte sie nur nicht 
zusammenfassen lassen falls man mehrere mit einmal bearbeiten lassen 
möchte.

von Peter S. (peter_sch)


Lesenswert?

Motopick schrieb:
> "Listen" der Bauelemente, die fuer den Anfaenger empfehlenswert
> waere, findet sich genug. Und wenn es um Grundlagenwissen geht,
> sollte man Listen auf denen ein "Arduino" auftaucht,
> tunlichst meiden. Den braucht es fuer Grundlagen eben gar nicht.
>
> Und wenn dem TO hier 4000er CMOS empfohlen werden,

Hier gibt es was ohne Arduino und mit vielen 4000ern:
https://www.youtube.com/watch?v=pvF4IiFHuBA&list=PLd91TQa8J24_cpUXZgXfyv16ZouuHnzds

von Georg M. (g_m)


Lesenswert?

Veit D. schrieb:
> In den alten gehts kreuz und quer.

Die neueren AVRs sind auf jeden Fall benutzerfreundlicher.
Diese Kryptographie
1
 TCCR1A = (1<<COM1B1) | (1<<WGM10);
2
 TCCR1B = (1<<WGM13) | (1<<CS11);
brauchen sie nicht mehr.

von Jürgen (bergensdorf)


Lesenswert?

Wilhelm M. schrieb:
> Jürgen schrieb:
>> Der Chef unserer Abteilung hat mir ein C Buch geschenkt, was mir
>> mittlerweile etwas langweilig vorkommt, weil ich C zum grossen Teil
>> schon kenne und ich beschäftige mich gerade mit C++, weil es mir Wilhelm
>> M. empfohlen hat.
>
> Das stimmt so nicht. Du selbst hast gesagt, dass Du C++ kannst:
>
> Im Beitrag Beitrag "Re: LED toggeln mit ATxmega256A3BU" sagtest
> Du:
>
> "Und zu der Aussage möchte ich noch sagen, dass ich erst richtig gelernt
> habe C bzw. C++ zu nutzen, durch das Programmieren mit einem Arduino."
>
> Dort behauptest Du also, C++ zu können. Und deswegen habe ich dort in
> C++ geantwortet.

Ach, sei nicht so kleinkariert. Nachdem du deinen Quelltext gepostet 
hast, habe ich gemerkt, dass ich wohl doch noch nicht so viel von C++ 
kenne. Habe auch nach einem Buchtipp gefragt für C++ in dem Thread.
Wichtig war mir in dem obigen Kommentar nur, dass du einen wichtigen 
Anteil daran hast, dass ich mich gerade vor allem mit C++ beschäftige.

Danke dafür.

Kern des Kommentars war eher zu sagen, dass Assembler zu können, wohl 
nicht  immer nur ein Vorteil ist.

von Thomas (kosmos)


Lesenswert?

unbedingt auch mal einen Latch z.B. 74HC573 ausprobieren, damit kannst 
du sehr einfach I/O Ports erweitern. z.B. mal mit einem kleinem ATTiny 
und einen Latch ein LCD im 8 Bit Modus ansteuern. Vor allem geht die 
Ansteuerung viel schneller als mit Schieberegistern. Daten an einem Port 
anlegen an einem Pin des Latches klingeln schon hat er die Daten 
übernommen, jetzt schalest du seine Eingänge hochohmig und hast deinen 
Port wieder für andere Sachen zur Verfügung.

von Norbert (der_norbert)


Lesenswert?

Georg M. schrieb:
> Die neueren AVRs sind auf jeden Fall benutzerfreundlicher.
> Diese Kryptographie TCCR1A = (1<<COM1B1) | (1<<WGM10);
>  TCCR1B = (1<<WGM13) | (1<<CS11);
> brauchen sie nicht mehr.

Nur, wer das nicht versteht, der hat kein Problem mit dem jeweiligen µC, 
sondern mit den grundlegenden Mechanismen der genutzten 
Programmiersprache.

von Motopick (motopick)


Lesenswert?

Thomas O. schrieb:
> unbedingt auch mal einen Latch z.B. 74HC573 ausprobieren, damit kannst
> du sehr einfach I/O Ports erweitern. z.B. mal mit einem kleinem ATTiny
> und einen Latch ein LCD im 8 Bit Modus ansteuern. Vor allem geht die
> Ansteuerung viel schneller als mit Schieberegistern. Daten an einem Port
> anlegen an einem Pin des Latches klingeln schon hat er die Daten
> übernommen, jetzt schalest du seine Eingänge hochohmig und hast deinen
> Port wieder für andere Sachen zur Verfügung.

Die Ausgabegeschwindigkeit von Text-LCD ist natuerlich essentiell
wichtig. Wie schliesse ich so einen Latch denn an einen 8 Pinner an?

von Wilhelm M. (wimalopaan)


Lesenswert?

Jürgen schrieb:
> Habe auch nach einem Buchtipp gefragt für C++ in dem Thread.
> Wichtig war mir in dem obigen Kommentar nur, dass du einen wichtigen
> Anteil daran hast, dass ich mich gerade vor allem mit C++ beschäftige.

Ich glaube, der Breymann wurde schon erwähnt. Ansonsten: achte dabei auf 
mindestens C++20 und ein Buch, in dem etwas über GUIs gefaselt wird, 
lasse links liegen.

> Danke dafür.

Gern.

> Kern des Kommentars war eher zu sagen, dass Assembler zu können, wohl
> nicht  immer nur ein Vorteil ist.

Assembler (welche CPU???) zu können ist, ist sicher ein Wert an sich. 
Allerdings: m.E. verleitet es zumindest den Anfänger beim Programmieren 
in die falsche Richtung zu denken. Denn bei streng-typisierten Sprachen 
ist es m.E. das wichtigste, in Datentypen zu denken (s.a. Stepanov: 
"Elements of Programming") und natürlich Algorithmen (keine 
for-Schleifen ;-)). Denn Datentypen sind das wichtigste, was uns eine 
"Hochsprache" geben kann. Und gerade das (Datentypen) hat man in 
Assembler ja nicht mehr.

Also: nix gegen Assembler. Sollte man (so ungefährt wenigstens) lesen 
können. Aber fürs Programmieren mit einer Hochsprache hilft Dir das nix.

Das andere sind Schaltnetze/Schaltwerke bzw. Automatentheorie. Das ist 
das wichtigste, wenn man mit µC irgendetwas anfangen möchte.

von Kilo S. (kilo_s)


Lesenswert?

Jürgen schrieb:
> Die vorgefertigten Boxen sind doch meist völlig überteuert.

Finde ich auch.

Tipp: Infrarot kannst du dir aus jedem(!) Gerät mit Fernbedienung 
einfach auslöten.

Habe ich vor kurzem erst gemacht, mit einer uralten 
Universalfernbedienung kann ich nun bis zu 30 verschiedene "Befehle" 
übermitteln.

Alte Navis (TomTom, Garmin) sind super Quellen für resistive 
Touchscreen.
Wenn du dort Koordinaten für einzelne "tasten" definierst kannst du 
ganze Bedienoberfläche mit 4 ADC Pins gestalten.

Rotary encoder gibt's manchmal in Stereoanlagen. Ansonsten sind die in 
jeder PC Maus zu finden.

EEPROM: Fernseher, Receiver, Drucker*.

*:Steppermotoren, Motortreiber, IR Lichtschranken, Temperatursensoren 
(NTC/PTC), RAM.

TTL Fets gibt's ab und zu in Laptops oder Tablets. Auf Mainboard's 
allgemein finden sich auch (BIOS/Uefi) weitere Speicherbausteine.

Netzteile für Optokoppler, Dioden und Leistungshalbleiter...

Nur auf's breadboard würde ich auch Verzichten. Die werden leider 
irgendwann wackelig und was vor 5 Sekunden vor dem umstecken eines der 
Kabel noch ging klappt plötzlich nicht mehr. Lochrasterplatine ist mein 
Favorit, wenn man nicht zu sehr brutzelt kann man die auch 
wiederverwenden. Ist halt etwas aufwändiger.

von Stefan F. (Gast)


Lesenswert?

Motopick schrieb:
> Wie schliesse ich so einen Latch denn an einen 8 Pinner an?

Man kann für alles Gegenbeispiele finden. Nur nützt das irgend wem?

von Stefan F. (Gast)


Lesenswert?

Wilhelm M. schrieb:
> achte dabei auf mindestens C++20

Du kannst es dir vielleicht nicht vorstellen, aber im echten Leben wird 
sehr häufig (ich vermute sogar: meistens) mit älteren Versionen der 
Programmiersprache gearbeitet. Nicht nur bei C++.

Für das Erlernen eine Programmiersprache ist es auch nicht wichtig, dass 
das erste Buch gleich den gesamtem neuesten Sprachumfang enthält. Man 
kann das ohne Praxis sowieso nicht alles gleichzeitig erlernen.

Gerade bei C/C++ ist es bisher immer so gewesen, dass neue Funktion 
hinzugefügt wurden, ohne die alten zu ändern. Insofern sind alte 
Lehrbücher zu C/C++ immer noch sinnvoll und gültig.

von Motopick (motopick)


Lesenswert?

> Man kann für alles Gegenbeispiele finden. Nur nützt das irgend wem?

Es reicht, dem bekennenden Anfaenger, die Sinnhaftigkeit vorzufuehren.
Ansonsten bin ich grosser Freund der direkten Verwendung von Latchen,
Schieberegistern, Flip-Flops etc. als Peripherie.
Nur ein alphanumerisches LCD ist halt eing ganz schlechtes Beispiel.

von Motopick (motopick)


Lesenswert?

P.S.

Fuer LCDs habe ich sogar eine "Spezialschaltung" die nur
ein Pin braucht. Und ein Schieberegister. :)
Damit bleiben dann bei einem 8 Pinner sogar noch 5 Pins
fuer andere sinnvolle Dinge uebrig.

von Peter G. (ham)


Lesenswert?

Hallo

Was soll eigentlich der ins persönlich gehende Hass und die Ignoranz,
dass es für jeden halt verschiedene Priorität und Vorgehen gibt?

Der eine will verstehen wie ein µC funktioniert, woher dieser (generell
als irgendein µC) herkommt, die Geschichte bzw. die Logikgruppen bis
hinunter zum Halbaddierer und AND Gatter dahinter verstehen.
Für den ist, nachdem er sich mit den reinen Logikgattern und den
tiefsten Grundlagen und Ideen von Speichern, Registern usw.
auseinandergesetzt hat, ein wenig praktischer Assembler natürlich immer
parallel, mit Blick auf dem Datenblatt (eher Datenbuch) der richtige und
befriedigende Einstieg.
Irgendwann (recht schnell) wird er feststellen - sehr interessant und
man ist mit seinem µC bis ins Kleinste vertraut, aber der ganze Kram ist
dann doch sehr anstrengend - dann schwenkt man als so trainierter und
oft mehr an den µC und Elektronik als am fertigen Produkt interessierter
auf C oder (C++) um.

Der andere will ein schnelles und recht universelles Ergebnis haben -
der nutzt halt (eventuell auch schon aus dem PC Bereich her bekannt)
eine Hochsprache.
Was auf "atomarer Ebene" und im Register 0815 beim Bit 7 interessiert
ihn aber nicht.

Und dann gibt es z.B. den Modellbahnen begeisterten, der nicht die
unverschämten Preise für so manche kleine Steuerung zahlen will, aber
null Ahnung von Elektronik hat und auch nie ein echtes Interesse und
Begeisterung an der E-Technik und µC Programmierung an sich - böse kann
man auch sagen als selbstzweck...;-)  haben wird.

Der googelt ein wenig und sieht, dass man mit einem Arduino Nano Clone
die Sache (und vieles mehr =>"Will haben und kann "jetzt" auch
bezahlen") auch für unter 5 Euro bekommen kann.

Und super:
Jemand anderes der es kann hat das schon erledigt, den Source code (das
Arduino Script) fertiggestellt und zum kostenlosen "Download" angeboten
und das auch noch mit einer guten Erklärung wie der Arduino (Hardware)
und eventuell notwendige Elektronik angeschlossen wird und man als
Unwissender den Code auf den Arduino "bringt" (ob das Flashen heißt oder
sonst wie korrekt bezeichnet wird interessiert der Modelleisenbahn
begeisterten nicht im Geringsten).


All diese Vorgehensweisen, Erwartungen und "Philosophen" haben ihre
Berechtigungen und niemand hat das moralische Recht (einfach wegen
Respekt und eines vernünftigen Umgangs miteinander)über eine dieser
Gruppen und erst recht nicht einer einzelnen Person herzuziehen und
diese  lächerlich zu machen.

Und natürlich auch nicht über all die dazwischen liegenden Ausprägungen.

Einfach nett oder zumindest neutral gegenüber "den anderen" sein...
Ist das denn so schwer?

: Bearbeitet durch User
von Alexander S. (alesi)


Lesenswert?

Jürgen schrieb:
> Hallo,
>
> ich würde gerne mit einigen ICs auf dem Breadboard rumspielen. Hat da
> vielleicht jemand hier schon mal eine Liste für sich gemacht, was man so
> bestellen kann? Also sowas, wie ein Schieberegister, analoge und
> digitale Temperatursensoren, Infrarot-Sender und Empfänger und was es
> nicht so alles gibt...

Du kannst z.B. in diesen Links nach Anregungen suchen:
https://www.mikrocontroller.net/articles/AVR
https://www.mikrocontroller.net/articles/Standardbauelemente
https://www.mikrocontroller.net/articles/AVR-Tutorial
https://www.mikrocontroller.net/articles/AVR_Softwarepool

http://www.avr-asm-tutorial.net/avr_de/index.html
https://www.weigu.lu/tutorials/avr_assembler/index.html

von Wilhelm M. (wimalopaan)


Lesenswert?

˙ɟ uɐɟǝʇs schrieb:
> Wilhelm M. schrieb:
>> achte dabei auf mindestens C++20
>
> Du kannst es dir vielleicht nicht vorstellen, aber im echten Leben wird
> sehr häufig (ich vermute sogar: meistens) mit älteren Versionen der
> Programmiersprache gearbeitet.

Doch, das weiß ich sogar sehr gut, sogar im echten Leben für 
Schmerzensgeld. Du verwechselst allerdings alte Projekte mit neuen 
Projekten.

> Nicht nur bei C++.

Auch das weiß ich sehr gut.

> Für das Erlernen eine Programmiersprache ist es auch nicht wichtig, dass
> das erste Buch gleich den gesamtem neuesten Sprachumfang enthält. Man
> kann das ohne Praxis sowieso nicht alles gleichzeitig erlernen.

Das ist doch vollkommen klar und eine Selbstverständlichkeit. Was 
allerdings nicht selbstverständlich ist, und das ist Dir offensichtlich 
so gar nicht klar, ist, dass ein Buch eben das richtige an Themen 
enthalten muss. Und genau das ist bei bspw. C++ immens wichtig. Denn in 
dem sog. modernen C++ macht es überhaupt kein Sinn, mit irgendwelchen 
alten Zöpfen anzufangen, nur weil irgendwelche alten Code-Basen darauf 
aufsetzen.

> Gerade bei C/C++ ist es bisher immer so gewesen, dass neue Funktion
> hinzugefügt wurden, ohne die alten zu ändern. Insofern sind alte
> Lehrbücher zu C/C++ immer noch sinnvoll und gültig.

Und genau das ist das Problem von alten Lehrbüchern, was Du wohl immer 
noch nicht erkannt hast. Die Sprache hat leider das Mantra der 
inklusiven Abwärtskompatibilität. Das bedeutet aber nicht, dass das für 
einen, der die Sprache neu lernen will, auch sinnvoll ist. Nicht umsonst 
macht die Sprache eine Evolution durch.
Der Anfänger sollte eben die alten Zöpfe zunächst nicht betrachten, 
sondern sich auf einfachere, moderne Aspekte konzentrieren. Und genau 
deswegen habe ich geschrieben, dass er ein Buch oder Kurs besuchen soll, 
der auf C++20 aufsetzt. Und auch keine Zusatzinfos wie GUIs odgl. 
enthält.

von Wilhelm M. (wimalopaan)


Lesenswert?

Peter G. schrieb:
> Was soll eigentlich der ins persönlich gehende Hass und die Ignoranz,
> dass es für jeden halt verschiedene Priorität und Vorgehen gibt?

Oh, Du scheinst neu in diesem Forum zu sein, oder?

von Wilhelm M. (wimalopaan)


Lesenswert?

Georg M. schrieb:
> Veit D. schrieb:
>> In den alten gehts kreuz und quer.
>
> Die neueren AVRs sind auf jeden Fall benutzerfreundlicher.
> Diese Kryptographie
>
1
>  TCCR1A = (1<<COM1B1) | (1<<WGM10);
2
>  TCCR1B = (1<<WGM13) | (1<<CS11);
3
>
> brauchen sie nicht mehr.

Ja, weil es diesen alten Timer-Typ nicht mehr gibt.

Aber nun erzähl uns mal, wie Du auch bei moderneren AVRs alle Bits 
einigermaßen sprechend setzt, oder - schlimmer noch - einzelne Bits 
eines Registers modifizierst.

Aber was Du schreibst ist auch nicht wirklich entscheidend, abgesehen 
von den kryptischen Namen für die Register bzw. Bit-Positionen.
Tragisch ist es, dass Du ohne einen Compilationsfehler auch
1
TCCR1B = (1<<COM1B1) | (1<<WGM10);
2
TCCR1A = (1<<WGM13) | (1<<CS11);

schreiben kannst. Das kann man zwar in den Griff bekommen, aber die 
Hersteller tun das nicht, obwohl es einfach möglich wäre. Aber auch 
selbst kann man in C++ gut verbessern.

von Thomas (kosmos)


Lesenswert?

Die Ansteuerung eines LCDs erfordert sicher keine hohe Geschwindigkeit. 
Ich wollte damit nur ausdrücken das man das mit sehr wenig 
Programmieraufwand komplett weitere 8 Bits ausgeben kann. Also ohne 
erstmal in der Software das ganze womöglich in einer Schleife 
rauszuschieben usw. Man spart sich enorm Laufzeit gerade als Anfänger wo 
noch alles im"polling mode" läuft.

von Frank O. (frank_o)


Lesenswert?

Jürgen schrieb:
> Habe auch nach einem Buchtipp gefragt für C++ in dem Thread.

Der C++ Programmierer. ISBN 978-3-446-42691-7

von Wilhelm M. (wimalopaan)


Lesenswert?

Frank O. schrieb:
> Jürgen schrieb:
>> Habe auch nach einem Buchtipp gefragt für C++ in dem Thread.
>
> Der C++ Programmierer. ISBN 978-3-446-42691-7

Wurde schon erwähnt ...

von Frank O. (frank_o)


Lesenswert?

Wilhelm M. schrieb:
> Wurde schon erwähnt ...

Ups!
Aber es ist so gut, da schadet mehrmals nicht. ;-)

Beitrag #7472683 wurde vom Autor gelöscht.
Beitrag #7473569 wurde vom Autor gelöscht.
Beitrag #7715018 wurde vom Autor gelöscht.
Beitrag #7715020 wurde vom Autor gelöscht.
von Steffen W. (steffen_w145)


Lesenswert?

> Habe vor einigen Tagen zum Beispiel mit einem Arduino, 8 LEDS und einem
> Schieberegister einen binären Zähler gebastelt, der von 0 bis 255 zählt
> (binär halt). Es macht einfach super viel Spaß, sowas zu programmieren
> und es dann auch in echt zu sehen.


Hallo

Lese gerade deinen Text und suche ebenfalls einige ics fürs breadboard 
zum Experimentieren. hab mir den arduino Uno gekauft und einige 
breadboards... morgen sollte die Schieberegister ankommen, dann hoffe 
ich zu dem Ergebnis zu kommen das du bereits geschafft hast. Ich hab 
leider erst jetzt das Interesse daran gefunden. Aber macht Spaß. Viel 
Sinn hat mein Text jetzt nicht gemacht.. Grüße gehen raus.

von Steffen W. (steffen_w145)


Lesenswert?

Hallo.

man musste das Programmieren noch nie studieren... man kann.

Und was lernt man in der Uni was man selbst nicht lernen könnte.
Und oft sind die besseren Programmierer die, die es nicht studiert 
haben.
Jeden das seine Interesse.

Grüße

von Dieter D. (Firma: Hobbytheoretiker) (dieter_1234)


Lesenswert?

Steffen W. schrieb:
> morgen sollte die Schieberegister ankommen,

Eventuell kannst Du dort mal spicken, welche Bausteine interessant sein 
könnten:
https://de.elv.com/p/elv-bausatz-prototypenadapter-fuer-steckboards-pad6-cmos-logik-P155858/?itemId=155858

von Steffen W. (steffen_w145)


Lesenswert?

> Eventuell kannst Du dort mal spicken, welche Bausteine interessant sein
> könnten:
> 
https://de.elv.com/p/elv-bausatz-prototypenadapter-fuer-steckboards-pad6-cmos-logik-P155858/?itemId=155858

Hi.

Für mich sind gerade alle Bauteile und Ic's interessant.
Ich danke dir/ihnen vielmals.

Grüße


PS:

Seit 3 Wochen suche ich genau diese teile..

Ich hatte diese mal gesehen, aber nicht wiedergefunden. 1k Dank

: Bearbeitet durch User
von Michael B. (laberkopp)


Lesenswert?

Steffen W. schrieb:
> morgen sollte die Schieberegister ankommen

Für 8 LED braucht man kein Schieberegister, die passen direkt an einen 
Arduino.

https://dse-faq.elektronik-kompendium.de/dse-faq.htm#F.2

von Dieter D. (Firma: Hobbytheoretiker) (dieter_1234)


Lesenswert?

Michael B. schrieb:
> Für 8 LED ...

Mit Charly-Plexing oder auch Bus-LEDs zum Beispiel, aber hier möchte der 
Fragende mit den Digital-IC experimentieren, so wie man mal eine alte 
einfache Analogendstufe mit Transistoren oder Röhren baut.

Es gibt durchaus noch Digitalschaltungen mit Gattern und 
Schieberegistern.

Zum Beispiel, wenn eine Retention Time nicht zuschlagen darf, etwas sehr 
einfache und sehr zuverlässige Logik braucht für die µC mit externen 
Watchdog-Chips oversized wären, usw.

von Thomas (kosmos)


Lesenswert?

Hallo Jürgen,

ich finde es gut das du dich damit beschäftigen willst. Hier mal eine 
kleine Liste was ich schon verwendet habe.

74HC573 Latch kann man zum erweitern der Eingabe als auch Ausgabeports 
verwenden und dadurch aufs Multiplexing verzichten. Man übergibt die 
Daten an das Latch, schaltet die Latcheingänge wieder hochohmig und kann 
den Port danach wieder für andere Sachen verwenden sogar den Port dann 
wieder als Eingang verwenden. Sehr einfache Programmierung und es werden 
nur wenige Takte benötigt (Daten am Port ausgeben, Latch-Eingänge 
aktivieren,Daten am Latch übernehme und Latch wieder hochohmig schalten.
https://www.mikrocontroller.net/attachment/106713/THEMENBLATT_PORTERWEITERUNG.PDF

LM2901 4fach Komparator man stehlt dort 1-4 Schwellen ein und wenn diese 
über oder unterschritten werden wird ein Ausgang durchgeschaltet. Kann 
man z.B. verwenden wenn man keinen ADC hat so kann man Schwellwerte 
detektieren oder einen 2bit ADC bauen, Aussteueranzeigen(kaskadierbar), 
primitive Strommessung wenn man einen Shunt in die Masse einfügt und das 
Signal vor dem Shunt auf den Komparator gibt, so kann man 4 verschiedene 
Stromschwellen erkennen. z.B. Stromaufnahme zugering, normal, erhöht und 
zu hoch....

LM2902 4fach OP-AMP
NE5532/4 Audio OP-Amp
74HC14 6fach Schmitt-Trigger Inverter, Signalaufbereitung für saubere 
Flanken
NE555 Timer Baustein
TSOP36/38....
IR demodulator wie TSOP36 oder Nachfolger, falls du mal mit einer 
IR-Fernbedienung am AVR etwas auslösen willst.

Außerdem schau mal wie man einen I/O Pin am AVR schützt, im einfachsten 
Fall reicht schon ein Widerstand. Da muss man nicht immer einen AVR 
Schrotten ansonsten nimmt wirklich die günstigeres Tinys am Anfang die 
haben doch auch schon ADC, Timer...

von Steffen W. (steffen_w145)


Lesenswert?

Michael B. schrieb:
> Steffen W. schrieb:
>> morgen sollte die Schieberegister ankommen
>
> Für 8 LED braucht man kein Schieberegister, die passen direkt an einen
> Arduino.
>
> https://dse-faq.elektronik-kompendium.de/dse-faq.htm#F.2

Ja das weiß ich... ich möchte dennoch die Schieberegister an sich 
testen.
Schieberegister verstehe ich, komperator leider noch nicht so ganz. 
daher versuche ich alles einzeln.

Danke und viele grüße

von Monk (roehrmond)


Lesenswert?

Jürgen schrieb:
> wenn ihr ein paar Ideen habt, was
> ich so bestellen kann, wäre mir schon viel geholfen

Heute bastelt man ja eher mit Modulen, als mit einzelnen Mikrochips. Ab 
und zu muss man mal ein Signal verstärken, filtern oder invertieren, 
damit es zum Modul passt. Deswegen kommen auf meinen Steckbrettern (wenn 
überhaupt) meistens solche IC's zum Einsatz:

- Operationsverstärker (TS912)
- Invertierende Schmitt-Trigger (CD4584, CD40106, 74HC14)
- AVR Mikrocontroller (ATtiny85, ATtiny84, ATmega328)

Nachdem ich meine alten Operationsverstärker aufgebraucht habe, ist der 
TS912 mein neuer Standard-Typ. Leider gibt es den nur in SMD zu kaufen 
(obwohl das Datenblatt auch eine DIL Version zeigt), deswegen habe ich 
ein paar davon mit Adapter präpariert.

: Bearbeitet durch User
von Clemens L. (c_l)


Lesenswert?

Monk schrieb:
> Nachdem ich meine alten Operationsverstärker aufgebraucht habe, ist der
> TS912 mein neuer Standard-Typ. Leider gibt es den nur in SMD zu kaufen

In DIP gibt es z.B. MCP6002 (nur bis 5 V), TLV2372, OPA2705.

von Wastl (hartundweichware)


Lesenswert?

Monk schrieb:
> Deswegen kommen auf meinen Steckbrettern (wenn
> überhaupt) meistens solche IC's zum Einsatz

Auch der altgediente Herr Frings kann es nicht lassen ab
und zu einen Deppenapostroph in seine Beiträge einzubauen.

Bitte keine Deppenapostrophe.
http://www.deppenapostroph.info

von Christoph M. (mchris)


Lesenswert?

Monk schrieb:
> Nachdem ich meine alten Operationsverstärker aufgebraucht habe, ist der
> TS912 mein neuer Standard-Typ. Leider gibt es den nur in SMD zu kaufen

Ich hatte mir vor kurzem den MCP6044 im DIL gekauft.

von Monk (roehrmond)


Lesenswert?

Christoph M. schrieb:
> Ich hatte mir vor kurzem den MCP6044 im DIL gekauft.

Guter Tipp! Der ist allerdings sehr langsam und rauscht stark, sollte 
man ggf. berücksichtigen, z.B. wenn es um Audio geht.

: Bearbeitet durch User
von Ob S. (Firma: 1984now) (observer)


Lesenswert?

Wilhelm M. schrieb:

> Aber nun erzähl uns mal, wie Du auch bei moderneren AVRs alle Bits
> einigermaßen sprechend setzt, oder - schlimmer noch - einzelne Bits
> eines Registers modifizierst.

Da gibt es tatsächlich erhebliche Fortschritte bezüglich der Lesbarkeit.

Zum einen sind zunächst mal alle Bitpositionen und -Masken nach einem 
einheitlichen Schema vordeklariert. Alle Bitpositionen haben den Suffix 
_bp, die dazu gehörenden Bitmasken heißen jeweils gleich, haben aber den 
Suffix _bm. Das erspart schonmal diese vielen 
"(1<<Bitnummer)"-Konstrukte im Quelltext.

Weiterhin gibt es für sehr viel Funktionalität vordefinierte 
Kombinationen aus Bitmasken. Die haben dann auch wieder einheitlich den 
Suffix _gc. Insbesondere diese Dinger machen vieles sehr viel einfacher 
lesbar, weil halt direkt im Symbol ein Bezug auf die gewünschte 
Funktionalität steckt.

Das waren die Fortschritte im deklarativen Bereich. Dazu kommen dann 
noch die Fortschritte bei der Hardware selber, insbesondere in Form von 
SET- und CLR- Registern, deren Existenz es halt oft unnötig macht, mit 
RMW-Zugriffen und Bitmanipulationen zu hantieren, um einzelne Bits in 
SFIORs zu setzen bzw. zu löschen. Leider gibt es diese Art Register 
längst nicht überall. Für IO-Ports z.B. aber schon.

Mal ein Beispiel, wie eine recht komplexe Initialisierung unter 
Benutzung dieser Features aussieht:
1
PORTD.DIRCLR = 1 << 2;
2
PORTD.PIN2CTRL = PORT_ISC_INPUT_DISABLE_gc;
3
4
VREF.ACREF = VREF_REFSEL_VDD_gc;
5
6
AC0.INTCTRL = AC_INTMODE_NORMAL_BOTHEDGE_gc;
7
AC0.CTRLB = AC_WINSEL_DISABLED_gc;
8
AC0.DACREF = 0x80;
9
AC0.MUXCTRL = AC_INITVAL_HIGH_gc | AC_MUXPOS_AINP0_gc | AC_MUXNEG_DACREF_gc;
10
AC0.CTRLA = AC_POWER_PROFILE0_gc | AC_HYSMODE_SMALL_gc;
11
12
TCB1.CTRLB = TCB_CNTMODE_CAPT_gc;
13
TCB1.EVCTRL = TCB_FILTER_bm | TCB_EDGE_bm | TCB_CAPTEI_bm;
14
TCB1.CTRLA = TCB_CASCADE_bm | TCB_CLKSEL_EVENT_gc;
15
16
TCB0.CTRLB = TCB_CNTMODE_CAPT_gc;
17
TCB0.EVCTRL = TCB_FILTER_bm | TCB_EDGE_bm | TCB_CAPTEI_bm;
18
TCB0.CTRLA = TCB_CLKSEL_DIV1_gc;
19
20
EVSYS.CHANNEL0 = EVSYS_CHANNEL0_TCB0_OVF_gc;
21
EVSYS.USERTCB1COUNT = EVSYS_USER_CHANNEL0_gc;
22
EVSYS.CHANNEL1 = EVSYS_CHANNEL1_AC0_OUT_gc;
23
EVSYS.USERTCB0CAPT = EVSYS_USER_CHANNEL1_gc;
24
EVSYS.USERTCB1CAPT = EVSYS_USER_CHANNEL1_gc;

Wenn du Langeweile hast, kannst du dasselbe ja mal auf die "klassische" 
Art vollständig aus einzelnen Bits zusammenfiddeln und dann beide 
Fassungen einem neutralen Beobachter mit der Aufgabe vorlegen, daraus zu 
extrahieren, welche Funktion hier wohl initialisiert werden soll. 
Wohlgemerkt: es geht dabei nicht um Details, sondern er soll nur erst 
mal grob herausfinden, was hier die Intention ist.

von Martin V. (oldmax)


Lesenswert?

Hi Jürgen
Ich hab mal kurz die Antworten überflogen, na ja... Aber ich hab auch 
einen Tip für dich. Vor ein paar Jahren habe ich in dem Forum 
Makerconnect.de ein Buch veröffentlicht. Der Link sollte noch 
funktionieren
https://www.makerconnect.de/media/user/oldmax/PC%20und%20Mikrocontroller%20Teil%201%20und%202%20Stand%2026.07.2019.pdf
Einen Hinweis habe ich erhalten, allerdings nicht geprüft
Bei den beiden Schaltungen auf den Seiten 593/594 ist der Transistortyp 
(BC328 (PNP) / BC338 (NPN)) vertauscht.
Bei der ersten Schaltung sind außerdem noch die Bezeichnungen PNP / NPN 
vertauscht.
Ok, das Buch ist entstanden, als ich mit Atmegas gearbeitet habe und 
nicht immer wusste, ob die Daten richtig bearbeitet werden. Daher habe 
ich mir einen Monitor geschrieben, der mir die Daten zur Laufzeit des 
Controllers visualisierte. Letztendlich fand ich es eine gute Idee, 
diese Programmentwicklung in VisualBasic sowie einige Experimente in 
Assembler für den Controller aufzuschreiben und zu veröffentlichen. Ist 
sehr umfangreich, aber nicht allzu kompliziert. Hoffe ich. Da steht auch 
drin, was du so an Material für Experimente benötigst. Klar kannst du 
auch diskrete Bauteile nehmen NAND, NOR, AND, FlipFlops und alles was es 
so gibt auf dem Breadboard verschalten, aber günstiger ist es, mit einem 
Controller zu arbeiten und wenn du mit Assembler programmierst, erkennst 
du auch, wie Logik funktioniert. Ok, diese Aussage ist nicht ganz 
korrekt und kann man drüber streiten, aber das ist ja auch nicht das 
Thema.
 Das Buch ist kostenlos, also schau mal rein. Vielleicht kannst du ja 
was davon gebrauchen.
Gruß oldmax

von Christoph M. (mchris)


Lesenswert?

Martin V. (oldmax)
>Ok, das Buch ist entstanden, als ich mit Atmegas gearbeitet habe und
>nicht immer wusste, ob die Daten richtig bearbeitet werden. Daher habe
>ich mir einen Monitor geschrieben, der mir die Daten zur Laufzeit des
>Controllers visualisierte.

Das gute, alte Basic .. die Technik schreitet unaufhaltsam voran und 
heutzutage würde man vielleicht eher Micro-Python nehmen:

https://www.coderdojotc.org/micropython/robots/02-base-bot/
https://randomnerdtutorials.com/projects-esp32-esp8266-micropython/

von Michael B. (laberkopp)


Lesenswert?

Ob S. schrieb:
> Mal ein Beispiel,

Wie man es möglichst unlesbar macht ?

So wäre es lesbar;
1
TCB1.EVCTRL.Filter = true;
2
TCB1.EVCTRL.Edge = RISING;
3
TCB1.EVCTRL.CAPTEI = true;
oder sogar ohne Brucksichtigung welches Register:
1
TCB1.EventFilter = true;
2
TCB1.EventEdge = RISING;
3
TCB1.EventCaptureEI = true;
Weil man einfach mal ein unsigned long bitset für TCB1 verwendet und 
nicht den Scheiss kreuz und quer im Adressraum verteilt.

von Ob S. (Firma: 1984now) (observer)


Lesenswert?

Michael B. schrieb:

> So wäre es lesbar;
>
1
> TCB1.EVCTRL.Filter = true;
2
> TCB1.EVCTRL.Edge = RISING;
3
> TCB1.EVCTRL.CAPTEI = true;
4
> 
5
>
> oder sogar ohne Brucksichtigung welches Register:
>
1
> TCB1.EventFilter = true;
2
> TCB1.EventEdge = RISING;
3
> TCB1.EventCaptureEI = true;
4
>
> Weil man einfach mal ein unsigned long bitset für TCB1 verwendet und
> nicht den Scheiss kreuz und quer im Adressraum verteilt.

Hauptsache mal dumm rumgelabert.

Effektiv erzeugen alle drei Varianten (meine eine und deine beiden) 
natürlich keinen "unsigned long bitset" (was immer das sein soll), 
sondern einen stinknormalen 8Bit breiten Schreibzugriff.

Es könnte allenfalls noch dadurch ein Unterschied rauskommen, ob dabei 
die Adressierungsart direkt oder indirekt mit Offset verwendet wird. Das 
kommt darauf an, ob nur ein Zugriff auf ein Register oder mehrere, nah 
beieinander liegende erfolgt. Je mehr nah beieinander liegende Register 
am Stück angesprochen werden, desto wahrscheinlicher wird der Compiler 
statt direkt lieber indirekt mit Offset verwenden und den Overhead des 
Ladens eines Indexregisters in Kauf nehmen (würde ich in Assembler auch 
so machen).

Was du Nixwisser wahrscheinlich meinst, ist, dass auf der Ebene, die du 
siehst und scheinbar ausschließlich begreifst, u.U. mehrere Zugriffe auf 
aufeinander folgende 8Bit-Register irgendwie zu einem "unsigned 
long-Schreibzugriff" verwurstet werden. Das ist aber natürlich reine 
Makulatur ohne jeden Sinn und Verstand.

Auf der Ebene der Maschine muss das dann nämlich doch wieder in vier 
einzelne Byte-Zugriffe aufgelöst werden. Wir haben es hier schließlich 
mit einer 8Bit-Maschine zu tun, die 32Bit-Zugriffe schlicht und einfach 
überhaupt nicht kann. Da kann auch das ganze aufgeblähte C++-Gedöhns 
rein garnix dran ändern.

Da kannst du dich auf den Kopf stellen, heftig mit den kleinen Füsschen 
aufstampfen und blau anlaufen. Isso. Und wird so bleiben.

von Martin V. (oldmax)


Lesenswert?

Hi
Christoph M. schrieb:
> Das gute, alte Basic .. die Technik schreitet unaufhaltsam voran und
> heutzutage würde man vielleicht eher Micro-Python nehmen:

Ach Gott, ja. Das ich mir erlaubt habe, das Thema mit Basic 
aufzublähen... sowas aber auch. Warum nicht Delphi (Pascal) oder weils 
umsonst ist, Lazarus. Ich hab damals VB gewählt, weil es alle 
Komponenten hatte, die für eine Kommunikation mit einer Windows 
Application kostenlos verfügbar war. (Abgesehen von Lazarus). Leider ist 
in VB die serielle Schnittstelle in den zur Zeit verfügbaren Versionen 
nicht mehr vorhanden, daher schreibe ich meine Anwendungen in Lazarus. 
Aber egal welche Programmiersprache genutzt wird, man muss wissen, wie 
man ein Programm aufbaut. Einen Sprachsyntax zu lernen ist Fleißarbeit, 
um programmieren zu können erfordert es etwas Talent. Klar, kann man 
auch lernen, kenne genug Software von entsprechenden Programmierern, die 
auch der Meinung waren, nur Studierte können das. Aber da steht mir kein 
Urteil zu und es ist mir auch egal, letztendlich. Mit diesem Buch wollte 
ich Anfängern, die genug Interesse mitbringen, hartnäckig an einem 
Programm zu arbeiten, ein wenig zu zeigen, wie sich ein Programm aufbaut 
und wenn modular gestaltet, Erweiterungen relativ leicht einpflegen 
lässt. Sozusagen eine Einsteigerhilfe. Perfekt wird man ja erst durch 
Praxis.
Übrigens, gibt es in Micro-Python eigentlich auch eine Anleitung zu 
einem umfangreichen Datenbankprogramm, welches die Visualisierung von 
Controllervariablen zur Laufzeit liefert, Einzelne Variablen markieren 
kann und mit Hilfe eines Triggers gezielt einen Zustand zu einem 
Zeitpunkt liefert? Darüber hinaus die Möglichkeit bietet, Bauteile, 
Zeichnungen, Schaltungen und Bilder zu Projekten zuordnen kann? Ok, es 
darf auch etwas weniger sein, vielleicht die Datenerfassung von 
Temperaturen und Energieverbräuchen durch einen µC mit einer 
Visualisierung. Da wär ich mal gespannt, ob das schon jemand mal 
veröffentlicht hat. Für lau natürlich. Nur um anderen beim Einstieg zu 
helfen. Auf den Link bin ich mal gespannt.
Gruß oldmax

: Bearbeitet durch User
von Christoph M. (mchris)


Lesenswert?

Martin V. (oldmax)
12.08.2024 15:19
>Ich hab damals VB gewählt, weil es alle
>Komponenten hatte, die für eine Kommunikation mit einer Windows
>Application kostenlos verfügbar war.

Basic ist out, heute is Python.
Die Technik ändert sich nun einmal und insbesondere die Informatik.
Als Auswahlkriterium einer Programmiersprache kann auch die Anzahl der 
Programmierer dienen, die sie können. Die sind es, welche das zukünftige 
Wartungspersonal eines Softwarepakets darstellen. Pascal (Delphi, 
Lazarus) sind hier nur eine Nische.

https://www.heise.de/news/C-waechst-2023-am-staerksten-Tiobe-Index-kuert-die-Sieger-des-Jahres-9591269.html

von Monk (roehrmond)


Lesenswert?

Christoph M. schrieb:
> Basic ist out, heute is Python.

Martin, geh da gar nicht drauf ein. Du musst ihn nicht zufrieden stellen 
(Perlen vor die ...)

: Bearbeitet durch User
von Martin V. (oldmax)


Lesenswert?

Hi
Sorry, hier geht es nicht um Programmiersprachen, sondern darum, das 
Jürgen mit ICs, bzw. Bauteilen arbeiten möchte. Mein Beitrag diente zwar 
wieder der Richtung µC, aber nur, weil mein Buch auch auf ein paar 
wenige Bauteile Bezug nimmt. Mir ist es völlig egal, mit welcher Sprache 
Ziele erreicht bzw. Projekte umgesetzt werden. Jeder soll das nehmen, 
welches ihm Erfolg verspricht. Und wenn man sich in einer Nische bewegt, 
was solls, Künstler findet man nicht in den Massen sondern in den 
Individuen.
Aber behaltet euren Glauben an schnell wechselnde Sprachen, Python ist 
morgen vermutlich schon wieder überholt....
Wer programmieren kann, der fragt nicht, welche Sprache muss ich 
einsetzen, sondern fragt, was ist geeignet, mein Problem zu lösen. Aber 
wie lernt man das Programmieren? Ja, ein bisschen Ausbildung und ein 
bisschen mehr Talent sind notwendig, um zum Ziel zu kommen. Dazu ein 
kleines Beispiel: Eine Software erwartet ein Login mit Anwender und 
Passwort. Hat der Bediener nach der Eingabe des Anwendernamens die 
Eingabe mit ENTER abgeschlossen, wurde das Programm beendet, da kein 
Passwort eingegeben wurde. Die Aussage des Herstellers: Das ist in 
Windows so. Falsch, hätte man die Eingabe von ENTER abgefangen und zu 
einem TAB geändert, wäre das Problem gelöst. Völlig ohne Aufwand. Aber 
das hätte dem Programmierer von seinem Schulwissen zu seinem Talent 
führen müssen und das ist, so meine Erfahrung, für einige unmöglich.
Also diskutiert nicht mit mir über Sprachen, ich bin 73, da werde ich 
nicht umschwenken. es sei denn, eines meiner Projekte erfordert es. Und 
dann setze ich ein. was ich für richtig halte.
Jürgen kann ich empfehlen, ja, bastel mit ein paar Bauteilen, aber achte 
darauf, das du dich nicht verirrst. Schau hin, was du brauchst, um el. 
Signale von Sensoren für Controller aufzuarbeiten, Controllersignale für 
Relais und andere Aktoren zu verstärken. Alles andere kann der 
Controller für dich lösen und das ist genauso spannend  wie bspw. der 
diskrete Aufbau einer Digitaluhr. Auch wenn Einige laut aufschreien, 
Assembler ist fast so wie Verdrahten einer Schaltung. Du lernst sehr 
viel über das Innere eines Controllers und wie er funktioniert. Und um 
Spaghetticode zu vermeiden, muss man lernen Modular vorzugehen. Das habe 
ich in dem Buch versucht zu erklären und nein, man muss nicht das ganze 
Buch lesen, sondern nimmt nur die Abschnitte, die man braucht.
Ok, sollte reichen
Gruß oldmax

von Frank O. (frank_o)


Lesenswert?

Michael B. schrieb:
> Weil man einfach mal ein unsigned long bitset für TCB1 verwendet und
> nicht den Scheiss kreuz und quer im Adressraum verteilt.

Michael, so sehr ich deine Beiträge schätze, aber für den, der das als 
Hobby betreibt, da soll sich nach Möglichkeit der Compiler drum kümmern, 
wo das Zeug landet.
Stelle dir vor, dass du dir in deiner Freizeit ein Auto bauen möchtest.
Irgendein cooles Teil. Du hast noch nie geschweißt (könnte man mit dem 
Programmieren vergleichen) und jetzt fängst du an.
Erstmal wärst du froh,  wenn du dir nicht einen Motorblock gießen musst, 
auch die Felgen und viele andere Teile gibt es fertig (wären die 
Libraries von Arduino).
Wenn du dich schon bei den ersten Schweißübungen schwer getan hast, 
würdest du nicht auch zu einem Schweißgerät greifen,  dass alles selbst 
einstellen kann?
Das soll die Software für Leute wie mich und für viele Anfänger machen.
Im Übrigen, selbst wenn du Räder, Motor,  Getriebe und eine Menge mehr 
fertig genommen hast, so ist es am Ende trotzdem dein ganz individuelles 
Auto. Du kannst an den Kennfeldern arbeiten, vielleicht leichtere Kolben 
nehmen.  Selbst den Auspuff verlegst du nach oben, denn du hast ja 
dieses tolle Schweißgerät.
Genau das manchen die Arduino Programmierer.
Der letzte Absatz ist nicht unbedingt für Michael bestimmt,  sondern für 
alle die, die geringschätzig auf Arduino herunter schauen.
Sicher steht bei vielen von den ein Auto,  welches sie weder gebaut 
haben noch aus Einzelteilen zusammensetzen könnten.

: Bearbeitet durch User
von Ob S. (Firma: 1984now) (observer)


Lesenswert?

Martin V. schrieb:

> Leider ist
> in VB die serielle Schnittstelle in den zur Zeit verfügbaren Versionen
> nicht mehr vorhanden

Das ist doch kompletter Blödsinn. VB.net hatte bereits in der 
allerersten Version mit .Net 1.1 (VS2003) den SerialPort im 
Lieferumfang. Der steckt schlicht im .Net-Framework selber.

Und daran hat sich bis heute nichts geändert.

von Martin V. (oldmax)


Lesenswert?

Hi

Ob S. schrieb:
> Das ist doch kompletter Blödsinn. VB.net hatte bereits in der
> allerersten Version mit .Net 1.1 (VS2003) den SerialPort im
> Lieferumfang. Der steckt schlicht im .Net-Framework selber.

Ok, danke für den Tip. Ist doch wahnsinnig nett, das so ein Experte 
gleich die ganze Historie einer Programmiersprache parat hat und 
natürlich aufgrund seines umfangreichen Wissens andere Beiträge als 
kompletten Blödsinn bezeichnen kann. Respekt!
Für meine privaten Spielereien habe ich mir Visual Studio 2022 in einen 
neuen Rechner geladen. Wie so oft, auch das falsche Projekt geöffnet, 
eben nur Windows-Forms-App. Da war dann kein SerialPort. Grad 
ausprobiert und kontrolliert. Mit einer Windows-Forms-App (.Net 
Framework) ist SerialPort vorhanden. OK, kann passieren. Das ganze ist 
zwar hier etwas unpassend in dieser Diskussion, aber vielleicht ist auch 
ein anderer darauf reingefallen. Mir hat es nicht geschadet, weil ich 
dann doch mal wieder den Schritt zu Lazarus gegangen bin und damit meine 
Anwendung geschrieben habe.
Gruß oldmax

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
Noch kein Account? Hier anmelden.