LINUX.ORG.RU

GNU/Linux for AVR


0

1

Вот решил выложить свой скрин. На Linux перешел недавно, вроде разобрался, всё понятно и легко.

Щас пробую разобратся с программированием микроконтроллеров AVR Atmel в среде Linux, (впринципе в винде только и это держало). Установил компилятор AVR-GCC, программатор AVRDUDE, покурил немного мануалов, помучил гугла на эту тему... В обшем потихоньку получается.

На скрине дефолтовая убунта, немного изменил тему и поставил LCD сглаживание шрифтов, шрифты и вид меня вполне устраивают, так что можете не пинать по этому поводу. Код редактирую пока в стандартном GEDIT с плагином External Tools.

Пробую ковырять либу для LCD дисплея, которую стянул отсюда

http://winavr.scienceprog.com/example-avr-projects/avr-gcc-4-bit-and-8-bit-lcd-library.html

Кстати если кого заинтересует то тамже лежит и пример к этой либе.

Оригинальный PNG скриншот здесь: http://img65.imageshack.us/img65/4562/screen4lorat7.png

Оригинальная фотка здесь: http://img177.imageshack.us/img177/6456/photo4lorbr1.jpg

Вроде всё, можете критиковать...

>>> Просмотр (2048x640, 208 Kb)

Re: GNU/Linux for AVR

Дефолтно и юзабельно. Шрифты хоть и мыльные, но смотрятся отлично! Напрягает только кислотно-зеленый в терминале.

Neko ()

Re: GNU/Linux for AVR

> Код редактирую пока в стандартном GEDIT с плагином External Tools.

Могу порекомендовать SciTE - лёгкий редактор на базе Scintilla. Поддерживает кучу языков, работает очень быстро, весит мало. Сборка проекта по Ctrl-F7, прошивка avrdude по Ctrl-1.

Я в своё время для него накропал подсветку синтаксиса для ассемблера AVR, скрин здесь был (http://www.linux.org.ru/view-message.jsp?msgid=1921535).

Если будешь смотреть - на вопросительные знаки в имени файла внимание не обращай - это следствие кривой поддержки KOI-8 в интерфейсе (в файлах нормально). Сейчас переехал на юникод, проблема отвалилась...

Вообще, скрин, отражающий процесс работы, смысла критиковать нет - нравится, значит ничего менять не стоит.

cache ★★ ()

Re: GNU/Linux for AVR

Прикольно, а там подсветка есть?

FiXer ★★☆☆☆ ()
Ответ на: Re: GNU/Linux for AVR от FiXer

Re: GNU/Linux for AVR

На этом дисплее есть, просто она у меня на малой яркости подключенна.

avr_phreaker ()
Ответ на: Re: GNU/Linux for AVR от cache

Re: GNU/Linux for AVR

> Вообще, скрин, отражающий процесс работы, смысла критиковать нет

ППКС

boombick ★★★★★ ()

Re: GNU/Linux for AVR

Класс.

Не совсем по теме, но во сколько примерно встал дисплей с платой и программатором? По расходникам :)

tensai_cirno ★★★★★ ()
Ответ на: Re: GNU/Linux for AVR от tensai_cirno

Re: GNU/Linux for AVR

> Не совсем по теме, но во сколько примерно встал дисплей с платой и программатором? По расходникам :)

Смотря что хочешь сделать. Можно в 400 рублей уложиться.

cache ★★ ()

Re: GNU/Linux for AVR

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

lester ★★★★ ()

Re: GNU/Linux for AVR

о... тру ембеддед задротство.

Muromec ☆☆ ()
Ответ на: Re: GNU/Linux for AVR от cache

Re: GNU/Linux for AVR

Небольшой текстовый монитор. Применений ему может быть целая тонна ^_~

tensai_cirno ★★★★★ ()
Ответ на: Re: GNU/Linux for AVR от tensai_cirno

Re: GNU/Linux for AVR

Собственно, за 400, или около того, рублей - любой МЭЛТовский индикатор (до 250 рублей - это, скорее всего, 2 строки по 16 символов), контроллер типа AtMega48 (самый дешёвый из тех, что стоит брать) и MAX232 или аналог для сопряжения с последовательным портом. Если добавить ещё немного денег - можно вместо MAX232 взять FT232 для сопряжения с USB, индикатор графический (например, MT-12232, 122x32 точки, или МТ-12864), ну и AtMega88 или 168 - там памяти больше, а ну как аппетит покодить проснётся. :)

cache ★★ ()
Ответ на: Re: GNU/Linux for AVR от Spir0

Re: GNU/Linux for AVR

Офигенная штука. Жаль, под QT... Но, в любом случае, поставлю поковырять.

cache ★★ ()

Re: GNU/Linux for AVR

посмотри какой код генерирует компиль C и юзай ASM

Ex ★★ ()

Re: GNU/Linux for AVR

LCD_Lib_DEMO стоило бы переименовать

explosion ()
Ответ на: Re: GNU/Linux for AVR от Ex

Re: GNU/Linux for AVR

Архитектура AVR разработана с учётом возможного использования компиляторов. Грамотный код на C, как правило, даёт очень небольшой проигрыш по времени, и чуть хуже, но всё равно приемлемо - по объёму кода. А скорость написания для некритичных ко времени и объёму применений - ускоряет.

Чисто для справки - я лично пишу для AVR только на ассемблере. Но справедливости ради - C там вполне к месту.

cache ★★ ()
Ответ на: Re: GNU/Linux for AVR от cache

Re: GNU/Linux for AVR

>>Чисто для справки - я лично пишу для AVR только на ассемблере. Но справедливости ради - C там вполне к месту.

разве что для написания вот таких демок :)

Ex ★★ ()
Ответ на: Re: GNU/Linux for AVR от cache

Re: GNU/Linux for AVR

>Могу порекомендовать SciTE - лёгкий редактор на базе Scintilla. Поддерживает кучу языков, работает очень быстро, весит мало.

Работает быстро? Может, у меня особенная версия, но 8 небольших PHP файлов он открывает невероятно долго по сравнению с Kate и Geany. Я уж молчу о скорости сохранения файлов сессии...

anonymous ()
Ответ на: Re: GNU/Linux for AVR от Ex

Re: GNU/Linux for AVR

Скорее, это ассемблер - только для жёсткого реального времени и тотальной экономии памяти (например, в Tiny). Всё остальное вполне можно писать на С, весь вопрос в желании и квалификации программиста.

cache ★★ ()

Re: GNU/Linux for AVR

Ооо, раз тут такая тема... Я тоже недавно начал осваивать AVR и МК в целом, возникли проблемы. Кто шарит и кому не сложно - почитайте тред вот тут http://forum.cxem.net/index.php?showtopic=34483

Реально тяжело найти людей, увлекающихся разработкой для МК в Linux... Буду признателен за любую помощь :)

TwisteR ★★ ()
Ответ на: Re: GNU/Linux for AVR от TwisteR

Re: GNU/Linux for AVR

Проблема наверняка со звоном/наводками. У меня такой же программатор работал нормально, до сих пор валяется в ящике. Если надо, могу отдать (в Москве).

Рискну также дать рекомендацию: если есть возможность потратить 1000-1500 рублей - купи фирменный программатор из серии AVR ISP. Они поддерживаются avrdude и работают, как часы. У меня, например, ATAVRISP MKII.

cache ★★ ()
Ответ на: Re: GNU/Linux for AVR от cache

Re: GNU/Linux for AVR

Я собрал программатор по этой схеме, работает он отлично, никогда не глючит... Железяка простая, но достойная. Без проблем работает с AVRDUDE и PonyProg.

avr_phreaker ()
Ответ на: Re: GNU/Linux for AVR от TwisteR

Re: GNU/Linux for AVR

(чегой-та регистрация отвалилась - пока побуду анонимусом) В работе использую avr-gcc 4.4.0 из-под Code::Blocks, а программатором работает немного переделанный www.fischl.de/usbasp/ (добавил полную гальваническую развязку, включая питание зашиваемого МК) + avrdude 5.5. Все крутится на дебиане. Из замеченных глюков было "заворачивание" адресов при переходе кода через 64К. В последнем avrdude это вроде как пофиксили.

Касательно же твоей проблемы со сбоями в программировании причины тут уже называли - "звон" в линии или нехватка быстродействия МК/отруб его внутреннего RC-генератора. Последнее лечилось подачей XTAL'а пониженной частоты (единицы килогерц) - этого хватало, чтобы восстановить нужные фузы и снова завести внутренний генератор ("оживлял" таким образом tiny и mega с криво прошитыми тактовыми фузами).

