2024-11-05, STM32F769i - Disco - Discovery Board

Ansonsten kommt mein Brot mit dem STM 32 beziehungsweise ARM Kortex mit CM7 morgen nicht heute sicher nicht und übermorgen oder überübermorgen ich könnte mir die Befehle des Boards bereits anschauen also nicht des Boards, aber des Prozessors ich könnte das und es macht keinen Unterschied. Ich tue es trotzdem. Ich tue das erst, wenn ich das Ding in den Händen halt auch, wenn's keinen unterschied macht aber das Bord ist bald da Bord kommt ordentlich wie Backbord, diktierer fehler

Ich habe zwei Ziele wie gesagt, MIPS 32 in VHD L Und minix auf den stm32 Portieren

https://wiki.st.com/stm32mpu/wiki/STM32MP15_Evaluation_boards_-_Starter_Package

https://www.st.com/en/development-tools/stm32cubeide.html

https://wiki.st.com/stm32mpu/nsfr_img_auth.php/8/85/STM32MP15_wayland_terminal.png

https://wiki.st.com/stm32mpu/wiki/OpenSTLinux_distribution?fbclid=IwY2xjawGYIfxleHRuA2FlbQIxMQABHb7kGV8npS_TJnR1sZ_KB_-atJrv-1cmBBQHtO-dX2k1M3iRxn5KgbmFPQ_aem_cnCvdXpB-UELu4ms6bm9pA

https://de.m.wikipedia.org/wiki/Arm_Cortex-M?fbclid=IwY2xjawGYIhxleHRuA2FlbQIxMQABHeRe8AP2_7K7nhN7pJNMoOG3hRYAADqRbUcFjiB2TC4utRxzsKTVd4lMpg_aem_8UnGh3fRV6q2mgzbCuC1wg

https://de.wikipedia.org/wiki/IP-Core?fbclid=IwY2xjawGYIjNleHRuA2FlbQIxMQABHQP4VQgDyj4s-u3qmAILcSom96cXAmqtQwMJut87JdfDobYWvqbWVJZQXQ_aem__9xKx_QMg6Fopj4-gKCkUw

Okay, von wegen soft Cores und co, gibt es viel zu lernen. Ich hab mir das richtige Ding gekauft.

Mikrocontroller an:


Infineon: XMC1000 Familie
nuvoTon: NuMicro-Familie
NXP: LPC11xx- und LPC12xx-Familien
STMicroelectronics: STM32-F0-Familie
Toshiba: TX00-Familie
Ist schon deutlich weiter

https://www.st.com/resource/en/datasheet/stm32h753vi.pdf das muss in den kopf rein

das muss man glaube ich genau lernen und inspiriert mich auch den Atmeg8 vom DataSheet her zu lernen.

genauso wie das

https://de.wikipedia.org/wiki/Arm_Cortex-M

genauso wie thumb Befehlssatz

https://de.wikipedia.org/wiki/Arm-Architektur

https://tams.informatik.uni-hamburg.de/lehre/2001ss/proseminar/mikroprozessoren/vortraege/05-arm/ausarbeitung.pdf

... mit Computersysteme I/II geht das gleich viel besser

Das nennt man echte datenabhängigkeit und stalling:

Problematisch an Pipelines sind aber Situationen wo ein Befehl ein Resultat eines vorherigen Befehls benötigt, wenn dieses Resultat noch nicht im Speicher ist. Bei solchen Situationen muss die Ausführung eines Befehls so lange angehalten werden, bis das gesuchte Resultat vorliegt

https://de.wikipedia.org/wiki/Framework?fbclid=IwY2xjawGYIuNleHRuA2FlbQIxMQABHYcd9ZLcMNlpiRaAUVszHVGSII62MONsgxQzWLXBwO_GoYw8jkahZY60Fw_aem_8IXQgwuHBSIhDFVoVb5S5A

sie haben recht ich sollte weiter mehr MIPS32 - Assembler Code üben, im Kurstext ist genug.

