Hi Namensvetter!
Vorab: Nur GND ist GND. Dies ist das unabdingbare Referenzpotential einer jeden Schaltung.
Ein Mega-Pin kann das Potential vom GND bekommen, ist aber nicht exakt 0V oder eben GND. Als Eingang kannst du diesen auf GND legen und er wird auch korrekt ausgewertet. Anders sieht es aus, wenn du mit einem Pin, den du als Ausgang definierst. Hier braucht es einen Blick ins Datenblatt, was der Mega spannungstechnisch an diesem Ausgang als LOW-Level einstellt. Der Pin wird nämlich nicht auf GND geschaltet, sondern auf den LOW-Level und das ist eben kein GND-Potential.
Wie bei vielen Dingen hilft hier ein Blick ins Datenblatt, in diesem Falle des Mega.
Das Datenblatt findest du hier:
https://ww1.microchip.com/downloads/en/devicedoc/atmel-2549-8-bit-avr-microcontroller-atmega640-1280-1281-2560-2561_datasheet.pdf
Der LOW-Level-Output eines Mega kann max. 0,4V betragen. Dies reicht für die Auswertung von Logik völlig aus, darf aber in keinem Falle mit GND verwechselt werden (siehe Seite 362, Tabelle 31-7).
Bei deinem L298N, dessen Datenblatt du hier findest
https://www.st.com/resource/en/datasheet/l298.pdf
kannst du auf Seite 2 nachlesen, daß als Eingangsspannung der Bereich von -0,3 bis 7V zulässig ist (Input and Enable Voltage).
Auf Seite 3, bei den Electrical Characteristics, kannst du nachlesen, daß als Eingangsspannung an den Pins 5, 7, 10 und 12 der Bereich von -0,3 bis 1,5V als Input Low Voltage akzeptiert wird. Input High Voltage wird ab 2,3V angenommen.
Als Ergebnis steht da für mich fest, daß du den L298 direkt mit einem Mega-Pin ansteuern kannst, indem du den Mega-Pin einfach als LED-Ausgang definierst und damit IN1 und IN2 des L298 ansteuerst.
In jedem Fall muß aber der GND des Mega mit dem GND des L298 (externe Spannung des L298) verbunden werden, damit ein gemeinsames Bezugspotential vorliegt.
Den 28BYJ-48 mit ULN2003A würde ich eher als zu schwach abtun und nicht benutzen. Der BYJ zieht max. 240mA, der L298 geht bis hinauf zu 3A und ist somit für größere Ströme besser geeignet.
Ebenso ist somit der EN-Pins des L298 durch den Mega bzw. MF steuerbar.
Der L298N ist übrigens doppelt ausgelegt, besteht also aus 2 identischen Hälften. Wenn du nur einen DC-Motor damit steuern möchtest, brauchs du also nur einen halben L298N. Für einen Stepper dann beide Hälften.
@Pizman:
Die EN-Pins sind lediglich dafür da, den Motor zu enablen, also freizugeben, wenn er auf 5V liegt. Liegt EN auf Low-Level geht der Motor in den sog. Free Running Motor Stop und ist somit frei bewegbar. IN1 und IN2 müssen lediglich gegensätzliches Potential haben, um die Drehrichtung zu bestimmen. Ist deren Potential gleich, fliegt nicht der Motor auseinander, sondern läßt ihn schnell stoppen. Schon durchdacht der Chip ;-)
Dann hoffe ich mal, daß alle Fragen beseitigt sind.
Guten Rutsch!