ARDUINO Помощь с изменением OPTIBOOT

Johnson

✩✩✩✩✩✩✩
4 Ноя 2020
2
0
В общем суть такая, очень надо изменить бутлоадер.

А потом в Main через асемблерную вставку получить число обратившись по адресу к функции которая вернет число
Я пока не понимаю как вызвать функцию(

Кто знает помогите, пожалуйста.
Заранее спасибо.
 
Изменено:

uni

✩✩✩✩✩✩✩
9 Ноя 2020
2
2
Если известен тип указателя на функцию, то это делается так:

Использование указателя на функцию:
// Описание типа указателя на функцию, которая принимает один аргумент типа uint8_t и возвращает uint8_t.
typedef uint8_t ( * funcptr )( uint8_t arg );

// Указываем адрес функции.
funcptr myfunc = ( funcptr ) 0xF000U;

// Вызов функции.
uint8_t ret = myfunc(1);
 
  • Лойс +1
Реакции: Roden и Johnson

Johnson

✩✩✩✩✩✩✩
4 Ноя 2020
2
0
Если известен тип указателя на функцию, то это делается так:

Использование указателя на функцию:
// Описание типа указателя на функцию, которая принимает один аргумент типа uint8_t и возвращает uint8_t.
typedef uint8_t ( * funcptr )( uint8_t arg );

// Указываем адрес функции.
funcptr myfunc = ( funcptr ) 0xF000U;

// Вызов функции.
uint8_t ret = myfunc(1);
Спасибо большое, но я уже разобрался)
Вы второй человек кто ответил нормально, а не начал гнать, спасибо за понимание

Вот единственное в чем я не разобрался — это как достать адрес из памяти, но я использовал программу reavr и смотрел адрес. Мне кажется, что можно как-то проще
 

uni

✩✩✩✩✩✩✩
9 Ноя 2020
2
2
Нужно объяснить подробнее и конкретнее.