Fast alle derzeitigen Smartphones und Tabletcomputer haben lizenzierte ARM-Prozessoren, darunter das iPhone und die meisten Android-Geräte.

Hier das ist auch gut, sogar neu, der Vorgänger jeder ARM architektur wenigstens in der Geschichte - ein 6502

https://www.reichelt.de/8-bit-65x-mikroprozessor-14-mhz-1-8-5-25-v-pdip-40-w65c02s6tpg-14-p319384.html?PROVID=2788&gad_source=1&gclid=Cj0KCQiA_qG5BhDTARIsAA0UHSLRE0GlxdW2alJWBvji7df8HsjoxOCApfl16pDmiZraJRn0WeFaZt0aAhRiEALw_wcB

ich habe bisher das


    Allwinner
    AMCC
    AMD
    Ampere Computing
    Analog Devices
    Annapurna Labs
    Apple
    Atmel
    Broadcom
    Cirrus Logic
    Conexant
    Cypress
    Dialog Semiconductor
    Freescale (ehemals Motorola)
    Fujitsu Microelectronics Europe
    Globalfoundries
    Google (Tensor)
    Palm
    HP
    HiSilicon
    HTC Corporation
    IBM
    Infineon (XMC4000 32-bit MCU Familie) und XMC1000
    Intel (XScale)
    Luminary Micro
    Marvell Technology Group
    MediaTek
    Microsemi (ehemals Actel)
    Microsoft
    Motorola
    NEC
    NetSilicon
    Nintendo
    Nokia
    Nordic Semiconductor
    Nuvoton
    Nvidia (Tegra)
    NXP (ehemals Philips Semiconductors)
    Oki
    Qualcomm (Snapdragon)
    Renesas
    Samsung (Exynos)
    Siemens
    Silicon Labs (ehemals Energy Micro)
    Sony
    STMicroelectronics
    TDK-Micronas
    Texas Instruments (OMAP)
    Toshiba
    VIA Technologies
    Xilinx
    Zilog

ARM-Architektur
    1983
    vom britischen Computerunternehmen Acorn

Am 25. Juli 1961 gr"undete Clive Sinclair das auf Entwurf und Herstellung elektronischer Ger"ate spezialisierte Unternehmen Sinclair Radionics.

ARM-Architektur
    1983
    vom britischen Computerunternehmen Acorn
    25. Juli 1961
    Clive Sinclair
    Sinclair Radionics.
    Acorn
    1980er- und 1990er-Jahren
    Gr"undung  1978
    Aufl"osung  2015
    Cambridge,  Vereinigtes K"onigreich
    5. Dezember 1978 Chris Curry und Hermann Hauser
    Cambridge Processor Unit Ltd (CPU),
    Andy Hopper Orbis Ltd,
    Sophie Wilson

 Acorn System 1 genannte Acorn-Mikrocomputer

    Sinclair ZX80.
    Acorn Atom

    britische Department of Education and Science (DES)

CPU
    6502
    6502

    System-1
    System-2
    System-3
    System-4
    System-5

Der MOS Technology 6502 ist ein 8-Bit-Mikroprozessor vom Unternehmen MOS Technology, der 1975[1] zun"achst im Keramikgeh"ause als MOS MCS 6502[2] auf den Markt kam.

https://www.reichelt.de/8-bit-65x-mikroprozessor-14-mhz-1-8-5-25-v-pdip-40-w65c02s6tpg-14-p319384.html?PROVID=2788&gad_source=1&gclid=Cj0KCQiA_qG5BhDTARIsAA0UHSLRE0GlxdW2alJWBvji7df8HsjoxOCApfl16pDmiZraJRn0WeFaZt0aAhRiEALw_wcB

