ChipKIT 是Digilent公司最新推出的开源硬件平台。ChipKIT是基于开源的Arduino的设计平台,加上Microchip公司的PIC系列微处理器的优异性能,使得设计者能更方便的使用PIC来开发设计各种应用产品。ChipKIT的处理器核心是Microchip公司的32-bit PIC微处理器(PIC32MXXXX),32位的处理器的速度和各种接口资源大大提升,应用潜力非常巨大。ChipKIT的开发环境MPIDE是基于Arduino IDE基础上移植的一套软件开发环境,完全兼容之前Arduino的程序,因此Arduino的大量项目程序资源也可以在其上使用。同时ChipKIT也完全兼容Microchip自己的微处理器开发工具MPLAB® IDE和PICKit3 在线编程调试工具,这样熟悉PIC微处理器开发环境的设计者能更容易进行设计。
ChipKIT Uno32——基于PIC32微处理器与Arduino Uno完全兼容的设计,引脚的布局也完全一样,能接各种Arduino扩展板。
在开源硬件领域Arduino无疑是王者,很多后来者都把它当做一个事实上的标准,chipKit也不例外。chipKit Uno32设计的时候就以Arduino 为目标,希望尽可能的靠近,能够完全兼容Arduino Uno。我们来看看它们之间的异同点。
chipKit Uno32经过很多努力希望能兼容Arduino Uno,这样Arduino的应用能很平滑的过渡到chipKit上。它们之间还是有一些细小的差别:
1. 尽管PIC32处理器工作电压3.3V,chipKit的大部分IO脚能承受5V电平,只有模拟IO脚只能3.3V电平。
2. chipKit Uno32的PWM输出只有5路(PWM0-4),而Arduino Uno的PWM有6路,缺少在D11脚的PWM5。
3. ATmega328P 能在任何一个引脚产生中断,而 PIC32MX320F128H 只能在特定的pin脚。
4.chipKit Uno32上通过一些跳线器控制管脚功能的复用。如跳线JP6/JP8控制I2C信号、JP5/JP7控制SPI主从模式等。
5. 模拟输入比较器的管脚不同。
6. 外部中断数不同,Uno32有5个,Arduino Uno只有2个。
7. Uno32有12个模拟输入脚(A0-A11),而Arduino Uno只有6个(A0-A5)。
8. chipKit Uno32和Arduino Uno一样都有一个用户LED灯在第13脚(pin13)。但是chipKit Uno32还有一个用户可以控制的LED在第43脚,这是一个固定的引脚,只能控制LED不能做其他事。
9. Arduino Uno上的LED是直接连到MCU的管脚,而chipKit Uno32不同的是它的管脚没有直接连到LED,而是连到一个三极管的控制端在控制LED。其中一个原因是PIC32的驱动电流比AVR的要小,同时还有有一个好处降低了13脚的负载,如果13脚用于其他逻辑功能更快反应,开关速度更快。
不过个人感觉,性价比尚不如Arduino mega2560