bare-metal

    1热度

    1回答

    我正在用ARMv7-A汇编语言编写一个程序。 我想使用Virtualization Extension并在非安全的世界中使处理器模式PL2。 因此,我用hvc指令如下: 在安全PL1(SVC)模式开始。 设置MVBAR和VBAR。 使用smc指令并进入监视模式。 在监视模式下,设置SCR.NS位,设置HVBAR和excetpion的返回值。 使处理器模式SVC。 呼叫HVC 代码 .text

    0热度

    2回答

    我正试图在覆盆子pi上实现一个裸机应用程序,并且希望将stdout挂接到mini uart以进行调试。 我按照概述here和here 我创建了一个uart_putc功能,这似乎很好地工作,让我打印的邮件到我的PC的COM端口的进程。然后,我实现了_write系统调用,使其调用我的uart_putc函数进行输出。如果我将单个字符串文字传递给printf额外的文字参数或任何非文字参数,则此工作正常,但

    2热度

    3回答

    我有一组32位寄存器用于嵌入式应用程序(ARM裸机)中的外设,并具有以下字节地址。 CTL 0x0; STAT为0x4 TXR 0x8中< - 间断地址 RXR为0x20 DAT1的0x30 < - 间断地址 DAT2 0x40的< - 间断地址 等 我希望将所有这些注册到一个C结构(它的一个结构) struct my_peri { uint32_t CTL; uint32_t

    0热度

    1回答

    我正在尝试使用两台物理服务器设置MAAS群集。两台服务器都已经使用Ubuntu 14.04引导,我已经在两台服务器上安装了Maas。我在节点1上有一个集群区域,并且不知道将其他物理机器添加到此区域。一旦完成,我想在这两个实例上部署Juju,理想情况下,它应该能够从node1控制两者。文档有点混乱。有人可以建议/指导我如何实现这一设置? 谢谢, Swaroop。

    0热度

    1回答

    我是新来的Python和OpenStack的,所以请不要失去冷静:) 在这里,我试图实例BareMetalNodeManager类对象(从np_orchestration。 PY)。 np_orchestration.py from baremetal import BareMetalNodeManager from novaclient import base class np_orche

    6热度

    2回答

    假设您有一个为ARM体系结构生成二进制文件的交叉编译工具链。 你的工具链是这样的(与Linux上X86_64机器上运行): ARM-Linux的gnueabi-gcc.exe:为交叉编译的Linux,ARM上运行。 arm-gcc.exe:针对ARM的裸机交叉编译。 ......以及其他许多ARM上交叉编译工具。 点即我感兴趣的是: 二进制之间(E)ABI差异(如果有的话)在裸金属的情况下 限制(

    0热度

    1回答

    在裸机项目中,我需要将ROM段的起始地址写入专用地址。什么到目前为止,我发现是这样定义的链接描述: MEMORY{ ROM (rx) : ORIGIN = 0x00018000, LENGTH = 0x8000 UICR (r) : ORIGIN = 0x10001000, LENGTH = 0x400 } SECTIONS { .bootloader_addr

    0热度

    1回答

    有没有办法用gnu ld在elf文件中创建一个明确清零的bss节?我有一个裸机环境,我可以选择在系统启动之前初始化存储器,并且这个选项比在系统启动时清零bss要快得多。

    1热度

    1回答

    这个问题让我烦恼。我正在做一些基于LPC15XX系列微控制器的定制传感器板的裸机编程。该平台相当于一堆I2C传感器和连接到其中一个UART的蓝牙发射器。这不是LPCxpresso(或类似)电路板之一;它是一个定制设计。 直到今天,所有测试代码都在一个单片文件中,正如所料。随着代码的增长,我决定将主要功能块分解成单独的源文件以简化管理。不幸的是,只要我这样做,该计划开始segfaulting。 正在

    3热度

    2回答

    更改Raspberry Pi上GPIO引脚的上拉/下拉电阻要求在根据规格启用和解除时钟信号后等待150个周期。多做一点不会伤害,但使用定时器等待的时间会更长,所以我不想这样做。所以我有这个简单的繁忙循环: for (int i = 0; i < 150; ++i) { asm volatile (""); } 0: e3a03096 mov r3, #150 ; 0x96 4: e25