Das Design des 6502 wurde an das des 8-Bit-Prozessors Motorola 6800 angelehnt (

Die Befehlss"atze von 6502 und MC6800 sind sich "ahnlich,

BBC Micro

Der BBC Micro und der Electron

Die Acorn Computer Group AG
65816-Prozessor

Berkeley-RISC-Projekt

Das Acorn-RISC-Machine-Projek
Im Besitz von Olivetti
 BBC Master

beispielsweise den Master 512 mit 512 kB Hauptspeicher und einem internen 80186-Prozessor f"ur MS-DOS-Kompatibilit"at,

Der erste kommerzielle Einsatz der Arm-Architektur war das ARM Development System

Der Desktop-Computer Acorn Archimedes erschien Mitte 1987,

ARM Limited

Der sehr stromsparende RISC-Processor ARM (fr"uher Acorn Risc Machine, jetzt Advanced Risc Machine)

ARM2, Strong-ARM und Cortex-A8.

Seit 2005 wurden in zahlreichen PDAs, Mobiltelefonmodellen, Navigationssystemen und Smartphones ARM-Varianten eingesetzt: Sharp Zaurus, Psion Series 5, PalmTreo 600/650 oder die Handheld-Konsole GP2X.

Seit dem Jahr 2010 sind in den meisten Smartphones ARM-CPUs eingebaut.

. Aktuelle ARM-Prozessoren besitzen mehrere verschiedene Kerne (P und E) und werden von diversen Firmen hergestellt (Samsung, Qualcomm (Snapdragon), Apple (M1, M1max))

Heimcomputer

    Acorn Atom
    Acorn Archimedes
    Acorn Electron
    Risc PC

Betriebssysteme

    Arthur
    RISC OS
    RISCix

ARM stand f"ur Acorn RISC Machines,[1] sp"ater f"ur Advanced RISC Machines

Das Unternehmen ARM Limited stellt keine eigenen ICs her, sondern vergibt unterschiedliche Lizenzen an Halbleiter-Entwicklungsunternehmen und Halbleiterhersteller.

 IP-Cores
Funktionsbl"ocken wie CPU-Kerne der Arm-Cortex-A-Reihe,
GPU-Einheiten wie Mali
oder Bussystemen wie AMBA,
die dann zu eigenen System-on-a-Chip-Bausteinen konfiguriert werden.

haben lizenzierte ARM-Prozessoren,
    darunter das iPhone und die meisten Android-Ger"ate.

 Die ersten ARM-Prozessoren (ARMv1) aus dem Jahr 1985 hatten eine 32-Bit-Architektur (ARM32),
 etwa 2013 erschienen dann Prozessoren mit 64-Bit-Architektur (Armv8-Serie, ARM64).

Die ersten 64-Bit-Systeme waren der X-Gene der Firma Applied Micro Circuits Corporation im Juni 2013[3] und im September 2013 der A7 im iPhone 5s.[4]

Taktfrequenz von 4 MHz.
ARM2 1989 zum ARM3 (mit Cache und h"oherer Taktfrequenz)

 gr"undete Acorn im Jahre 1990 zusammen mit Apple und VLSI Technology das Unternehmen Advanced RISC Machines Ltd. mit Sitz in Gro"sbritannien, das sp"ater in ARM Ltd. umbenannt wurde.

StrongARM bekannte Mikrocontroller.
Der StrongARM verf"ugt "uber einen ARMv4-Kern

Die ARM-CPU ist eine RISC-Architektur und kennt als solche drei Kategorien von Befehlen:
    Befehle zum Zugriff auf den Speicher (Load/Store),
    arithmetische oder logische Befehle f"ur Werte in Registern,
    Befehle zum "Andern des Programmflusses (Spr"unge, Unterprogrammaufrufe).

Die ARM verwendet einen Drei-Adress-Code-Befehlssatz, alle arithmetisch-logischen Befehle akzeptieren also ein Zielregister und zwei Operandenregister.

ADD  r0, r1, r2   ;r0 := r1 + r2

Die ARM ist sowohl Little-Endian- als auch Big-Endian-kompatibel,

Daten und Code (BE32)
    ARMv4
    ARMv5
    ARMv6

Nur Daten (BE8)
    ARMv6
    ARMv7
    ARMv8

Registersatz

13 Universal-Register zur Verf"ugung r0...r12
Drei zus"atzliche Register r13...r15 sind wie Universal-Register adressierbar,

Diese sind ein Stackpointer r13,
ein Link-Register r14, das die R"ucksprungadresse bei Prozeduraufrufen (mit BL branch with link) enth"alt, die sp"ater zur"uck in den Programmz"ahler geschrieben wird,
sowie der Programmz"ahler (Program-Counter, PC) selbst r15

Status-Register (CPSR, Current-Program-Status-Register),

Ausf"uhrungsmodi

    User-Mode: normaler User-Code
    Supervisor-Mode (SVC): privilegierte Betriebssystem-Tasks, Eintritt z. B. durch Aufruf eines Software-Interrupts (SWI)
    Hypervisor-Mode (HYP): privilegierte Tasks zur Erf"ullung von Hypervisor-Funktionen[9]
    Interrupt-Mode (IRQ): Eintritt durch Auftreten eines "au"seren Interrupt-Requests w"ahrend der Befehlsverarbeitung
    Fast-Interrupt-Mode (FIQ): Eintritt durch Auftreten eines "au"seren Fast-Interrupt-Requests. Fast-Interrupts werden meist nur f"ur besonders zeitkritische Ereignisse benutzt (siehe Echtzeitsysteme).
    Memory-Abort (ABT): tritt auf, wenn eine Datenanforderung nicht erf"ullt werden kann.
    Undefined-Instruction-Exception (UND): Eintritt durch Auftreten einer unbekannten Instruktion. Wird z. B. zur Emulation eines Gleitkomma-Coprozessors verwendet.

Befehlsbreite und Adressierungsarten

Load/Store-Befehl des ARM

S"amtliche Befehle im ARM-Befehlssatz sind 32 Bit lang

Der (relative) Sprungbefehl enth"alt einen 24-Bit-Offset,

Praktisch alle Befehle k"onnen bedingt ausgef"uhrt werden (conditional execution).

CMP    r0, r1            ;(setzt Bedingungsbits)            ; "CMP" bedeutet:   "CoMPare"
ADDGE  r2, r2, r3        ;if r0 >= r1 then r2 := r2 + r3    ; "ADDGE" bedeutet: "ADD if Greater or Equal"
ADDLT  r2, r2, r4        ;            else r2 := r2 + r4    ; "ADDLT" bedeutet: "ADD if Less Than"

Der Bedingungs-Code 1111 stand zu Beginn f"ur die Condition NV (never),

PLD und BLX

Dies wird durch das Suffix S im Assemblercod: Wahlweise k"onnen die Statusbits als Folge des Befehls aktualisiert werden.

CMP    r0, r1            ;(setzt Bedingungsbits)
ADDGES r2, r4, r5        ;if r0 >= r1 then r2 := r4 + r5
BCS    overflow          ;verzweige bei "Uberlauf der Addition

Thumb-Befehlssatz

Um die Code-Dichte zu erh"ohen, also den Speicherbedarf f"ur eine bestimmte Funktion zu verringern,

30 bis 40 Prozent reduziert. A

Mit ARMv6 wurde der Thumb-Befehlssatz auf 32-Bit-Code erweitert und Thumb-2 genannt

Multi-Kern CPUs
Big.LITTLE-Konzept

DynamIQ

    Cortex A steht f"ur Application (betriebssystembasierte Anwendungen),
    Cortex M steht f"ur Microcontroller (Cores f"ur Mikrocontroller), und
    Cortex R steht f"ur Realtime (Echtzeitanwendungen).

Der Buchstabe A steht f"ur die Bezeichnung englisch Application
 Der Buchstabe M steht f"ur die Bezeichnung englisch Microcontroller (dt. Mikrocontrolleranwendungen).
 Der Buchstabe R steht f"ur die Bezeichnung englisch Realtime (dt. Echtzeitsystem).

STM32H753xI
high-performance Arm(R)Cortex(R)-M7 32-bit RISC core operating at up to 480 MHz.
The Cortex(R)-M7 core features a floating point unit (FPU) which supports Arm(R)double-precision (IEEE 754 compliant)

DSP instructions and a memory protection unit (MPU)

dual-bank flash memory of 2 Mbytes, up to 1 Mbyte of RAM
192 Kbytes of TCM RAM,
864 Kbytes of user SRAM and 4 Kbytes of backup SRAM)

 APB buses, AHB buses,

