LINKS: Unterschied zwischen den Versionen
Aus C und Assembler mit Raspberry
| Zeile 55: | Zeile 55: | ||
| 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 | | 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. | | 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. 6 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. | | 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. 3 Jahre | ||
|- | |- | ||
| dwelch67 || Pi0-3 || C || Float, Bootloader, MMU, SPI, UART, VIDEO, ZLIB || https://github.com/dwelch67/raspberrypi || ca. | | dwelch67 || Pi0-3 || C || Float, Bootloader, MMU, SPI, UART, VIDEO, ZLIB || https://github.com/dwelch67/raspberrypi || ca. 9 Jahre | ||
|- | |- | ||
| ... || Pi1 || Assembler || || https://www.cl.cam.ac.uk/projects/raspberrypi/tutorials/os/index.html || ca. | | ... || Pi1 || Assembler || || https://www.cl.cam.ac.uk/projects/raspberrypi/tutorials/os/index.html || ca. 14 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 || | | 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 || 6 Jahre | ||
|- | |- | ||
|PeterLemon RaspberryPi | |PeterLemon RaspberryPi | ||
| Zeile 70: | Zeile 70: | ||
| | | | ||
|https://github.com/PeterLemon/RaspberryPi | |https://github.com/PeterLemon/RaspberryPi | ||
| | |5 Jahre | ||
|- | |- | ||
|pi-baremetal | |pi-baremetal | ||
| Zeile 77: | Zeile 77: | ||
| | | | ||
|https://github.com/brianwiddas/pi-baremetal | |https://github.com/brianwiddas/pi-baremetal | ||
| | |14 Jahre | ||
|- | |- | ||
|Raspberry Pi Bare Bones | |Raspberry Pi Bare Bones | ||
| Zeile 84: | Zeile 84: | ||
|QEMU | |QEMU | ||
|http://wiki.osdev.org/Raspberry_Pi_Bare_Bones | |http://wiki.osdev.org/Raspberry_Pi_Bare_Bones | ||
| | |Aktuell | ||
|- | |- | ||
|circle-stdlib | |circle-stdlib | ||
| Zeile 91: | Zeile 91: | ||
|Circle StdLib | |Circle StdLib | ||
|https://github.com/smuehlst/circle-stdlib | |https://github.com/smuehlst/circle-stdlib | ||
| | |2 Monate | ||
|- | |- | ||
|sean-lawless / computersystems | |sean-lawless / computersystems | ||
| Zeile 105: | Zeile 105: | ||
|Circle in C (nur RPI4) | |Circle in C (nur RPI4) | ||
|https://macoy.me/code/macoy/rpi-system | |https://macoy.me/code/macoy/rpi-system | ||
| | |1 Jahr | ||
|} | |} | ||
Stand | Stand Juli 2026 | ||
== Nützliche Links == | == Nützliche Links == | ||
Aktuelle Version vom 17. Juli 2026, 12:52 Uhr
Dokumentation für den Raspberry Pi
Raspberry Pi auf elinux.org
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.pdf1
- VideoCore® IV 3D, Architecture Reference Guide: https://docs.broadcom.com/docs/123585451
- ARM1176JZF-S: https://developer.arm.com/documentation/ddi03011
Raspberry Pi 2 Model B
- BCM2836 ARM Peripherals: https://datasheets.raspberrypi.com/bcm2836/bcm2836-peripherals.pdf1
- Cortex-A7 MPcore Processor Reference Manual: http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ddi0464f/index.html1
Raspberry Pi 3 Model B, spätere Raspberry Pi 2 Model B und Raspberry Pi Compute Module 3
BCM2837 ist identisch wie BCM28361
- BCM2836 ARM Peripherals: https://datasheets.raspberrypi.com/bcm2836/bcm2836-peripherals.pdf1
- Arm Cortex-A53: https://developer.arm.com/documentation/ddi0500/latest/1
Raspberry Pi 3 Models A+, B+ und Raspberry Pi Compute Module 3+
BCM2837B0 ist identisch wie BCM2837, Änderung der internen Frequenzen.1
- BCM2836 ARM Peripherals: https://datasheets.raspberrypi.com/bcm2836/bcm2836-peripherals.pdf1
- Arm Cortex-A53: https://developer.arm.com/documentation/ddi0500/latest/1
Raspberry Pi 4 Model B, the Raspberry Pi 400, and the Raspberry Pi Compute Module 4
- BCM2711 ARM Peripherals: https://datasheets.raspberrypi.com/bcm2711/bcm2711-peripherals.pdf1
- Arm Cortex-A72: https://developer.arm.com/Processors/Cortex-A72
Raspberry Pi 5
- rp1-peripherals: https://datasheets.raspberrypi.com/rp1/rp1-peripherals.pdf
1 Information aus: https://www.raspberrypi.org/documentation/hardware/raspberrypi/README.md
Forum
Raspberry Pi Forum: https://www.raspberrypi.org/forums/
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 | Aktuell |
| 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 | ca. 3 Jahre |
| 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 | 2 Monate |
| 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. 6 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. 3 Jahre |
| dwelch67 | Pi0-3 | C | Float, Bootloader, MMU, SPI, UART, VIDEO, ZLIB | https://github.com/dwelch67/raspberrypi | ca. 9 Jahre |
| ... | Pi1 | Assembler | https://www.cl.cam.ac.uk/projects/raspberrypi/tutorials/os/index.html | ca. 14 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 | 6 Jahre |
| PeterLemon RaspberryPi | Pi1-3 | Assembler | https://github.com/PeterLemon/RaspberryPi | 5 Jahre | |
| pi-baremetal | Pi1 | C | https://github.com/brianwiddas/pi-baremetal | 14 Jahre | |
| Raspberry Pi Bare Bones | Pi1-4 | C | QEMU | http://wiki.osdev.org/Raspberry_Pi_Bare_Bones | Aktuell |
| circle-stdlib | Pi1-4 | C++ | Circle StdLib | https://github.com/smuehlst/circle-stdlib | 2 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 | 1 Jahr |
Stand Juli 2026
Nützliche Links
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