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

 
 
> Warning[18]:, END of program while in include file C:\
Fynjy86
сообщение Apr 3 2008, 10:23
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 42
Регистрация: 24-03-08
Пользователь №: 36 192



Есть такая программка:
NAME slave
PUBLIC slave

slave:
RSEG CODE
MEM0: MOV.W #1100h, R12
MOV.W #0000h, R11
MOV.W #2100h, R13
MEMZERO: MOV.W @R11, 0(R12)
INCD.W R12
CMP R13,R12
JL MEMZERO
nop
RETI
END
она лежит в отдельном файлике и вызывается командой CALL из главной программы.
Вроде должно работать, но выдаётся ошибка:
Warning[18]: END of program while in include file C:\Document\..\mem0.s43
и
Error[e6]: Program module slave redeclared in file C:\Document\..\mem0.s43
Где и что нужно поправить?? maniac.gif
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
msalov
сообщение Apr 3 2008, 10:28
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 526
Регистрация: 24-08-07
Из: Беларусь, Минск
Пользователь №: 30 045



Если ваша процедура вызывается из основной программы, то RETI -- совсем не то, что надо.

Каким образом у вас связывают файл основной программы и этот?
Go to the top of the page
 
+Quote Post
Fynjy86
сообщение Apr 3 2008, 10:39
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 42
Регистрация: 24-03-08
Пользователь №: 36 192



Я хочу процедуру обнуления оперативы вынести в другой файл и прописать его через #include "xxx"
в основном файле ууу. основная программа из файла ууу обращается к подпрограмме лежащей в ххх через call
Go to the top of the page
 
+Quote Post
msalov
сообщение Apr 3 2008, 10:43
Сообщение #4


Знающий
****

Группа: Свой
Сообщений: 526
Регистрация: 24-08-07
Из: Беларусь, Минск
Пользователь №: 30 045



Цитата(Fynjy86 @ Apr 3 2008, 13:39) *
Я хочу процедуру обнуления оперативы вынести в другой файл и прописать его через #include "xxx"
в основном файле ууу. основная программа из файла ууу обращается к подпрограмме лежащей в ххх через call

Если через #include то END в конце включаемого лишний. И всё таки убедитесь что вам нужна именно инструкция reti в конце функции, а не ret

Мне кажется, обнуление сделано у вас не совем корректно, читая нулевой адрес, вы много не занулите
Код
mov @R11,0(R12)

я бы сделал
Код
mov R3,0(R12)

или
Код
mov #0,0(R12)
Go to the top of the page
 
+Quote Post
Fynjy86
сообщение Apr 3 2008, 11:02
Сообщение #5


Участник
*

Группа: Участник
Сообщений: 42
Регистрация: 24-03-08
Пользователь №: 36 192



Cвёл код к такому виду
MEM0: MOV.W #1100h, R12
MOV.W #0000h, R11
MOV.W #2100h, R13
MEMZERO: MOV.W @R11, 0(R12)
INCD.W R12
CMP R13,R12
JL MEMZERO
nop
RET
запускаю дебугер, когда доходит до команды CALL, то выдеёт ошибку
User error: illegal opcode on address 0x403Ch
хотя по этому адресу все нули и ни кокого отношения к программам он не имеет

Цитата(gotty @ Apr 3 2008, 13:43) *
Если через #include то END в конце включаемого лишний. И всё таки убедитесь что вам нужна именно инструкция reti в конце функции, а не ret

Мне кажется, обнуление сделано у вас не совем корректно, читая нулевой адрес, вы много не занулите
Код
mov @R11,0(R12)

я бы сделал
Код
mov R3,0(R12)

или
Код
mov #0,0(R12)

Возможно вы правы, но нужный мне диапазон обнуляется без продблем.
попробую Ваш код, посмотрим, если он быстрее, то попробую его применить.
Go to the top of the page
 
+Quote Post
msalov
сообщение Apr 3 2008, 11:07
Сообщение #6


Знающий
****

Группа: Свой
Сообщений: 526
Регистрация: 24-08-07
Из: Беларусь, Минск
Пользователь №: 30 045



Цитата(Fynjy86 @ Apr 3 2008, 14:02) *
Возможно вы правы, но нужный мне диапазон обнуляется без продблем.
попробую Ваш код, посмотрим, если он быстрее, то попробую его применить.


вы копируете содержимое ячейки памяти по адресу 0 во все ячейки RAM. А по нулевому адресу у нас что? правильно:
Цитата
SFR interrupt enable1 IE1 000h
Go to the top of the page
 
+Quote Post
Fynjy86
сообщение Apr 3 2008, 11:19
Сообщение #7


Участник
*

Группа: Участник
Сообщений: 42
Регистрация: 24-03-08
Пользователь №: 36 192



Цитата(gotty @ Apr 3 2008, 14:07) *
вы копируете содержимое ячейки памяти по адресу 0 во все ячейки RAM. А по нулевому адресу у нас что? правильно:

lol.gifконечно!! я ошибся, но и мой код работает и Ваш))
тоько ошибка User error: illegal opcode on address 0x403Ch всёравно остаётся

Сообщение отредактировал Fynjy86 - Apr 3 2008, 11:36
Go to the top of the page
 
+Quote Post
msalov
сообщение Apr 3 2008, 11:36
Сообщение #8


Знающий
****

Группа: Свой
Сообщений: 526
Регистрация: 24-08-07
Из: Беларусь, Минск
Пользователь №: 30 045



Цитата(Fynjy86 @ Apr 3 2008, 14:19) *
lol.gifконечно!! я ошибся, но и мой код работает и Ваш))

Только мой код будет работать всегда, а Ваш -- нет wink.gif
Go to the top of the page
 
+Quote Post
Fynjy86
сообщение Apr 3 2008, 11:38
Сообщение #9


Участник
*

Группа: Участник
Сообщений: 42
Регистрация: 24-03-08
Пользователь №: 36 192



Цитата(gotty @ Apr 3 2008, 14:36) *
Только мой код будет работать всегда, а Ваш -- нет wink.gif

я свою ошибку понял, что писал в память чёрти что, только этом чёрти что были нули.
ваш код верен, но как быть с User error: illegal opcode on address 0x403Ch ???
подскажите плз
Go to the top of the page
 
+Quote Post
msalov
сообщение Apr 3 2008, 11:39
Сообщение #10


Знающий
****

Группа: Свой
Сообщений: 526
Регистрация: 24-08-07
Из: Беларусь, Минск
Пользователь №: 30 045



Цитата(Fynjy86 @ Apr 3 2008, 14:38) *
я свою ошибку понял, что писал в память чёрти что, только этом чёрти что были нули.
ваш код верен, но как быть с User error: illegal opcode on address 0x403Ch ???
подскажите плз

а вы листинг приведите, и когда будете вставлять в сообщение, не забудьте про тег [code]
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Fynjy86   Warning[18]:   Apr 3 2008, 10:23
|- - Fynjy86   #include "msp430.h" ...   Apr 3 2008, 11:44
|- - gotty   Цитата(Fynjy86 @ Apr 3 2008, 14:44) Не т...   Apr 3 2008, 11:48
|- - Fynjy86   MOV #20C0h, SP ; set up stack main...   Apr 3 2008, 11:52
|- - gotty   Цитата(Fynjy86 @ Apr 3 2008, 14:52) А г...   Apr 3 2008, 12:00
||- - Fynjy86   Цитата(gotty @ Apr 3 2008, 15:00) А где ж...   Apr 3 2008, 12:08
||- - gotty   Цитата(Fynjy86 @ Apr 3 2008, 15:08) по ад...   Apr 3 2008, 12:11
||- - Fynjy86   а программа отчистки даже не начинается выдовая о...   Apr 3 2008, 12:39
|- - gotty   Цитата(Fynjy86 @ Apr 3 2008, 14:52) call ...   Apr 3 2008, 13:13
|- - Fynjy86   Цитата(gotty @ Apr 3 2008, 16:13) Мне каж...   Apr 3 2008, 13:26
- - Сергей Борщ   Цитата(Fynjy86 @ Apr 3 2008, 13:39) Я хоч...   Apr 3 2008, 10:47


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

 


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


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