All the devices offer three ADCs, two DACs,

Standard peripherals

- Four I2Cs
- Four USARTs, four UARTs and one LPUART
- Six SPIs, three I2Ss in Half-duplex mode. To achieve audio class accuracy, the
I2S peripherals can be clocked by a dedicated internal audio PLL or by an external
clock to allow synchronization.
- Four SAI serial audio interfaces
- One SPDIFRX interface
- One SWPMI (Single Wire Protocol Master Interface)
- Management Data Input/Output (MDIO) slaves
- Two SDMMC interfaces
- A USB OTG full-speed and a USB OTG high-speed interface with full-speed
capability (with the ULPI)
- One FDCAN plus one TT-FDCAN interface
- An Ethernet interface
- Chrom-ART Accelerator
- HDMI-CEC


Advanced peripherals including
- A flexible memory control (FMC) interface
- A Quad-SPI flash memory interface
- A camera interface for CMOS sensors
- An LCD-TFT display controller
- A JPEG hardware compressor/decompresso

Mobile applications, Internet of Things
o Wearable devices: smart watches.

SRAM in Kbytes
TCM RAM in Kbytes
Backup SRAM (Kbytes)
FMC
GPIOs
Quad-SPI interfaces
Ethernet
Timers
Wakeup pins, Tamper pins
Random number generator
Cryptographic accelerator

SRAM in Kbytes
    SRAM mapped onto AXI bus
    SRAM1 (D2 domain)
    SRAM2 (D2 domain)
    SRAM3 (D2 domain)
    SRAM4 (D3 domain)
TCM RAM in Kbytes
    ITCM RAM (instruction)
    DTCM RAM (data)
Backup SRAM (Kbytes)
FMC
GPIOs
Quad-SPI interfaces
Ethernet
Timers
Wakeup pins, Tamper pins
Random number generator
Cryptographic accelerator

SPI / I2S
I2C
USART/UART/LPUART
SAI
SPDIFRX
SWPMI
MDIO
SDMMC
FDCAN/TT-FDCAN
USB OTG_FS
OTG_HS

Arm(R)Cortex(R)-M7 with FPU

Six-stage dual-issue pipeline
Dynamic branch prediction

das ist ok, ich lerne ARM Cortex M7 auswendig - das ist kein Problem.

das fand ich an computersystemen i/ii gut, dass man genau lernt, was 5 stufiges Pipelining ist und zwar - 100 pro

 - IF - ID - EX - MEM - WB
und nicht irgendetwas. Und branch Prediction, Predict Taken/Predict Not Taken und ich finde am ARM Cortex M7 interessant, dass es bedingte Befehle gibt

ADDGE ...
das ist gut

https://www.hs-osnabrueck.de/fileadmin/HSOS/Forschung/Recherche/Laboreinrichtungen_und_Versuchsbetriebe/Labor_fuer_Digital_und_Mikroprozessortechnik/Buch/Arm-CortexM0-Befehlsuebersicht.pdf

Hier ist zum Beispiel ein Befehlssatz. Aber das ist grössten teils 2 - Addressbefehle, da stimmt was nicht

Ich würde das hier nehmen

http://www.heenes.de/ro/material/arm_referenz/ARM-Referenz.pdf

https://iitd-plos.github.io/col718/ref/arm-instructionset.pdf

...

https://www.mikrocontroller.net/articles/ARM_Cortex_Mikrocontroller

Image mips32

So

Image IMG_4512

Image IMG_4513

... und so

Image IMG_4514

Image IMG_4515

Image IMG_4516

Image IMG_4517

Naja, dafür reicht schon mal ein weißes Display. Besser, als es noch vorher war.

Image IMG_4518

Image IMG_4519

