Страница 3 из 5
Re: Ассемблерная вставка в FLProg
Добавлено: 04 апр 2025, 12:38
aidar_i
В какой версии программы работаете?
Re: Ассемблерная вставка в FLProg
Добавлено: 04 апр 2025, 12:45
dstrufanov
Сообщение удалено
Re: Ассемблерная вставка в FLProg
Добавлено: 04 апр 2025, 13:01
kilemch5
dstrufanov писал(а): 03 апр 2025, 09:48
dstrufanov писал(а): 22 мар 2025, 09:41
Думаю, что надо писать библиотеки на асме и к ним обращаться...
Попробовал. В библиотеках создал папку с двумя файлами .h (где объявляется функция с двумя переменными):
Код: Выделить всё
#ifndef BlackLogic_h
#define BlackLogic_h
//#include "Arduino.h"
bool LogicalAnd(bool A1, bool A2);
#endif
и .cpp (собственно код на асме самой функции LogicalAnd(логическое И)):
Код: Выделить всё
#include "BlackLogic.h"
bool LogicalAnd(bool A1, bool A2)
{
bool B;
asm volatile
( //
"cli \n\t" //
"lds r24,%1 \n\t" //в R24 загружаем переменную I1
"lds r25,%2 \n\t" //в R25 загружаем переменную I2
"and r24,r25 \n\t" //делаем логическое сложение, результат в R24
"sts %0,r24 \n\t" //отправляем результат в переменную O
"sei \n\t" //
: "=m" (B) //
: "m" (A1), //
"m" (A2) //
: "r24","r25" //
);
return B;
}
Компилятор ругается на строку со скобкой и точкой с запятой, которые закрывают аргументы функции asm:
2025-04-03_12-29-49.png
Что только не делал, не могу понять, в чем проблема
ПС: 3 раза вызывается функция - 3 раза он ругается
ППС: Оказалось, что все аргументы функции asm он считает одной строкой и ругается на команды с адресацией переменных
точно библиотека соответствует посту про библиотеку?
просто в .cpp нет ни слова про "Y"
Re: Ассемблерная вставка в FLProg
Добавлено: 04 апр 2025, 13:07
dstrufanov
Сообщение удалено
Re: Ассемблерная вставка в FLProg
Добавлено: 04 апр 2025, 14:34
kilemch5
dstrufanov писал(а): 04 апр 2025, 13:07
kilemch5 писал(а): 04 апр 2025, 13:01
точно библиотека соответствует посту про библиотеку?
просто в .cpp нет ни слова про "Y"
"Y" нет, а компилятор ругается, где он его нашел, я не знаю
ПС: когда закомментировал строки асма с обращением к переменным, компиляция прошла
таки где был "Y"?
Re: Ассемблерная вставка в FLProg
Добавлено: 04 апр 2025, 14:59
dstrufanov
Сообщение удалено
Re: Ассемблерная вставка в FLProg
Добавлено: 05 апр 2025, 20:19
dstrufanov
Сообщение удалено
Re: Ассемблерная вставка в FLProg
Добавлено: 06 апр 2025, 14:18
dstrufanov
Сообщение удалено
Re: Ассемблерная вставка в FLProg
Добавлено: 06 апр 2025, 18:49
dstrufanov
Сообщение удалено
Re: Ассемблерная вставка в FLProg
Добавлено: 09 апр 2025, 15:48
dstrufanov
Сообщение удалено
Re: Ассемблерная вставка в FLProg
Добавлено: 10 апр 2025, 09:30
dstrufanov
Сообщение удалено
Re: Ассемблерная вставка в FLProg
Добавлено: 10 апр 2025, 10:38
dstrufanov
Сообщение удалено
Re: Ассемблерная вставка в FLProg
Добавлено: 10 апр 2025, 15:17
dstrufanov
Сообщение удалено
Re: Ассемблерная вставка в FLProg
Добавлено: 12 апр 2025, 20:28
dstrufanov
Сообщение удалено
Re: Ассемблерная вставка в FLProg
Добавлено: 15 апр 2025, 11:04
Rovki
Пришли печатные платы для вотчдога есп32. Переходники для атини есть (6 ног). Ну и сам код для вотчдог

хорошо бы
Re: Ассемблерная вставка в FLProg
Добавлено: 15 апр 2025, 13:07
dstrufanov
Сообщение удалено
Re: Ассемблерная вставка в FLProg
Добавлено: 15 апр 2025, 16:57
Rovki
Хорошо, проверьте пожалуйста
Re: Ассемблерная вставка в FLProg
Добавлено: 16 апр 2025, 07:50
dstrufanov
Сообщение удалено
Re: Ассемблерная вставка в FLProg
Добавлено: 23 апр 2025, 09:25
dstrufanov
Сообщение удалено
Re: Ассемблерная вставка в FLProg
Добавлено: 05 май 2025, 10:37
dstrufanov
Сообщение удалено