LINKS: Unterschied zwischen den Versionen

Aus C und Assembler mit Raspberry
Die Seite wurde neu angelegt: „== Dokumentation für den Raspberry Pi == === Raspberry Pi auf elinux.org === https://elinux.org/RPi_Hub === Peripherie Unterlagen === https://www.raspberrypi.org/documentation/hardware/raspberrypi/README.md ==== Raspberry Pi 1 Models A, A+, B, B+, Raspberry Pi Zero, Raspberry Pi Zero W, und Raspberry Pi Compute Module 1 ==== * BCM2835 ARM Peripherals: https://datasheets.raspberrypi.com/bcm2835/bcm2835-peripherals.pdf<sup>1</sup> * VideoCore® IV 3D, Ar…“
 
 
(4 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 31: Zeile 31:
* Arm Cortex-A72: https://developer.arm.com/Processors/Cortex-A72  
* Arm Cortex-A72: https://developer.arm.com/Processors/Cortex-A72  


==== Raspberry Pi 5 ====
* rp1-peripherals: https://datasheets.raspberrypi.com/rp1/rp1-peripherals.pdf
----
<sup>1</sup> Information aus: https://www.raspberrypi.org/documentation/hardware/raspberrypi/README.md
<sup>1</sup> Information aus: https://www.raspberrypi.org/documentation/hardware/raspberrypi/README.md
----
== Forum ==
Raspberry Pi Forum: https://www.raspberrypi.org/forums/
== Bare Metal Projekte ==
{| class="wikitable"
|+ Bare Metal Projekte
|-
! Name !! RPI !! Programmiersprache !! Inhalt !! Link !! Aktuell
|-
| Writing a "bare metal" operating system for Raspberry Pi 4 || Pi4 || C (ARMv8) || UART, Grafik, Bluetooth, Sound, Multicore, Interrupts, SPI Ethernet, TCPIP Webserver|| https://www.rpi4os.com/ or https://github.com/isometimes/rpi4-osdev<nowiki/>|| ca. 7 Monate
|-
| Bare Metal Programming on Raspberry Pi 3 || Pi3 || C (ARMv8) || Multicore, UART1, Mailbox, UART0, Zufallszahlen, Timer, PowerOff, Grafik, Diskfunktionen, Memory  || https://github.com/bztsrc/raspi3-tutorial || 1 Jahr
|-
| Circle || Pi0-5 || C++ || Multicore, Interrupt (IRQ, FIQ), UART, GPIO, Timer, DMA, PWM, HDMI-Ton, WLAN, Ethernet, USB (HUB, HID, Speichergeräte, MIDI, Drucker), FAT, FatFs, Grafik || https://github.com/rsta2/circle || 1 Monat
|-
| Ultibo || Pi0-4 || Free Pascal || Multicore, Interrupt (IRQ, FIQ), UART, GPIO, Timer, DMA, PWM, HDMI-Ton, WLAN, Ethernet, USB (HUB, HID, Speichergeräte, MIDI, Drucker), FAT, FatFs, Grafik || https://ultibo.org/ || ca. 1 Monat
|-
| Raspberry-Pi Bare Metal Tutorial || Pi0-4 || C || C Runtime, Interrupts, UART, Mailbox, Grafik || https://www.valvers.com/open-software/raspberry-pi/bare-metal-programming-in-c-part-1/ || ca. 4 Jahre
|-
| USPi - A bare metal USB driver for Raspberry Pi 1-3 written in C || Pi0-3 || C || Circle in C || https://github.com/rsta2/uspi || ca. 10 Monate
|-
| dwelch67 || Pi0-3 || C || Float, Bootloader, MMU, SPI, UART, VIDEO, ZLIB || https://github.com/dwelch67/raspberrypi || ca. 6 Jahre
|-
| ... || Pi1 || Assembler ||  || https://www.cl.cam.ac.uk/projects/raspberrypi/tutorials/os/index.html || ca. 12 Jahre
|-
| Learning operating system development using Linux kernel and Raspberry Pi || Pi3 || C || Printf, Interrupt, Memory </br> Vergleicht Bare Metal und Linux || https://github.com/s-matyukevich/raspberry-pi-os || 3 Jahre
|-
|PeterLemon RaspberryPi
|Pi1-3
|Assembler
|
|https://github.com/PeterLemon/RaspberryPi
|3 Jahre
|-
|pi-baremetal
|Pi1
|C
|
|https://github.com/brianwiddas/pi-baremetal
|12 Jahre
|-
|Raspberry Pi Bare Bones
|Pi1-4
|C
|QEMU
|http://wiki.osdev.org/Raspberry_Pi_Bare_Bones
|ca. 1,5 Jahre
|-
|circle-stdlib
|Pi1-4
|C++
|Circle StdLib
|https://github.com/smuehlst/circle-stdlib
|3 Monate
|-
|sean-lawless / computersystems
|Pi1-4
|C
|
|https://github.com/sean-lawless/computersystems/tree/master
|Aktuell
|-
|macoy rpi-system
|Pi4
|C
|Circle in C (nur RPI4)
|https://macoy.me/code/macoy/rpi-system
|Aktuell
|}
Stand Januar 2024
== Nützliche Links ==
{| class="wikitable"
|+ Nützliche Links
|-
! Name !! Inhalt !! Link
|-
| Introduction to Computer Organization: ARM Assembly Language Using the Raspberry Pi || ARM-Assembler || https://bob.cs.sonoma.edu/IntroCompOrg-RPi/intro-co-rpi.html
|-
| Arm GNU Toolchain Downloads || Toolchain || https://developer.arm.com/downloads/-/arm-gnu-toolchain-downloads
|-
| ARM assembler in Raspberry Pi || ARM-Assembler || https://thinkingeek.com/arm-assembler-raspberry-pi/
|-
| A Guide to ARM64 / AArch64 Assembly on Linux with Shellcodes and Cryptography || ARM-Assembler || https://modexp.wordpress.com/2018/10/30/arm64-assembly/
|-
| Découvrir l'assembleur ARM sur Raspberry Pi || ARM-Assembler || https://assembleurarmpi.blogspot.com/ or https://github.com/vincentARM/ARMassembly64
|-
|ARMv8 A64 Quick Reference
|ARM-Assembler
|https://courses.cs.washington.edu/courses/cse469/18wi/Materials/arm64.pdf
|-
|ARMv8 Instruction Set Overview
|ARM-Assembler
|https://www.cs.princeton.edu/courses/archive/fall23/cos217/reading/ArmInstructionSetOverview.pdf
|-
|A64 Systemaufrufe
|ARM-Assembler
|https://arm64.syscall.sh/
|-
|
|
|https://s-matyukevich.github.io/raspberry-pi-os/
|}
== Andere, nicht zugeordnet ==
Raspberry Pi DMA programming in C https://iosoft.blog/2020/05/25/raspberry-pi-dma-programming/
Mailbox property interface https://github.com/raspberrypi/firmware/wiki/Mailbox-property-interface

Aktuelle Version vom 28. November 2024, 20:19 Uhr

Dokumentation für den Raspberry Pi

Raspberry Pi auf elinux.org

https://elinux.org/RPi_Hub

Peripherie Unterlagen

https://www.raspberrypi.org/documentation/hardware/raspberrypi/README.md

Raspberry Pi 1 Models A, A+, B, B+, Raspberry Pi Zero, Raspberry Pi Zero W, und Raspberry Pi Compute Module 1

Raspberry Pi 2 Model B

Raspberry Pi 3 Model B, spätere Raspberry Pi 2 Model B und Raspberry Pi Compute Module 3

BCM2837 ist identisch wie BCM28361

Raspberry Pi 3 Models A+, B+ und Raspberry Pi Compute Module 3+

BCM2837B0 ist identisch wie BCM2837, Änderung der internen Frequenzen.1

Raspberry Pi 4 Model B, the Raspberry Pi 400, and the Raspberry Pi Compute Module 4

Raspberry Pi 5


1 Information aus: https://www.raspberrypi.org/documentation/hardware/raspberrypi/README.md


Forum

Raspberry Pi Forum: https://www.raspberrypi.org/forums/

Bare Metal Projekte

Bare Metal Projekte
Name RPI Programmiersprache Inhalt Link Aktuell
Writing a "bare metal" operating system for Raspberry Pi 4 Pi4 C (ARMv8) UART, Grafik, Bluetooth, Sound, Multicore, Interrupts, SPI Ethernet, TCPIP Webserver https://www.rpi4os.com/ or https://github.com/isometimes/rpi4-osdev ca. 7 Monate
Bare Metal Programming on Raspberry Pi 3 Pi3 C (ARMv8) Multicore, UART1, Mailbox, UART0, Zufallszahlen, Timer, PowerOff, Grafik, Diskfunktionen, Memory https://github.com/bztsrc/raspi3-tutorial 1 Jahr
Circle Pi0-5 C++ Multicore, Interrupt (IRQ, FIQ), UART, GPIO, Timer, DMA, PWM, HDMI-Ton, WLAN, Ethernet, USB (HUB, HID, Speichergeräte, MIDI, Drucker), FAT, FatFs, Grafik https://github.com/rsta2/circle 1 Monat
Ultibo Pi0-4 Free Pascal Multicore, Interrupt (IRQ, FIQ), UART, GPIO, Timer, DMA, PWM, HDMI-Ton, WLAN, Ethernet, USB (HUB, HID, Speichergeräte, MIDI, Drucker), FAT, FatFs, Grafik https://ultibo.org/ ca. 1 Monat
Raspberry-Pi Bare Metal Tutorial Pi0-4 C C Runtime, Interrupts, UART, Mailbox, Grafik https://www.valvers.com/open-software/raspberry-pi/bare-metal-programming-in-c-part-1/ ca. 4 Jahre
USPi - A bare metal USB driver for Raspberry Pi 1-3 written in C Pi0-3 C Circle in C https://github.com/rsta2/uspi ca. 10 Monate
dwelch67 Pi0-3 C Float, Bootloader, MMU, SPI, UART, VIDEO, ZLIB https://github.com/dwelch67/raspberrypi ca. 6 Jahre
... Pi1 Assembler https://www.cl.cam.ac.uk/projects/raspberrypi/tutorials/os/index.html ca. 12 Jahre
Learning operating system development using Linux kernel and Raspberry Pi Pi3 C Printf, Interrupt, Memory
Vergleicht Bare Metal und Linux
https://github.com/s-matyukevich/raspberry-pi-os 3 Jahre
PeterLemon RaspberryPi Pi1-3 Assembler https://github.com/PeterLemon/RaspberryPi 3 Jahre
pi-baremetal Pi1 C https://github.com/brianwiddas/pi-baremetal 12 Jahre
Raspberry Pi Bare Bones Pi1-4 C QEMU http://wiki.osdev.org/Raspberry_Pi_Bare_Bones ca. 1,5 Jahre
circle-stdlib Pi1-4 C++ Circle StdLib https://github.com/smuehlst/circle-stdlib 3 Monate
sean-lawless / computersystems Pi1-4 C https://github.com/sean-lawless/computersystems/tree/master Aktuell
macoy rpi-system Pi4 C Circle in C (nur RPI4) https://macoy.me/code/macoy/rpi-system Aktuell

Stand Januar 2024

Nützliche Links

Nützliche Links
Name Inhalt Link
Introduction to Computer Organization: ARM Assembly Language Using the Raspberry Pi ARM-Assembler https://bob.cs.sonoma.edu/IntroCompOrg-RPi/intro-co-rpi.html
Arm GNU Toolchain Downloads Toolchain https://developer.arm.com/downloads/-/arm-gnu-toolchain-downloads
ARM assembler in Raspberry Pi ARM-Assembler https://thinkingeek.com/arm-assembler-raspberry-pi/
A Guide to ARM64 / AArch64 Assembly on Linux with Shellcodes and Cryptography ARM-Assembler https://modexp.wordpress.com/2018/10/30/arm64-assembly/
Découvrir l'assembleur ARM sur Raspberry Pi ARM-Assembler https://assembleurarmpi.blogspot.com/ or https://github.com/vincentARM/ARMassembly64
ARMv8 A64 Quick Reference ARM-Assembler https://courses.cs.washington.edu/courses/cse469/18wi/Materials/arm64.pdf
ARMv8 Instruction Set Overview ARM-Assembler https://www.cs.princeton.edu/courses/archive/fall23/cos217/reading/ArmInstructionSetOverview.pdf
A64 Systemaufrufe ARM-Assembler https://arm64.syscall.sh/
https://s-matyukevich.github.io/raspberry-pi-os/

Andere, nicht zugeordnet

Raspberry Pi DMA programming in C https://iosoft.blog/2020/05/25/raspberry-pi-dma-programming/

Mailbox property interface https://github.com/raspberrypi/firmware/wiki/Mailbox-property-interface