- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我已经编程了avr微控制器,但是对arm还是陌生的。我只是看了winarm随附的sam7s64的示例代码。我对这些文件rom.ld,ram.ld,分散文件,cstartup.s文件感到困惑。我在编写avr时从未见过此类文件。请澄清我的疑问,每个文件的作用。
最佳答案
我还有更多样本供您思考http://github.com/dwelch67
假设您有一个支持特定指令集的工具链。工具经常尝试支持不同的实现。您的微控制器可能具有X数量的闪存和Y数量的内存。一个芯片可能将ram与另一个芯片放在不同的地方,等等。指令集可能是相同的(或者本身可能有细微的变化),以便工具链对某些指令进行编码,最终它想知道您的内存布局是什么是。通常,可以为某些纯粹与位置无关的处理器编写代码,尽管这不一定是目标,因为这会增加成本。工具也倾向于对事物采用统一的方法。从源语言到目标文件(尚不知道其内存布局),它留下了一些漏洞供以后填充。您可以根据工具链和指令集从不同的语言中获取信息,也许将ada和C以及其他编译为对象的语言混合使用。然后,链接器需要合并所有这些内容。作为程序员,您有时可以控制什么地方。您希望向量表在正确的位置,您希望输入代码在特定的位置,您绝对希望ram中的.data最终是Flash中的.text。
对于gnu工具,您可以使用链接描述文件告诉链接器事情在哪里,其他工具链可能具有其他方法。使用gnu ld,您还可以使用ld命令行...您所看到的.ld文件可以控制它。现在有时这埋藏在工具链安装的大肠中,有一个默认位置可以找到默认的链接描述文件,如果可以的话,您就无需编写链接描述文件并将其随项目一起使用。根据您在avr上使用的工具,您可能不需要弄乱它(正在使用汇编,avra或可以通过.org或其他类似语句控制它的东西),或者工具链/沙盒会为您处理,它被掩埋了(例如,使用arduino沙箱)。例如,如果您编写一个hello world程序
#include <stdio.h>
int main ( void )
{
printf("Hello World!\n");
return(0);
}
gcc hello.c -o hello
关于arm - Arm Rom.ld,Ram.ld,scatterfile,startup.s,所有这些文件都做什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10766154/
在rom-sql我想启用日志记录,以便我可以看到生成的所有 sql 查询。 我怎样才能做到这一点? 因为它在下面使用续集,我想它可能会通过 sequel logger 以某种方式实现。 . 最佳答案
如何获取所有驱动器的列表以及相应的驱动器类型(可移动、本地磁盘或 cd-rom、dvd-rom 等)? 最佳答案 通过这段代码你可以获得所有驱动器及其类型描述 File[] paths; FileSy
我正在尝试通过 C 代码弹出我的 CD ROM。它不想工作。 ioctl 返回“5”I/O 错误,哪里可能有问题? #include #include #include #include #i
我在网上的几个地方找到了这个问题,但从来没有一个好的答案。让我具体回答所提出的问题。 我想构建一个只有一个应用程序的自定义 Android ROM。此应用程序不与任何硬件交互(现在)。此应用程序将在设
我正在开发基于 Renesas RL78 Controller 的汽车软件堆栈。直接进入问题,声明为 const(ROM 变量)的变量未使用定义的值进行初始化。 例如:const uint8 var_
有人知道用什么语言ROM(例如GBA ROM)编码吗?我还想知道是否有一种简单的方法可以反编译这些ROM。 最佳答案 GBA游戏可以用任何语言编程,只要可以编译为ARM汇编即可。 它们通常是用C++编
是否有一个 ROM 字节在正常操作中未使用? 我想解码地址总线,拉低 ROMCS 并将数据放入数据总线仅针对一个地址。 ROM 中是否有一个地址在 ZX Spectrum 的正常操作中从未使用过?也许
我正在尝试为自定义 ROM 制作更新程序。我可以通过以下方式从我的应用中恢复: Process p = Runtime.getRuntime().exec("su"); OutputStream os
如何检测小米MIUI ROM下运行的设备?我可以使用以下代码检测 Xiomi 设备。 String manufacturer = "xiaomi"; if (manufacturer.equalsIg
我想检查我的设备是否安装了自定义 ROM。如果任何设备上有自定义 ROM,我不希望我的应用程序运行。我如何通过代码知道这一点? 最佳答案 System.getProperty("os.version"
我完成了我的 6502 模拟器的编写,我准备开始测试它了。我找到了 nestest带有一些文档的 ROM,但我不确定加载 ROM 的正确方法是什么。作者说,模拟器应该从0xC000开始,当我加载ROM
我有一个需求是这样的:我们有定制的 Android 设备,上面安装了定制的 ROM。我需要能够通过应用为此自定义 ROM 安装更新。 我想解决这个问题的方法是通过 ftp 从服务器下载自定义 rom,
我想在我的自定义 AOSP rom 中禁用主页、菜单和后退按钮。我在互联网上搜索过,看到我可以在 out/target/product/generic/system/usr/keylayout 中找到
我正在开发一个 Android 应用程序,但我想将我的应用程序限制为只能由未运行有根/自定义 ROM 的硬件访问。我知道 Android 的前向锁定内容保护,但想在我的应用程序中仔细检查此保护。有什么
最近一直在使用闪存 ROM,我发现无论是在芯片的内部闪存内还是在外部 SPI 闪存设备中,扇区的大小通常都是这样的: 我很好奇为什么起始地址空间的扇区比后面的地址小。我怀疑使用引导加载程序之类的东西会
我需要创建一个提供一些功能的 ROM 掩码。不过,应该可以覆盖提供固件补丁的功能。因此,补丁表应该位于Flash存储器中,以后固件升级可能会被覆盖,而固件的主要部分位于mask ROM中,以后无法修改
我想在基于 ARM 的智能手机上全新安装嵌入式 Linux。为此,我需要闪存、显示器等设备驱动程序。我想知道是否可以从这些手机供应商提供的 ROM 中提取设备驱动程序? 最佳答案 不,这通常是不可能的
制作自定义 rom 是否涉及与制作应用程序相同的技能组合?他们是同一个吗? 最佳答案 没有。自定义 ROM 需要对比制作应用程序低得多的编程有很好的理解。几乎任何人都可以使用 CS、ZDE 或 Net
我做了一个前台服务来不断扫描我周围的 BLE 设备。出于某种原因,它似乎在我的安卓设备谷歌像素和三星 S9+ 上完美运行。 但最近我用中文 ROM(Oneplus 6T,小米 Poco F1)测试了该
我正在编写一个需要区分 Android Stock ROM 和其他 ROM(如 SenseUI 等)的应用。 如何在我的应用程序中执行此操作? 谢谢。 最佳答案 我发现使用 getprop 查询 ro
我是一名优秀的程序员,十分优秀!