LINKS: Unterschied zwischen den Versionen
Aus C und Assembler mit Raspberry
| Zeile 47: | Zeile 47: | ||
! Name !! RPI !! Programmiersprache !! Inhalt !! Link !! Aktuell | ! 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. | | 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 || | | 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 || | | 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. | | 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. 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 | | 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 | ||
Aktuelle Version vom 28. November 2024, 20:19 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 | 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
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