适用于AVR系列单片机的几种C语言比较几种 C 语言的比较测试报告詹卫前 自 ATMEL 的 AT90 系列单片机诞生以来 有很多第三方厂商为 AT90 系列开发了用于程序开发的 C 语言工具 本报告测试了以下 四家厂商的 C 语言工具 IAR 的 ICC90 ImageCraft 的 ICCAVR CodeVision AVR 和 SPJ 的 AVRC 其中 IAR 的 ICC90 是与 ATMEL 的 AT90 系列单片 机同步开发的 是一个老牌的 C 语言工具 而其余三家是后来独立开发的 在这四种 C 语言工具中 以 SPJ 的 AVRC 最不理想 其 IDE 工作环境不可与前 三种相提并论 而且它的编译器工作方式与 CodeVisionAVR 相类似 经初步测试其 生成的代码 也不很理想 其版本更新的速度也较慢 所以没作进一步详细的测试 下面的比较只是对前三种 C 语言工具的比较一 IDE 工作环境的比较IAR 的 ICC90 由于诞生的比较早 再加上其 IDE 为了和 IAR 其它系列单片机的开 发环境相兼容 应该说其 IDE 环境不如 ICCAVR 和 CodeVisionAVR 在使用上也没 有其余两个方便 但它也有自己的特点 即 IAR 有自己的源程序调试工具软件 C-SPY 而其余两家均只能通过生成 COFF 格式文件 在 ATMEL 的 AVR Studio 环境中进行源 程序调试 而 IAR 在两个调试环境中均可以正常工作 在 IDE 工作环境方面的差异主要有以下几个方面 1 应用程序向导 2 串行通信调试终端 3 工具配置菜单 4 工程属性窗口 一 应用程序向导 IAR 没有应用程序向导 而 ICCAVR 与 CodeVision AVR 都具有应用程序向导 它们的共同点有 1 可以根据选择的器件来产生 I/O 端口 定时器 中断系统 UART SPI 模 拟量比较器 片……