PIC16 C编译器

时间:2009-06-23 06:49:04

标签: compiler-construction embedded pic mikroc

我正在寻找适用于PIC 16系列的优秀C编译器,适用于Windows。

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

  • SDCC 看起来很不错,但看起来仍然处于测试阶段,并且不易设置或不得不处理。

  • 还有其他一些选项,根据自己的不同,所有选项都是最好的。我找到了一些讨论这个主题的论坛,似乎没有人互相认同。 MikroCCCS(贵),HiTech,BoostC。

我希望得到一些关于什么是好的和什么是坏的真实信息。

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

8 个答案:

答案 0 :(得分:10)

您的评估是正确的,PIC16并非真正对C友好。如果你想用C语言编写代码,那么用PIC18做它会好得多。
Microchip为PIC18提供了一款优秀且免费的IDE和编译器MPLAB。它非常容易上班。此外,PIC18系列通常功能更强大,但有一些芯片的占位面积不比PIC16系列大得多 开始使用PIC16开发新产品并不是一个好主意。

答案 1 :(得分:5)

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

答案 2 :(得分:4)

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

答案 3 :(得分:4)

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

答案 4 :(得分:1)

CCS编译任何来自12,16,18和更高版本的PIC。它不是免费的,但作为一个pic编译器,它做得很糟糕。 (对我来说,任何一天都在为ASM打败)

答案 5 :(得分:0)

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

答案 6 :(得分:0)

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

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

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

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

答案 7 :(得分:0)

仅需完成:

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

免费专业版

免费版本中的代码比 Pro 版本大50%。
对于每8位PIC(PIC10,PIC12,PIC16,PIC18,AVR(2.0版及更高版本)),xc8都可以使用

MPLAB®XC C编译器包含60天免费试用的PRO许可证,以在激活时进行评估。