Naja, dafür reicht schon mal ein weißes Display. Besser, als es noch vorher war.

Image IMG_4520

Image IMG_4521

Image IMG_4522

Image IMG_4523

Image IMG_4524

Image IMG_4525

Ich habe es das ist nicht das Linux das lade ich gerade runter das probiere ich dann aus. Das ist ein Touchscreen Beispiel also ein Touchscreen Demonstration was ich gerade hatte deswegen zeigt es nur das an da kann man auch rum Touch anzeigt was anderes an aber ich lad grad hab jetzt das linux runtergeladen und probier es zu installieren.

https://sourceforge.net/projects/uclinux/files/uClinux%20Stable/dist-20080808/uClinux-dist-20080808.tar.bz2/downlod\end{lstlisting}

Bin mit ihm uclinuc weiter ich benutze das von embed irgendwas da ist der Bootlader dabei und der Kernel leider wei"s ich bis jetzt noch nicht. Ich konnte das richtig unterbringen. Ich wei"s aber nicht, wie ich das auf das uart umstellen. Auf die serielle, weil ich kann sonst nicht der kann das zwar programmieren aber ich kann das sonst nicht in die Konsole von dem Bootlader rein, damit ich den Kernel  dann aus dem Netz nehmen kann es macht das Ding selber "uber die Netzwerk Schnittstelle. Es geht wenn man den dann an die Adresse aber ich komm ich kann den serielle nicht aktivieren. Ich muss das umlegen. Das muss "uber das selbe USB aber aber ich muss da irgendwas umstellen. Ich wei"s noch nicht was

? dann kann ich mich mit dem normalen PC in den Bootloader einloggen kann dann den Befehl geben das runterzuladen das geht nicht anders. Aber wenn ich die Konsole in den PC f"ur die serielle Aufrufe, dann findet er keine Verbindung weil eben, da irgendwas nicht richtig verbunden ist da muss man irgendwas umschalten

Dann h"atte man auf dem Bildschirm auf dem Display ein ganz gutes Linux

Dass das andere Display sowas von sich gegeben hat das ist schon mal gut da m"ussen Sie nicht "uber l"astern, weil wenn man das Ding einschaltet. Da ist nichts vor installiert. Das war nicht vorinstalliert was da wei"s es kam das war nicht vor installiert. Da war gar nix vor installiert. Der Bildschirm war schwarz und ich hatte schon Angst, dass nichts geht konnte ich wenigstens das installieren, dass es drauf war da hab ich gelernt wie ich dieses Ding flashe das geht schon mal. Das funktioniert alles. Ich konnte auch den bootloader rein flashen nur kommunizierte dann eben nicht

Was ich machen kann an dem Bord sind ja trotz allem Daten Pins und ich kann ja trotz allem ganz normalen Arm Assembler schreiben und an die Pins kann ich LEDs anbringen. Dann kann ich ja vielleicht einfach mal ein Programm schreiben und damit flashen was meine LEDs hoch z"ahlt

Ach, jetzt versteh ich's doch jetzt versteh ich's doch, wo die von dem uart  sind
Seite 26, pin 0 und pin 1
Mach jetzt doch noch weiter ich starte den PC. Ich hab ja Buchsen f"ur rs232, also sub d  9 Stecker und Boxen da kann ich das reinmachen. Ich probier es mal aus au"ser den probier ich aus mit arm Assembler an den Daten Pins LED zu steuern
Wissen Sie, das war einfach ein bisschen erm"udend, das ganze Zeug "uberhaupt zu finden. Ich musste ja auch erst mal im Netz das richtige finden. Verstehen Sie das ist der Unterschied ich musste erst mal das richtige finden.
Ist halt auch noch die Frage, ob ich da ein Max 232 rein schalten muss weil er RxD und TxD kann genauso gut mit 5 V laufen, statt -12 V und +12 V\\\\

