реклама на сайте
подробности

 
 
> Подпрограмма записи страницы flash памяти
Karl
сообщение Mar 2 2006, 05:11
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 179
Регистрация: 4-02-05
Пользователь №: 2 429



У кого - нибудь есть исходники подпрограммы записи страницы flash памяти на IAR? Начал писать свою и столкнулся с трудностями: команда spm использует регистровую пару Z. Я же не могу записать в нее нужные данные. Структура
#pragma location=30
__no_init char page_addr;
не работает. Неужели придется писать кусок на ассемблере?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Aleks17
сообщение Mar 2 2006, 05:25
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 238
Регистрация: 17-01-05
Из: Новосибирск
Пользователь №: 2 003



1) А чем вас так пугает ассемблер?

2) возьмите готовую (от Atmel) библиотеку для записи flash

Например во вложении, если лень на Atmel-е искать. Там в папке flash лежит как раз то что нужно.

Совмещать СИ и ассемблер надеюсь умеете.
Прикрепленные файлы
Прикрепленный файл  at90can128_lib_mcu_0_0_3.zip ( 241.44 килобайт ) Кол-во скачиваний: 71
 
Go to the top of the page
 
+Quote Post
Karl
сообщение Mar 2 2006, 05:56
Сообщение #3


Частый гость
**

Группа: Свой
Сообщений: 179
Регистрация: 4-02-05
Пользователь №: 2 429



Спасибо за ответы.

Цитата(Aleks17 @ Mar 2 2006, 10:25) *
1) А чем вас так пугает ассемблер?


Ассемблер не пугает ничем. Писал на нем много. А вот по вопросу совмещения си и асма... В иаре кроме структуры asm("...") других способов пока не знаю.
Go to the top of the page
 
+Quote Post
Aleks17
сообщение Mar 2 2006, 08:30
Сообщение #4


Местный
***

Группа: Свой
Сообщений: 238
Регистрация: 17-01-05
Из: Новосибирск
Пользователь №: 2 003



Цитата(Karl @ Mar 2 2006, 11:56) *
Спасибо за ответы.

Цитата(Aleks17 @ Mar 2 2006, 10:25) *

1) А чем вас так пугает ассемблер?


Ассемблер не пугает ничем. Писал на нем много. А вот по вопросу совмещения си и асма... В иаре кроме структуры asm("...") других способов пока не знаю.




Создаете отдельный ассемблерный файл, объявляете PUBLIC имена функций.

В си их прописываете как extern "C" myfunction() и работаете.

Посмотрите хелп, там просто и доступно описано какие рег-ры можно использовать и как передавать параметры.
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st July 2025 - 05:55
Рейтинг@Mail.ru


Страница сгенерированна за 0.01495 секунд с 7
ELECTRONIX ©2004-2016