【发布时间】:2018-08-10 18:42:00
【问题描述】:
为一家公司制造的 Cortex A5 编写的代码可以毫无困难地移植到另一家公司制造的 Cortex A9 上吗?
我想编写一些在 Atmel 的 SAMA5D4 (Cortex A5) 上运行的裸机 C 代码,该代码从具有并行接口的 CMOS 相机获取视频并将其编码为 H.264。该芯片可以以 720p 进行硬件编码。
稍后,我可能想构建一个可以以 1080p 编码的类似设置,因此我想升级到更昂贵的芯片,NXP i.MX 6Solo (Cortex A9)。
所以我想知道我是否会遇到严重的问题,或者以后移植是否容易。我的直觉告诉我这应该很容易,但我想我最好先问问专家。如果这是一个巨大的头痛,虽然我可能会先从更昂贵的芯片开始。
我是新手,对 ARM 芯片甚至 C 完全没有经验,但我愿意学习 :-)
【问题讨论】:
-
你知道你的方程有多少变量吗?
-
我不太明白你的意思。如果您的代码是纯 C(没有内联汇编程序),那么我不明白您为什么会遇到问题,C 编译器将为 Cortex A9 生成正确的代码(前提是您有支持 Cortex A9 的 C 编译器。
-
@Pablo 我可以想象代码,即使在纯 C(嵌入式系统很少可能)中也会生成一些特定于硬件的寄存器。
-
@Eugene 这就是编译器的重点,所以你不必担心这些事情。一般来说,使用纯 C 代码和针对目标的 C 编译器,您将获得一个正在运行的程序。
-
@Pablo 只是好奇,你有没有编写过裸机嵌入式目标?