\href{https://emcraft.com/stm32f769i-discovery-board/connecting-serial-console-to-stm32f7disco}{https://emcraft.com/stm32f769i-discovery-board/connecting-serial-console-to-stm32f7disco}

Gucken sie mal, was hier steht\\\\

Anschlie"sen der seriellen Konsole an den STM32F7 Discovery Print \\\\



F"ur die Ausf"uhrung von Linux (uClinux) auf dem STM32F7 ist eine serielle Konsole erforderlich. U-Boot und Linux nutzen die serielle Konsole, um Nachrichten zu drucken und eine interaktive Benutzeroberfl"ache bereitzustellen. Ohne Zugriff auf die serielle Konsole k"onnen Sie nicht viel tun.\\\\

Sowohl U-Boot als auch Linux sind f"ur die Verwendung von USART6 f"ur die serielle Konsole auf dem STM32F7 Discovery konfiguriert.\\\\

Beim STM32F7 Discovery ist die USART6-Schnittstelle auf UART-Ebene an den Arduino-Anschl"ussen verf"ugbar. Um die serielle Konsole an einen PC anzuschlie"sen, m"ussen Sie die UART-Schnittstelle entweder auf eine RS-232-Schnittstelle oder auf eine USB-Schnittstelle umstellen. Dazu ist der Anschluss eines externen Ger"ats (Dongle) an den STM32F7 Discovery erforderlich. Es gibt verschiedene solcher Ger"ate auf dem Markt. Ein spezielles Ger"at, das wir (unter anderem) verwendet haben, ist das WaveShare FT232 USB UART-Board:\\\\

Das ist n"amlich gar nicht so einfach m"oglich, daf"ur braucht man ein extra ger"at - eben dem MAX232 Prinzip sage ich mal -12V/+12V und nicht einfach 0V/5V, das ist n"amlich auf RxD TxD und wenn man das nicht weiss, dann macht man das Ding kaputt

Anschlie"sen der seriellen Konsole an den STM32F7 Discovery Print\\\\



F"ur die Ausf"uhrung von Linux (uClinux) auf dem STM32F7 ist eine serielle Konsole erforderlich. U-Boot und Linux nutzen die serielle Konsole, um Nachrichten zu drucken und eine interaktive Benutzeroberfl"ache bereitzustellen. Ohne Zugriff auf die serielle Konsole k"onnen Sie nicht viel tun.\\\\

Sowohl U-Boot als auch Linux sind f"ur die Verwendung von USART6 f"ur die serielle Konsole auf dem STM32F7 Discovery konfiguriert.\\\\

Beim STM32F7 Discovery ist die USART6-Schnittstelle auf UART-Ebene an den Arduino-Anschl"ussen verf"ugbar. Um die serielle Konsole an einen PC anzuschlie"sen, m"ussen Sie die UART-Schnittstelle entweder auf eine RS-232-Schnittstelle oder auf eine USB-Schnittstelle umstellen. Dazu ist der Anschluss eines externen Ger"ats (Dongle) an den STM32F7 Discovery erforderlich. Es gibt verschiedene solcher Ger"ate auf dem Markt. Ein spezielles Ger"at, das wir (unter anderem) verwendet haben, ist das WaveShare FT232 USB UART-Board:\\\\

WaveShare FT232 USB UART-Board:\\\\
braucht man - MAX232 - FT232\\\\

\href{https://www.reichelt.de/index.html?ACTION=446&LA=0&nbc=1&q=ft232}{https://www.reichelt.de/index.html?ACTION=446&LA=0&nbc=1&q=ft232}\\\\

was ich nat"urlich machen kann, meinen eigenen MAX232 - nehmen und dran bauen, dazu habe ich heute abend keine Lust - oder ich nehme USB - es geht mit 5V, aber damit kenne ich mich nicht aus - aber vielleicht heute abend, ob es bei USB RxD und TxD gibt?\\\\

Nein,
Der USB "ubertr"agt die Daten bit-seriell, das hei"st die einzelnen Bits werden nacheinander "ubertragen. Die "Ubertragung erfolgt differenziell "uber ein symmetrisches[Anm 1] Adernpaar: liegt auf der ersten Ader der High-Pegel an, so liegt auf der zweiten der Low-Pegel an und umgekehrt. Der Signalempf"anger wertet an einem Terminierungswiderstand die Differenzspannung aus. Aus deren Vorzeichen ergeben sich die beiden logischen Zust"ande Null oder Eins.\\\\
Das kann man so nicht machen.\\\\

wenn bei USB das eine auf 1 ist, ist das andere auf 0, da braucht man was spezielleres.\\\\

aber, was vielleicht m"oglich w"are, w"are
\begin{lstlisting}
ULPI_D5/USB_FS2_ID
Aber das führt mir jetzt zu weit. Ich probiere wieder was anderes - das was ich wollte, das Ding flashen und ein Assembler Programm drauf machen, was mir auf den Daten, die LED's hoch zähl Hier ist zum Beispiel ein Assembler Programm https://gist.github.com/BobBurns/bb601d3432650073a8b4

Und hier ein C Programm http://stefanfrings.de/stm32/stm32f1.html

aber ich suche ja Assembler https://gist.github.com/BobBurns/bb601d3432650073a8b4

Warte mal da fällt mir auf

Der Virtual COM port - nur das nutzt mir nichts, weil ich nicht weiss, wie ich bei dem Bootloader den COM Port auf den virtual COM Port umleite

Das wird aber gerade nicht mein Thema sein


5.15 Virtual COM port
The serial interface USART1 is directly available as a virtual COM port of the PC, connected
to the ST-LINK/V2-1 USB connector (CN16). The Virtual COM port settings are configured
with 115200 b/s, 8 bits data, no parity, one stop bit, and no flow control.


39 SPDIF_I2S PD11 40 I2C1_SDA PB7

...

lets try to blink an LED on the discovery stm32 L1 board
@       uses LED on PB7


ot@work:/home/david# apt search assembler | grep arm

WARNING: apt does not have a stable CLI interface. Use with caution in scripts.

binutils-arm-linux-gnueabi/stable 2.40-2 amd64
  GNU binary utilities, for arm-linux-gnueabi target
binutils-arm-linux-gnueabihf/stable 2.40-2 amd64
  GNU binary utilities, for arm-linux-gnueabihf target
binutils-arm-none-eabi/stable 2.40-2+18+b1 amd64
root@work:/home/david#


Paket: binutils-arm-none-eabi (2.43.1-5+23 und andere)
Links f"ur binutils-arm-none-eabi
Screenshot
Debian-Ressourcen:

    Fehlerberichte
    Entwicklerinformationen
    Debian-Changelog
    Copyright-Datei

Quellcode-Paket binutils-arm-none-eabi herunterladen:

    [binutils-arm-none-eabi_23.dsc]
    [binutils-arm-none-eabi_23.tar.xz]

Betreuer:

    Joaquin de Andres (QS-Seite)
    Agustin Henze (QS-Seite)
    Keith Packard (QS-Seite)
    Thomas Preud'homme (QS-Seite)

Externe Ressourcen:

    Homepage [sourceware.org]

"Ahnliche Pakete:

    binutils-riscv64-unknown-elf
    gcc-arm-none-eabi-source
    gcc-arm-none-eabi
    binutils-xtensa-lx106
    libstdc++-arm-none-eabi-dev
    binutils-for-build
    binutils-for-host
    libstdc++-arm-none-eabi-newlib
    libstdc++-arm-none-eabi-picolibc
    binutils
    libnewlib-arm-none-eabi

GNU assembler, linker and binary utilities for ARM Cortex-R/M processors

Bare metal binutils for embedded ARM chips using Cortex-M0/M0+/M3/M4 and Cortex-R4/R5/R7 processors. The programs in this package are used to manipulate binary and object files that may have been created for Cortex architecture.

https://github.com/antongus/stm32-ld-scripts/blob/master/stm32.ld

so, ich musste bei meiner mutter erst aufräumen helfen, ich tue die Ergebnisse von gestern und was das STM32 - betrifft erst auf meine homepage STM32F769i Discovery