我可以编译任何高级语言用于eeprom吗?

时间:2013-02-14 04:21:39

标签: high-level eeprom

我需要知道是否可以编译任何高级编程语言以用于eeprom。我知道可以从已编译的二进制文件中删除标题,但我不确定地址将如何生效。

请不要将此标记为“不是问题”。我从这个网站上得到了很多人,他们无法区分一个愚蠢的问题和一个不是问题的东西。

我可以编译任何高级语言以用于eeprom吗?

(编辑)我的目标是 Winbond 27C512 EEPROM

1 个答案:

答案 0 :(得分:0)

如果你有一个C编译器用于有问题的处理器,那么没有理由你不能编译C代码以便它可以放在EEPROM中(尽管如通常的嵌入式编程,你不能使用任何libc函数,所以你必须自己实现很多)。 C还可以与汇编代码进行良好的互操作,因此您可以在转换为使用C语言编写的更高级代码之前,先在汇编中编写引导程序。

典型的C链接器(例如GNU ldd)可以编写脚本,以便生成与EEPROM兼容的地址;这是嵌入式开发和其他“裸机”应用程序的常见要求。您可以使用objcopy以多种不同格式格式化已编译的二进制文件。使用GNU工具链,您可以使用受限制的C ++子集来解决此问题。

但是,你很可能无法使用许多其他流行的高级语言,因为很少有语言支持嵌入式开发所需的低级构造(如直接指针寻址)