anonymous ()
Ответ на: Re: GNU/Linux for AVR от avr_phreaker

Re: GNU/Linux for AVR

Зависит от сборки. Если где-то напутаешь, или неаккуратно сделаешь - начинаются проблемы.

Вот софтина для заливки кода, которой я пользовался, когда у меня был компьютер с LPT: http://www.ln.com.ua/~real/avreal/

Команднострочная, есть бинарники под Windows, Linux, FreeBSD. Поддерживает все AVR, которые умеют ISP - то есть, все современные. Куча опций, в том числе умение генерировать тактовую для прошивки и питать прошиваемый контроллер от параллельного порта. Схема простейшего адаптера для программирования (пять проводков) там же.

cache ★★ ()

Re: GNU/Linux for AVR

> Если добавить ещё немного денег - можно вместо MAX232 взять FT232 для сопряжения с USB

Если нужно USB - проще сразу поставить что-то из AT90USB*

> Реально тяжело найти людей, увлекающихся разработкой для МК в Linux... Буду признателен за любую помощь :)

Ха-ха! А кто-то не увлекается, просто работает за получку ;-) _Профессиональный_ форум http://electronix.ru/forum/index.php?s=2bd702aa7d710bc0472b7f46e855c815&s...

> Рискну также дать рекомендацию: если есть возможность потратить 1000-1500 рублей - купи фирменный программатор из серии AVR ISP. Они поддерживаются avrdude и работают, как часы.

У меня несколько самопальных sp12 тоже работают как часы, прошиваю avrdude.

anonymous ()
Ответ на: Re: GNU/Linux for AVR от cache

Re: GNU/Linux for AVR

ktechlab, судя по всему иде для разработки под контроллеры, но я не спец в сём…

wfrr ★★☆ ()

Re: GNU/Linux for AVR

Красивый и аккуратный скрин. Ничего лишнего, всё очень удобно и эргономично, имхо.

ahonymous ()
Ответ на: Re: GNU/Linux for AVR от cache

Re: GNU/Linux for AVR

>Скорее, это ассемблер - только для жёсткого реального времени и тотальной экономии памяти (например, в Tiny). Всё остальное вполне можно писать на С, весь вопрос в желании и квалификации программиста.

Я для тини писал на C++ и тож нормально :)

fpga ()

Не в тему

Кстати, никто не знает что с avrfreaks.net случилось?

anonymous ()

Re: GNU/Linux for AVR

"Special" - специальный
"Specially" - специально

eggyok ()
Ответ на: Re: GNU/Linux for AVR от eggyok

Re: GNU/Linux for AVR

> "Specially" - специально

Хотя неграмотные англичане, пожалуй, сказали бы "especially"

anonymous ()

Re: GNU/Linux for AVR

Айяяй! "Ембенденд программерс шуд невер ретурн фром main()." (ц) avrfreaks.net

А так зачёт и, как говорится, велкам.

marsijanin ★★ ()
Ответ на: Re: GNU/Linux for AVR от anonymous

Re: GNU/Linux for AVR

>> Хотя неграмотные англичане, пожалуй, сказали бы "especially"

"especially" -- особенно, тем более

eggyok ()

Re: GNU/Linux for AVR

Как в зад контроллер? ЛЦДшка тупо приделывается к ЛПТ + простенькая программа, там нечего ковырять, автор тупо забацал фэйк галимый, а псевдо мега-спецы обсуждают нах. В рот вам ноги.

anonymous ()
Ответ на: Re: GNU/Linux for AVR от anonymous

Re: GNU/Linux for AVR

Сам пишу на С, асм почти не использую. Если грамотно писать, то можно и в тиньку 2313 уместить столько... я обычно их использую, хватает. и цена у них конечно: в нашем городе тенька 2313 стоит 100 р, мега 8 300р. ужас :( Про индикаторы молчу

MihaelSA ()

Re: GNU/Linux for AVR

шрефты справа идеальные!

anonymous ()

Re: GNU/Linux for AVR

Хотел бы одну жизнь прожить задротом-ембедщиком.

Sphinx ★★☆☆ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.