Как написать программу на си в линукс

Ubuntu 9.04. Решил я попробовать в ней программировать контроллеры AVR на языке Си.
На просторах интернета везде советуют ставить Eclipse или KontrollerLab, но это не наш метод. Мы будем работать из командной строки.

Устанавливаем gcc-avr, avr-libc, avrdude.
$sudo apt-get install gcc-avr avr-libc avrdude

Создадим в корне системы папочку под названием AVR (путь к папке: /AVR). В качестве редактора я использовал gedit. В нем напишем свой код, например такой:

#include

#include
#include
int main(void)
DDRx=0xff;
while (1)
PORTx=0xff;
_delay_ms(100);
PORTx=0x00;
_delay_ms(100);
>
>

Сохраняем наш текст с расширением main.c в папочке AVR (путь к файлу: /AVR/main.c).
Компиляция кода

Запустим в терминале:
avr-gcc -mmcu=atmega8 -I. -gdwarf-2 -DF_CPU=8000000UL -Os -o /AVR/main.o /AVR/main.c

avr-gcc — компилятор,
-mmcu=atmega8 — наш контроллер atmega8,
-DF_CPU=тактовая частота в Гц,

Как программировать в Linux на Си и Gambas3


-Os -Оптимизатор кода,
-o /AVR/main.o — выходной файл с расширением .o который получим из .c,
/AVR/main.c — наш си файл.

Не забываем работать под root иначе система не пустит.
Enter и если зайдем в наш каталог /AVR то увидим файлик с расширением .o.

Источник: avr-prog.blogspot.com

Настройка рабочего окружения в Linux для программирования микроконтроллеров AVR

В этой статье мы рассмотрим шаги, которые нужно предпринять, чтобы получить рабочую среду для программирования микроконтроллеров архитектуры Atmel AVR на языке Си в Linux. Мы адресуем эту статью в большей степени новичкам в Linux, поэтому обратим внимание на некоторые моменты, которые продвинутым пользователям могут показаться элементарными.

Читайте также:
Программа radiant как пользоваться

Дистрибутивов Linux существует огромное количество, мы будем исходить из того, что вы используете Debian или один из дистрибутивов, основанных на Debian, например популярный дистрибутив Ubuntu. В дистрибутивах, основанных не на Debian, изменится только процедура установки программных пакетов. Мы будем использовать только свободное программное обеспечение, с открытым исходным кодом и, разумеется, полностью бесплатное.

Без чего не обойтись

Необходимый минимум программного обеспечения, которое нам понадобится:

gcc-avr — это та часть мощной GNU Complier Collection (GCC), которая будет осуществлять кросс-компиляцию для целевой архитектуры микроконтроллеров AVR. GCC используется для сборки самого Linux, он поддерживает стандарты языка Си ISO C90 (ANSI-C), ISO C99, а также собственные расширения языка Си. GCC поддерживает огромное количество архитектур процессоров. Код, скомпилированный с помощью GCC для одной из платформ, потребует минимальных правок (или не потребует правок вообще) при компиляции для другой целевой платформы.

binutils-avr — ассемблер, компоновщик и некоторые полезные утилиты.

Работа с компилятором GCC C++ в Linux.

avr-libc — стандартная библиотека Си для Atmel AVR.

avrdude — утилита для работы с программаторами.

Это необходимый минимум для создания приложений для AVR и прошивки микроконтроллеров. Для отладки пригодятся следующие пакеты:

gdb-avr — отладчик для AVR.

avarice — интерфейс между avr-gdb и AVR JTAG ICE.

simulavr — симулятор Atmel AVR.

Чтобы установить нужные программные пакеты, откроем терминал и выполним следующую команду:

sudo apt-get install gcc-avr binutils-avr avr-libc avrdude gdb-avr avarice simulavr

Подождем некоторое время, пока пакеты будут загружены из репозитория и установлены и посмотрим, что теперь есть хорошего в нашей системе:

ls /usr/bin | grep avr

Это список программ, которые мы получили. Удобство использования Linux заключается не только в том, что все необходимое мы загрузили и установили одной командой, но и в том, что у нас теперь есть исчерпывающа справка по использованию этих инструментов. Чтобы воспользоваться этой справкой, достаточно набрать в терминале

Читайте также:
Как сделать спутник в кербал спейс программ

man

Пробегите глазами, например, man avr-gcc, man avr-objdump, man avrdude. Нажмите клавишу ‘h’, когда находитесь внутри команды man, чтобы получить список клавиш для перемещения по странице справки.

В принципе, того, что у нас есть сейчас, достаточно для того, чтобы заниматься разработкой для AVR, используя любой текстовый редактор. Тем, кто хорошо знает Linux и способен написать удобные псевдонимы команд или скрипты, чтобы не писать каждый раз изрядное количество опций к командам, возможно, больше ничего и не понадобится. Но большинству пользователей, думаю, хотелось бы использовать удобную графическую среду разработки, позволяющую писать код, компилировать, отлаживать и загружать его в микроконтроллер.

Интегрированная среда разработки

Что полезно знать начинающему в Си/Си++, устанавливаем инструментарий ГНУ/Си и ГНУ/Си++ в ОС Линукс дистрибутива Дебиан.

Всем, доброго утречка, с вами Мирра Андрюхан. В этой статье, мы с вами рассмотрим установку нужного набора ПО для компиляции и сборки программ из исходных кодов. Так что, теперь будем переходить от слов к делу.

Для начала упомянусь, что дистрибутив Дебиан имеет дружественный интерфейс работы, но это не значит, что он каждый раз водит вас за ручку. Но, в отличие от других дистрибутивов он гораздо легче в освоении ОС Линукс. Я, к примеру дома применяю Linux Mint, который является потомком дистрибутивов Дебиан и Убунту, к тому же Убунту тоже потомок Дебиан, только со своим уклоном, а Минт (Мятный Линукс) это доработанная Убунту похожая на Седьмую Винду. Однако, для нашего обучения в данном цикле-статей будем применять Дебиан.

При этом, учитывая что в ОС ГНУ/Линукс большинство ПО может собираться из исходников, то установка нужных программ для наших потребностей не составит и труда, но чтобы у вас не было проблем с установкой, сделайте, как у меня ниже.

Читайте также:
Программа новое поколение выбирает

Источник: andryuhan.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru