文章目录
- 1. 运行显示
- 2. 工具准备
- 3. 裸机代码和编译
-
- 4. 使用qemu仿真运行riscv裸机程序
1. 运行显示
- 详见左下角, 运行时串口输出的字符
A
;
2. 工具准备
sudo apt-get install gcc-riscv64-linux-gnu
sudo apt install qemu-system-misc
3. 裸机代码和编译
3.1 源码
#include <stdint.h>
void _start() {
volatile uint8_t *p = (uint8_t *)(uintptr_t)0x10000000;
*p++ = 'A';
*p++ = 'B';
}
3.2 编译
riscv64-linux-gnu-gcc -ffreestanding -nostdlib -Wl,-Ttext=0x80000000 -O2 a.c
4. 使用qemu仿真运行riscv裸机程序
qemu-system-riscv32 -nographic -M virt -bios none -kernel a.out
$ qemu-system-riscv32 -nographic -M virt -bios none -kernel a.out
A