вторник, 10 мая 2011 г.

Arduino на PIC


Одним из недостатков платформы Arduino, считаю применение микроконтроллеров Atmel. Конечно, это субъективное мнение и ничего плохого в AVR не вижу, но PIC нравится больше. Долгое время именно из-за этого факта только присматривался к Arduino. Но техника не стоит на месте и сегодня имеется несколько вариантов реализации Arduino-подобных систем на микроконтроллерах PICmicro.

Наиболее развитый проект от английской фирмы Crownhill Associates.Сайт проекта - http://www.myamicus.co.uk/. По количеству доступных выводов даже превосходит Arduino. При этом форма и размеры платы полностью одинаковы. Отличаются несколько увеличенным числом разъемов, а также применением разъема USB-A. Последний считаю самым главным недостатком, так как его применение требует нестандартного кабеля. В качестве процессора в AMICUS18 используется PIC18F25K20. Программирование Amicus18 выполняется в одноименной IDE, на языке ProtonBASIC. IDE также превосходит по возможностям ArduinoIDE. Использование BASIC не совсем оправдано, так как имеются более солидные языки программирования. Тем не менее их использование также возможно, так как плата поддерживает программатор PICKit2. Он же поддерживается и IDE AMICUS18. Такой подход делает возможным во-первых самостоятельное изготовление платы без преобразователя USB-COM, а во-вторых позволяет реализовывать готовые устройства после отработки их на плате.
Amicus18 – отличная платформа, могущая стать реальным конкурентом Arduino.


Наиболее простой вариант отладочной платы, совместимой по разъемам с Arduino. Разработчики полностью отказались от создания IDE и используют любую стандартную среду программирования для МК Microchip. Для заливки программ в МК не применяется бутлоадер, а используется обычный программатор PICKit2. Это позволило отказаться и от преобразователя UCB-COM. Процессором может стать любой микроконтроллер Microchip в корпусе DIP28. В варианте разработчиков применен PIC16F866. Для удобства программирования, на официальном сайте существует библиотека на языке С, описывающая основные функции платы, аналогично Arduino. Несмотря на простоту платы, она может быть использована для создания самых разных устройств, с использованием стандартных шилдов Arduino.