Для Вашего примера любой доктор пропишет макрос.
Ассемблер (ASM) для AVR в вопросах и ответах
Ваш пример рабочий? Как компилятор узнает зону ответственности метки?
Для Вашего примера любой доктор пропишет макрос.
Для Вашего примера любой доктор пропишет макрос.
- Реклама
То же самое достижимо, если не пытаться впихнуть весь проект в один файл исходного кода. Если у Вас каждый файл исходного кода содержит только один функциональный блок кода, длиной не более, чем в сотню строк, то и проблем с метками у Вас не будет. Дайте возможность компоновщику потрудиться )Andrew Martin писал(а):Польза от локальных меток неоспорима, поскольку в пределах проекта может существовать сколько угодно локальных меток с одинаковыми именами. Это позволяет не нагромождать длинные имена меток.
Не ошибается только то, кто ничего не делает.
Тот, кто признает свои ошибки, на них учится.
Глупец же, упорствуя в своих заблуждениях, остается глупцом.
Тот, кто признает свои ошибки, на них учится.
Глупец же, упорствуя в своих заблуждениях, остается глупцом.
Ну так используйте для AVR GNU Toolchain. Там компоновщик точно есть.
Не ошибается только то, кто ничего не делает.
Тот, кто признает свои ошибки, на них учится.
Глупец же, упорствуя в своих заблуждениях, остается глупцом.
Тот, кто признает свои ошибки, на них учится.
Глупец же, упорствуя в своих заблуждениях, остается глупцом.
Сколько пробовал, ничего не получается.
Нет сенсея, чтобы на пальцах показал, как им пользоваться.
Нет сенсея, чтобы на пальцах показал, как им пользоваться.
- Реклама
Ну не знаю. Под Eclipse для включения в проект ассемблера в *.S файлах, вообще никаких дополнителых телодвижений не требуется, кроме изначальной настройки CDT и AVR Eclipse Plugin.
Не ошибается только то, кто ничего не делает.
Тот, кто признает свои ошибки, на них учится.
Глупец же, упорствуя в своих заблуждениях, остается глупцом.
Тот, кто признает свои ошибки, на них учится.
Глупец же, упорствуя в своих заблуждениях, остается глупцом.
http://nongnu.org/avr-libc/user-manual/ ... mdemo.htmltrofim2 писал(а):Я же просил на пальцах.
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
И по ссылке тоже про ассемблер
Не ошибается только то, кто ничего не делает.
Тот, кто признает свои ошибки, на них учится.
Глупец же, упорствуя в своих заблуждениях, остается глупцом.
Тот, кто признает свои ошибки, на них учится.
Глупец же, упорствуя в своих заблуждениях, остается глупцом.
Так там малюпасенький кусочек на асм, а всё на С, а мне надо всё на АСМ.
Если выкинуть все про C, а оставить только про ассемблер, то это и будет то, что Вы хотели.
Не ошибается только то, кто ничего не делает.
Тот, кто признает свои ошибки, на них учится.
Глупец же, упорствуя в своих заблуждениях, остается глупцом.
Тот, кто признает свои ошибки, на них учится.
Глупец же, упорствуя в своих заблуждениях, остается глупцом.
Сказано же. Если GCC на вход дать файл с расширением *.s, то он сам натравит на него GNU макроассемблер.
Не ошибается только то, кто ничего не делает.
Тот, кто признает свои ошибки, на них учится.
Глупец же, упорствуя в своих заблуждениях, остается глупцом.
Тот, кто признает свои ошибки, на них учится.
Глупец же, упорствуя в своих заблуждениях, остается глупцом.
Любым IDE поддерживающим AVR GNU toolchain. Или руками из командной строки. Или GNU make.
Если Вы хотите подключить к конкретному IDE, то смотрите, как к нему подключить GNU toolchain.
Если Вы хотите подключить к конкретному IDE, то смотрите, как к нему подключить GNU toolchain.
Не ошибается только то, кто ничего не делает.
Тот, кто признает свои ошибки, на них учится.
Глупец же, упорствуя в своих заблуждениях, остается глупцом.
Тот, кто признает свои ошибки, на них учится.
Глупец же, упорствуя в своих заблуждениях, остается глупцом.
В простейшем случае беру любой файл с расширением .asm, переименовываю на .s и запускаю командную строку. Должен получить файлы .hex (2 штуки) и .lst.
Какая будет командная строка lля запуска трансляции?
Какая будет командная строка lля запуска трансляции?
Нет, GCC на выходе даст или объектный файл или, по-умолчанию, elf. Из elf hex еще надо будет делать, при помощи avr-objcopy. Если Вы не готовы изучать GNU toolchain, воспользуйтесь готовым IDE, которое все сделает за Вас, даже вызов avrdude для заливки прошивки.
Не ошибается только то, кто ничего не делает.
Тот, кто признает свои ошибки, на них учится.
Глупец же, упорствуя в своих заблуждениях, остается глупцом.
Тот, кто признает свои ошибки, на них учится.
Глупец же, упорствуя в своих заблуждениях, остается глупцом.
Да я не готов изучать GNU toolchain и не знаю, что такое IDE.
Подскажите:
1. Какая командная строка для получения .elf?
2. Какая для преобразования elf в .hex (2 штуки) и .lst?
Подскажите:
1. Какая командная строка для получения .elf?
2. Какая для преобразования elf в .hex (2 штуки) и .lst?
1. avr-gcc xxxx.s
2. avr-objcopy -R .eeprom -R .fuse -R .lock -R .signature -O ihex xxxx.elf "xxxx.hex"
2. avr-objcopy -R .eeprom -R .fuse -R .lock -R .signature -O ihex xxxx.elf "xxxx.hex"
Не ошибается только то, кто ничего не делает.
Тот, кто признает свои ошибки, на них учится.
Глупец же, упорствуя в своих заблуждениях, остается глупцом.
Тот, кто признает свои ошибки, на них учится.
Глупец же, упорствуя в своих заблуждениях, остается глупцом.



