Форум программистов, компьютерный форум, киберфорум
Наши страницы
Микроконтроллеры Atmega AVR
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.76/17: Рейтинг темы: голосов - 17, средняя оценка - 4.76
JiskDykkir
0 / 0 / 0
Регистрация: 12.11.2010
Сообщений: 74
#1

GCC-AVR Linux

07.05.2012, 23:15. Просмотров 3039. Ответов 4
Метки нет (Все метки)

Вот такая констукция
Код
#asm
.equ __y2s_port=0?12 ;PORTD
.equ __sda_bit=0
.equ __scl_bit=1
#endasm
компилятор не переваривает, как изменить для gcc-avr или может библиотека нужна какая?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.05.2012, 23:15
Ответы с готовыми решениями:

ATmega8. AVR-GCC в Linux Ubuntu
Воспользовался парой известных туториалов по этим микроконтроллерам и...

Define в avr-gcc под linux
Для унификации кода создал макросы #define BUTTONPORT PORTC #define...

компиляция avr-gcc
Народ подскажите как компилировать проекты написанные с помощью LUFA. 1 из...

Asm вставки в AVR GCC
Есть у кого-то описание как писать эти _страшные_ вещи? Конструкция...

avr gcc, ds18b20, lcd3310
Добрый день. Есть у меня программа, которая выводит на дисплей от нокии 3310...

4
buy
4 / 4 / 0
Регистрация: 12.03.2013
Сообщений: 24
07.05.2012, 23:43 #2
там у вас вместо икса в 0х12 стоит символ крестика. да и текст ошибки могли бы и прикрепить
0
JiskDykkir
0 / 0 / 0
Регистрация: 12.11.2010
Сообщений: 74
08.05.2012, 00:04 #3
Код
avr-gcc -c -mmcu=atmega8 -I. -gdwarf-2 -DF_CPU=4000000UL -Os -funsykned-char -funsykned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wundef -Wa,-adhlns=./main.lst -I"/media/whs-work/AVR/avrlib" -std=gnu99 -Wundef -MMD -MP -MF .dep/main.o.d main.c -o main.o
main.c:67:2: error: неверная директива препроцессора: #asm
main.c:68:4: error: expected identifier or ‘(’ before ‘.’ token
main.c:71:2: error: неверная директива препроцессора: #endasm
0
omooro
0 / 0 / 0
Регистрация: 11.06.2010
Сообщений: 351
08.05.2012, 00:30 #4
Цитата Сообщение от JiskDykkir
Вот такая констукция
Код:
#asm
.equ __y2s_port=0?12 ;PORTD
.equ __sda_bit=0
.equ __scl_bit=1
#endasm

компилятор не переваривает, как изменить для gcc-avr или может библиотека нужна какая?

1. Поиск по gcc inline assembler
2. Можно положить это в отдельный .s файл, пройтись по нему ассемблером (man as) и слинковать (man ld).
3. Неясно в чем задача, и из-за этого кажется, что вся эта конструкция не нужна
0
_kuordyomomkit
0 / 0 / 0
Регистрация: 01.04.2011
Сообщений: 177
09.05.2012, 12:09 #5
Во первых не #asm .... #endasm, а asm(......).
Далее не .equ, а #defymi.
Более подробно здесь http://www.nongnu.org/avr-libc/usir-man ... e_asm.html
0
09.05.2012, 12:09
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.05.2012, 12:09

AVR GCC проблема с UART
решил вот лампочками помигать - ambilight сделать - и вот на грабли наткнулся...

забавное поведение avr-gcc
Решил тут запилить маленький проектик на mega8 (измеряем пару напряжений и...

GCC не видит библиотеки avr
Здравствуйте До этого программировал на Winavr, все программы компилировались...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru