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

 
 
> Самопрограммирование AVR, Помогите определить причину ошибки
Len_OK
сообщение May 14 2008, 12:42
Сообщение #1


Участник
*

Группа: Новичок
Сообщений: 50
Регистрация: 5-12-07
Пользователь №: 32 986



Помогите, please! Программирую в IARe!
Возникла такая ошибка

Fatal Error[e38]: Option -H must not be defined more than once: -H1895
Никак не могу её исправить!
Если кто-нибудь сталкивался, подскажите что бы это могло быть?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Len_OK
сообщение May 22 2008, 14:13
Сообщение #2


Участник
*

Группа: Новичок
Сообщений: 50
Регистрация: 5-12-07
Пользователь №: 32 986



DoSpm
//*************fill temp bufer*************

PUSH R31
PUSH R30


ldi r18,96// load data from mem
ldi r19,0
st Z,R18
std Z+1,R19

ldi R26, low(flash_data)
ldi R27, high(flash_data)
ldi R23,0x32
fill_temp:
LD R0,X+
LD R1,X+
ST Z, R0
STD Z+1,R1
wait_spm:
IN R18,0x37
MOV R19,R18
SBRC R19, 0
RJMP wait_spm


LDI R18, 1
LDI R30, flash_data
LD R20, Z
LDD R21,Z+1
mov R30, R17
LDI R31,0
MOVW R1:R0,R21:R20
OUT 0x37,R18
SPM

LDI R16,1
OUT SPMCR,R16
SPM

dec R23
dec R23
cpi R23,0
brne fill_temp



//*****************************************
//******* save data to programm memory*****
LDI R16,low(flash_adr)//load address in prog.mem.
LDI R17,high(flash_adr)
MOVW R31:R30,R17:R16

LDI R16,5
OUT SPMCR,R16
SPM
POP R30
POP R31


//*****************************************
RET
END DoSpm
Вот накалякала вот такую штуку.В результате записывается один байт, во второй просто нули и всё

Сообщение отредактировал Len_OK - May 22 2008, 14:28
Go to the top of the page
 
+Quote Post
defunct
сообщение May 22 2008, 20:57
Сообщение #3


кекс
******

Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326



Цитата
Len_OK

bb-offtopic.gif У меня к вам вопрос (точнее два вопроса).
1. Если вы не собираетесь писать программу на "C" тогда зачем пользоваться убогим иаровским ассемблером? avrasm2 в AVR-Studio гораздо более удобен и правилен "как асм".
2. Напротив, если собираетесь писать на "C", то неужели одной DoSpm( addr, data, code) недостаточно?

имея одну функцию "заправки" требуемых регистров и вызова SPM, все остальное можно оформить на C примерно в таком виде:
Код
DoSpm( page_addr, 0x0, CODE_ERASE); // <--- стререть страницу
DoSpm( page_addr, 0x0, CODE_REENABLE_RWW); // <--- разлочить RWW секцию если работаем из boot секции
for( i = 0; i < PAGE_SIZE; i++)
{
    // fill temp buffer
    DoSpm( page_addr + i,  <слово данных>, CODE_FILL_TEMP_BUF); // <-- заполнить temp буфер
}
DoSpm( page_addr, 0x0,  CODE_DO_PROGRAM ); // <--- зашить темп буфер
DoSpm( page_addr, 0x0, CODE_REENABLE_RWW); // разлочить RWW если работаем из boot секции
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Len_OK   Самопрограммирование AVR   May 14 2008, 12:42
- - Igor26   Ничего не понял. Поподробней пожалуйста. P.S. Вы...   May 14 2008, 13:01
|- - Len_OK   Цитата(Igor26 @ May 14 2008, 16:01) P.S. ...   May 14 2008, 13:05
- - Igor26   Вектора прерываний на область загрузчика переключа...   May 14 2008, 13:09
|- - Len_OK   Цитата(Igor26 @ May 14 2008, 16:09) Векто...   May 14 2008, 13:19
|- - Сергей Борщ   Цитата(Len_OK @ May 14 2008, 16:19) Я под...   May 14 2008, 14:17
|- - Len_OK   Цитата(Сергей Борщ @ May 14 2008, 17:17) ...   May 14 2008, 14:23
- - Len_OK   Вот ещё ошибочка Error[e46]: Undefined external ...   May 15 2008, 06:42
- - Igor26   А подключен к проекту хидер inavr.h или intrinsics...   May 15 2008, 06:49
|- - Len_OK   Цитата(Igor26 @ May 15 2008, 09:49) А под...   May 15 2008, 06:50
- - Igor26   Что удалось найти. Функция __AddrToZByteToSPMCR_SP...   May 15 2008, 07:41
|- - Len_OK   Обратите внимание на регистр SPMCR. В Tiny2313 он ...   May 15 2008, 07:47
- - Len_OK   никто никогда не использовал spm для Tiny?   May 15 2008, 13:12
|- - defunct   Цитата(Len_OK @ May 15 2008, 16:12) никт...   May 15 2008, 13:19
- - Len_OK   ну хоть под Tiny2313? Цитата(defunct @ May ...   May 15 2008, 13:27
|- - defunct   Цитата(Len_OK @ May 15 2008, 16:27) а вст...   May 15 2008, 13:41
|- - muravei   Цитата(Len_OK @ May 15 2008, 17:27) Ассем...   May 15 2008, 14:22
- - Igor26   Я так понял, Вы пользуютесь апнотом от AVR. Те, ко...   May 15 2008, 18:07
|- - Len_OK   Цитата(Igor26 @ May 15 2008, 21:07) Попро...   May 16 2008, 07:57
|- - defunct   Цитата(Len_OK @ May 16 2008, 10:57) Вроде...   May 16 2008, 09:38
|- - Len_OK   Цитата(defunct @ May 16 2008, 12:38) А вы...   May 16 2008, 09:48
|- - defunct   Цитата(Len_OK @ May 16 2008, 12:48) а есл...   May 16 2008, 09:55
|- - Len_OK   Цитата(defunct @ May 16 2008, 12:55) Кака...   May 16 2008, 10:17
|- - defunct   Цитата(Len_OK @ May 16 2008, 13:17) IAR4....   May 16 2008, 10:21
|- - Len_OK   [quote name='Len_OK' post='412200...   May 16 2008, 10:23
|- - defunct   Цитата(Len_OK @ May 16 2008, 13:23) Может...   May 16 2008, 10:24
|- - Len_OK   Решилась проблемка с записью во флешку ! Тепер...   May 20 2008, 09:26
- - defunct   Использовать intrinsics для tiny у меня не получил...   May 15 2008, 21:32
- - Len_OK   есть ли разница между расширениями х.s90 и х.s? Я...   May 16 2008, 10:39
- - Len_OK   Помогите разобраться почему не пишутся данные во ф...   May 22 2008, 10:29
|- - _Pasha   Цитата(Len_OK @ May 22 2008, 13:29) Помог...   May 22 2008, 11:20
- - defunct   Заполнить надо весь temp буфер. После этого писать...   May 22 2008, 11:23
- - Len_OK   Как заполнить всю страницу данными, например при в...   May 22 2008, 12:37
|- - =GM=   Цитата(Len_OK @ May 22 2008, 11:37) Как з...   May 22 2008, 13:22
|- - Len_OK   Цитата(defunct @ May 22 2008, 23:57) У ...   May 23 2008, 07:32
|- - defunct   Цитата(Len_OK @ May 23 2008, 10:32) Я кон...   May 23 2008, 10:02
|- - Len_OK   [quote name='defunct' date='May 23 200...   May 23 2008, 11:46
- - defunct   Цитатаразмер страницы указываю 32(а должно быть 16...   May 23 2008, 15:09
|- - Len_OK   Цитата(defunct @ May 23 2008, 18:09) Если...   May 26 2008, 06:21
- - defunct   Асм функция используемая вами - рабочая. Полагаю ч...   Jun 1 2008, 22:27
- - Len_OK   Цитата(defunct @ Jun 2 2008, 01:27) см ат...   Jun 2 2008, 06:08


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

 


RSS Текстовая версия Сейчас: 18th July 2025 - 16:02
Рейтинг@Mail.ru


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