我想尝试将Raspberry Pi用于一些不同的低级嵌入式应用程序.唯一的问题是,与可用的AVR和PIC微控制器板不同,Raspberry Pi通常运行一个操作系统(如Raspbian),它在所有正在运行的程序中分配CPU时间,并使其对某些实时应用程序不切实际.
我最近了解到,假设你有一个像GRUB一样的bootloader,在x86上运行一个C程序(以内核的形式)只需要很少的实际设置,只需要一个汇编程序来调用main函数和实际的C代码.
有没有办法用Raspberry Pi实现这一目标?这是学习低级ARM编程的好方法,它已经有一些复杂的外围设备(USB,以太网等).
我正在尝试使用 QEMU为 Raspberry Pi 3模拟Ubuntu Core,但它不起作用。
我找到了有关使用 QEMU 模拟 Raspbian 的教程,并尝试将它们应用到 Ubuntu Core:
我找不到合适的内核,所以我使用了Raspbian Kernel。这没用。然后我安装了 Ubuntu Core Image 并提取了 kernel.img 它也没有工作。
我用这个命令启动 qemu
qemu-system-arm -kernel ./kernel.img \
-cpu arm1176 \
-m 256 \
-M versatilepb \
-no-reboot \
-serial stdio \
-append "root=/dev/sda2 panic=1 rootfstype=ext4 rw init=/bin/bash" \
-drive "file=pi3.img,index=0,media=disk,format=raw" \
-redir tcp:2222::22
Run Code Online (Sandbox Code Playgroud)
QEMU 启动但不加载 Ubuntu Core。
有人用 QEMU 模拟 Ubuntu Core(用于 Raspberry Pi 3)吗?