Если Вы хотите понимания физического устройства компилятора - берите его исходники (благо, они доступны) и читайте - это самое точное и полное описание - точнее и полнее нет нигде. Я всегда делаю именно там и с библиотеками, и со всем остальным - мне быстрее посмотреть текст и знать как оно реально сделано, чем читать чьи-то мнения о том, как оно должно было быть сделано.
Но Ваша проблема в том, что Вы пока просто не знаете языка. А когда не знаешь языка, начинать надо с его изучения, а не тонкостей компиляции.
Добрый день от начинающего Ардуинчика!
1. А подскажите пожалуйста, вставки ассемлерного кода поддерживаются?
Уж больно много кода генерируется, на ассемблере явно будет меньше.
С AVR не знаком, писал на ассемблере для всех Intel до версии 80386, ну и на PIC немного,
и 6802. Но было это давно, очень давно.
2. Не пойму как в ARDUINO IDE библиотеки прописывать системные и пользовательские, в мои времена было всё проще -
SET LIB C:\LIB )))
Собираю такую конструкцию: https://github.com/k3ng/k3ng_rotator_controller
Требует версии 1.6.7, удалось скомпилировать в 1.6.5 поправить для моего I2C китайского дисплейчика, залить и, оно даже работает )))
Но с библиотеками косяк какой-то, часть библиотек пришлось закинуть в существующие, часть в папку библиотек рабочих проектов (скетчей), как-то враскорячку всё ...
И убивает конечный код по объему, 30 килобайт для несложных задач это слишком )))
PS мой драйвер для чтения любых гибких дисков на INTEL 8086 и далее был всего 3.6кб, это когда Альберто Паскуале не написал еще свой знаменитый...
2. Не пойму как в ARDUINO IDE библиотеки прописывать системные и пользовательские, в мои времена было всё проще -
Библиотек в общипринятом смысле здесь нет (в смысле они не поддерживаются). То, что здесь называется бибилиотеками - это куски исходников, которые надо включать в проект. Как именно - сильно зависит от версии IDE. осваивайтесь :)
Что до размера кода. IDE тащит много чего в целом полезного, но нужного далеко не в каждом проекте. Если это всё не нужно, программируйте в AVR-студио. Там автоматом ничего не тщится, что Вы сами включили, то и Ваше.
Что-то не стала AVR-студио, не нравится ей мой intel графический адаптер!
Моей тоже не нравился. Поставил второй раз (не снося первого), по дороге установка загнулась. Запустил Uninstall - спросила, "тебе разинсталлировать или починить?". Сказал "почини" - стала как надо и отлично работает.
Господа владельцы DUE, немного не в тему, но может, подскажите проект по реализации генератора прямоугольных импульсов от 0 до 4MHz с максимально точной регулировкой частоты и скважностью.
Гугл в помощь не предлагать, ибо он уже не справился :)
ничего не отпадёт. я знаю что препроцессор заменяет defin ы на значения, что куда и как непонятно
В учебниках по С/С++ почти всё абстрактно и ничего не сказано что на самом деле делает та или иная конструкция. или например почему
enum{
a = 100,
b = 200;
}; занимает сильно меньше памяти чем
#define a 100
#define b 200
Где физически они хранятся и как выглядят? в машинном коде? Где в контроллере? в памяти программ?
Хотя может я найду ответы на другие свои вопросы, выглядяд очень интересно, особенно 2 книга, Спасибо )
ничего не отпадёт.
Ну, значит, Вы лучше меня знаете, что в этих книгах написано, а что нет, так что "полный вперёд, ветер в спину!" :)))
а какие книги будут после этих 2х в списке :)))? В плане ближе к физическому пониманию конструкций языка?
Просто для PC может и не особо важно ОЗУ и производительность тк ресурса дофига на данный момент, а вот для контроллеров это актуально
Да, дело Ваше.
Если Вы хотите понимания физического устройства компилятора - берите его исходники (благо, они доступны) и читайте - это самое точное и полное описание - точнее и полнее нет нигде. Я всегда делаю именно там и с библиотеками, и со всем остальным - мне быстрее посмотреть текст и знать как оно реально сделано, чем читать чьи-то мнения о том, как оно должно было быть сделано.
Но Ваша проблема в том, что Вы пока просто не знаете языка. А когда не знаешь языка, начинать надо с его изучения, а не тонкостей компиляции.
Впрочем, я не навязываюсь, Вам жить.
я не пытаюсь сразу компилятор изучать, но В процессе изучения Книг С/С++ если чтото не понятно обращаться и смотреть что и как сделано на самом деле
Добрый день от начинающего Ардуинчика!
1. А подскажите пожалуйста, вставки ассемлерного кода поддерживаются?
Уж больно много кода генерируется, на ассемблере явно будет меньше.
С AVR не знаком, писал на ассемблере для всех Intel до версии 80386, ну и на PIC немного,
и 6802. Но было это давно, очень давно.
2. Не пойму как в ARDUINO IDE библиотеки прописывать системные и пользовательские, в мои времена было всё проще -
SET LIB C:\LIB )))
Собираю такую конструкцию: https://github.com/k3ng/k3ng_rotator_controller
Требует версии 1.6.7, удалось скомпилировать в 1.6.5 поправить для моего I2C китайского дисплейчика, залить и, оно даже работает )))
Но с библиотеками косяк какой-то, часть библиотек пришлось закинуть в существующие, часть в папку библиотек рабочих проектов (скетчей), как-то враскорячку всё ...
И убивает конечный код по объему, 30 килобайт для несложных задач это слишком )))
PS мой драйвер для чтения любых гибких дисков на INTEL 8086 и далее был всего 3.6кб, это когда Альберто Паскуале не написал еще свой знаменитый...
1. А подскажите пожалуйста, вставки ассемлерного кода поддерживаются?
Да.
http://www.atmel.com/webdoc/AVRLibcReferenceManual/inline_asm.html
2. Не пойму как в ARDUINO IDE библиотеки прописывать системные и пользовательские, в мои времена было всё проще -
Библиотек в общипринятом смысле здесь нет (в смысле они не поддерживаются). То, что здесь называется бибилиотеками - это куски исходников, которые надо включать в проект. Как именно - сильно зависит от версии IDE. осваивайтесь :)
Что до размера кода. IDE тащит много чего в целом полезного, но нужного далеко не в каждом проекте. Если это всё не нужно, программируйте в AVR-студио. Там автоматом ничего не тщится, что Вы сами включили, то и Ваше.
Что-то не стала AVR-студио, не нравится ей мой intel графический адаптер!
По ассемблеру понятно!
Тут 64 битная система, ругается на неподписанные драйверы от атмел
Что-то не стала AVR-студио, не нравится ей мой intel графический адаптер!
Моей тоже не нравился. Поставил второй раз (не снося первого), по дороге установка загнулась. Запустил Uninstall - спросила, "тебе разинсталлировать или починить?". Сказал "почини" - стала как надо и отлично работает.
Всем доброго времени суток!
Господа владельцы DUE, немного не в тему, но может, подскажите проект по реализации генератора прямоугольных импульсов от 0 до 4MHz с максимально точной регулировкой частоты и скважностью.
Гугл в помощь не предлагать, ибо он уже не справился :)