5

我正在为 PIC 16 系列寻找一个好的 C 编译器,在 Windows 上工作。

  • 一些同事使用bknudc,但有些人似乎不喜欢它。显然你不能有效地使用链接器,事实证明最好的方法是将所有代码设置在包含文件中。

  • SDCC看起来不错,但看起来它仍处于测试阶段,并且不容易设置或必须处理。

  • 还有很多其他的选择,都是根据自己的最佳选择。我发现一些论坛讨论这个话题,似乎没有人同意彼此。MikroCCCS(昂贵)、HiTech、BoostC。

我想知道什么是好什么是坏的一些真实的信息。

如果我猜对了,PIC16 架构不是真的对 C 友好吗?是否有一个编译器可以让程序员在 ANSI C 中工作?以及设置足够好的调试器的方法?

4

8 回答 8

10

您的评估是正确的,PIC16 并不是真正的 C 友好型。如果您想用 C 编写代码,最好使用 PIC18 编写代码。
Microchip 为 PIC18 提供了一个出色的免费 IDE 和编译器 MPLAB。它真的很容易工作。此外,PIC18 系列通常更强大,但有些芯片的占用空间并不比 PIC16 系列大很多。
开始使用 PIC16 开发新产品不是一个好主意。

于 2009-06-23T07:02:17.507 回答
5

HI-TECH 有一个用于 PIC16 的 C 编译器,他们甚至提供免费软件版本。
HI-TECH C 编译器

于 2009-06-23T23:53:26.003 回答
5

我发现高科技非常好。如果我有更好的声誉,我会投票赞成路易斯的回答。我也同意 PIC18F 是一个很好的选择。寻找 k 系列零件,因为这些是更新、更好和更便宜的零件。它们的电流消耗也非常低(如果这对您很重要)。

于 2009-07-29T20:51:51.363 回答
4

我相信SDCC现在对PIC16有了一些支持。

于 2009-06-23T07:07:48.027 回答
1

CCS为 12、16、18 和更高版本的任何 PIC 编译。它不是免费的,但它作为一个图片编译器做得非常好。(对我来说,任何一天都击败 ASM)

于 2009-07-08T00:51:11.190 回答
0

Sourceboost BoostC 是 PIC12/PIC16/PIC18 系列非常好的 C 编译器。他们也有 BoostC++ 和 BoostBasic 编译器。附带精美的 IDE,具有基本的模拟选项。我非常喜欢 CCS 和 Microchip C18 语法。感觉更干净,不那么杂乱。但是,它也不是免费的,但许可证非常便宜。免费/精简版允许 2kB 的代码。有了这个,你已经可以做很多事情了。

于 2009-07-09T13:38:23.550 回答
0

BKND C 编译器确实很古怪,并不能很好地支持链接器。但是,大多数 PIC16 芯片都足够小,将所有源代码包含在一个 C 文件中并不是什么大问题。

我对 BKND 和 HiTECH C 编译器做了一些比较,BKND 似乎生成了更好的代码。至少在我的应用程序中,这对于满足我在这么小的 MCU 上的应用程序的速度/空间要求是必要的。

BKND 编译器的许多怪癖(额外数据类型等)对于调整代码以在小型 MCU 上运行非常有帮助。您在 ARM 或 x86 上编写的标准 C 确实不适合只有几百字节 RAM 的微型 CPU。

对于较大的 PIC 芯片(18、24F 等),Microchip 提供的 C 编译器非常棒。

于 2009-07-29T02:46:41.020 回答
0

只是为了完成:

Microchip 有一个非常好的编译器(xc8)。编译器有两个版本:

免费专业版

免费版的代码比专业版大 50%。
xc8 适用于每个 8 位 PIC(PIC10、PIC12、PIC16、PIC18、AVR(2.0 及更高版本))

MPLAB®XC C 编译器包含一个免费的 60 天 PRO 许可证试用版,用于在激活后进行评估。
XC-Pro 编译器还提供每月订阅许可证和功能安全许可证。
信息

于 2018-07-12T09:22:58.610 回答