Я согласен с zklapow, но проверьте раздел проектов на AVR Freaks тоже. Вот как я узнал за день до Arduinos. Кроме того, вам почти наверняка придется прочитать таблицу данных для вашего чипа, чтобы сделать что-нибудь полезное. Нет хороших функций, которые, например, считывают аналоговый вывод, потому что есть так много параметров, которые окружение arduino скрывает от вас. Позвольте мне привести Вам пример:
int ledPin = 13; // LED connected to digital pin 13
// The setup() method runs once, when the sketch starts
void setup() {
// initialize the digital pin as an output:
pinMode(ledPin, OUTPUT);
}
// the loop() method runs over and over again,
// as long as the Arduino has power
void loop()
{
digitalWrite(ledPin, HIGH); // set the LED on
delay(1000); // wait for a second
digitalWrite(ledPin, LOW); // set the LED off
delay(1000); // wait for a second
}
примерно похож на следующий C (не тестировался):
int main(void) {
// I just randomly picked pin 6 on PORTB, this may not be the same on an arduino
DDRB = (1<<6); // set pin to output in data direction register
int i; // have to do this outside the for loop because of C standard
while(1) {
PORTB |= (1<<6); // send pin 6 high and leave other pins in their current state
for (i=0; i<10000; i++); // delay
PORTB &= ~(1<<6); // send pin 6 low
for (i=0; i<10000; i++); // delay
}
}
Конечно, в некоторых библиотеках есть функции задержки, а в других могут быть функции вывода, но привыкните к написанию такого кода. Единственный способ узнать, что все это значит для PORTB и DDRB, - это прочитать таблицу данных. Прошу прощения, что не могу понять об этом, но мало кто понимает, что таблица данных является золотой жилой для информации.
Вы также должны проверить Eclipse для C / C ++ и плагин AVR-Eclipse. У меня работает без нареканий, особенно с кросспаком. Я использую его около года, и мне действительно это нравится.
источник
Я также использую ObDev CrossPack . Это отличный набор всех инструментов, необходимых для написания кода AVR-GCC. Это те же инструменты, что и в стандартной установке Arduino, поэтому иногда я использовал внутренности системы сборки Arduino для написания простого кода AVR-GCC.
Обычно, когда я пишу код на C, я использую «IDE» - это текстовый редактор, команды командной строки и файлы Makefile. Я просто более эффективен в этом смысле. У меня открыто одно окно - текстовый редактор (emacs), другое окно - компиляция, а третье или четвертое - последовательный монитор или аналогичный. Но все это можно сделать в одном окне командной строки, в этом случае команды выглядят примерно так:
Кроме того, вы можете проверить SmileyMicros.com . Он написал действительно хорошую книгу о вводном AVR GCC программировании, основанном на плате AVR Butterfly, до Arduino, и с тех пор обновляет свои примеры для включения Arduino. Это хорошее сравнение, чтобы увидеть, как программирование AVR C выполняется на более сложной микросхеме, чем в Arduino.
источник
Если вы устанавливаете кросспак, вы можете использовать Apple Xcode для Mac, которая является отличной IDE. Если вы хотите узнать c для AVR, посетите форум учебников на AVR Freaks . Также как и для Linux проверить этот вопрос .
источник
Поскольку вы используете Arduino, все, что вам нужно, уже установлено. Я компилирую эскизы Arduino из командной строки, используя Makefile. Я также компилирую код без загрузчика Arduino.
Makefile, который я использую для компиляции загрузчика Arduino для моих плат, находится по адресу http://wiblocks.luciani.org/docs/app-notes/bootloader.html. Вы можете изменить его для компиляции своей программы, а не файла ATmegaBOOT_xx8.c.
Мой Makefile изменен из файла, который я нашел на этом сайте - http://mjo.tc/atelier/2009/02/arduino-cli.html
Отвечая на этот же вопрос (только вчера;) в твиттере, я наткнулся на make-файл на dorbotpdx. Смотрите http://dorkbotpdx.org/blog/ax/arduino_0017_makefile
На http://arkku.com/misc/arduino_make.sh также имеется хорошо документированный сценарий оболочки.
Я бы, вероятно, использовал Makefile, а не сценарий оболочки. Парень, который написал этот сценарий, отлично прокомментировал поток. Это просто работа, чтобы понять поток.
источник
Я нашел IDE CodeLite (www.codelite.org) красивым и полнофункциональным; Тем не менее, для программирования микрочипов AVR вам нужно создать свой собственный Makefile.
Вы можете попробовать BeRTOS Wizard , который создаст проект BeRTOS и связанные Make-файлы, которые затем можно использовать с CodeLite. Чтобы прошить цель, просто используйте «make flash», и все готово. Мы работаем над Linux ежедневно, если у вас есть дополнительные вопросы, пожалуйста, разместите их в списке рассылки. Отказ от ответственности: я разработчик BeRTOS.
С наилучшими пожеланиями, Лука
источник
Если у вас установлен Macports, вы можете просто запустить:
и ты должен быть готов к работе.
источник
Если вы попросите систему пакетов установить avr-libc, это даст вам все, что вам нужно. Я использую emacs в качестве своей IDE, потому что, ну, смотрите имя пользователя.
Если вам нужен шаблонный make-файл, взгляните на один из моих проектов на github, например, https://github.com/unixbigot/pir-lite.
В этом репозитории avr-tmpl.mk является готовой библиотекой make-файлов (не написанной мной). Вы включаете его из своего основного make-файла, и вам нужно только определить, какой у вас чип, тактовую частоту и ваши файлы. У меня есть одна копия этого файла и я включаю его во все мои файлы проекта.
"make program" вызовет avrdude для загрузки кода. Makefile также печатает размер кода в конце, чтобы вы знали, сколько места у вас осталось.
источник
Я запрограммировал свое «старое» Duemanilove как ISP с помощью этой статьи: http://arduino.cc/en/Tutorial/ArduinoISP. Он одинаково хорошо работает с ATtiny: http://hlt.media.mit.edu/? р = 1229
Напоминаем, что при использовании Arduino IDE 0022 вам необходимо обновить эскиз ArduinoISP до более новой версии из-за предотвращения спама, я переместил эту ссылку на комментарии ниже.
Я занимался программированием в текстовом редакторе (vi) и компилировал его с использованием avr-gcc, как описано в статье на mit.edu, которую я связал.
источник
Эй, чувак, ты все еще можешь использовать avrstudio в Ubuntu. Думая, как ты можешь это сделать .....
Ответ - просто установите приложение Wine и запустите эти программы для Windows вместе с Wine.
Avr studio, proteus ... даже игры windows можно запускать в убунту с вином.
Вам не нужно даже связываться с make-файлами, бла-бла (просто установите с вином и начните).
Есть много сайтов, с которых можно начать работу с avr MCU, таких как экстримэлектроника, учебные пособия по AVR и т. Д. Просто дайте поиск в Google.
Я подробно расскажу, как установить avrstudio 4 в Wine, так как avrstudio 5 и 6 не работают с ним, но вы можете использовать виртуальную коробку в linux для запуска даже avr stud 5 и 6 с окнами на виртуальной коробке.
Откройте центр программного обеспечения Ubuntu, введите в поиске wine и установите его.
Затем получите настройки для avrstudio4, а также вам нужно установить win avr
попробуйте эти ссылки для
а. avr studio 4 http://mycomsats.com/blogs/download-atmel-avr-studio-4-free/
б. win avr http://sourceforge.net/projects/winavr/files/WinAVR/20100110/WinAVR-20100110-install.exe/download?use_mirror=kaz&r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fwinavr%2Ffiles% 2F & use_mirror = каз
3. Откройте папку, в которой находится установка для AS (avr studio 4), затем щелкните правой кнопкой мыши и откройте ее с помощью «загрузчика программ Windows Wine» или «приложения Wine».
4. Затем вам нужно нажать на следующие кнопки, как вы это сделали бы в Windows.
5. Затем снова установите win avr аналогично Wine (перейдите в настройку win avr ....).
6. Загрузите классический индикатор меню из центра приложений Ubuntu. Вы узнаете об этом всего за пять минут.
7. Из классического меню -> Wine -> Программы -> AVR Tools
Шестой шаг - это дополнительный шаг, так что вам не нужно возиться с тем, где находится опция исполняемого файла avrstudio4 в папке Wine.
источник