|
Warning[18]:, END of program while in include file C:\ |
|
|
|
Apr 3 2008, 10:23
|
Участник

Группа: Участник
Сообщений: 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 Где и что нужно поправить??
|
|
|
|
|
 |
Ответов
|
Apr 3 2008, 10:39
|
Участник

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

|
Я хочу процедуру обнуления оперативы вынести в другой файл и прописать его через #include "xxx" в основном файле ууу. основная программа из файла ууу обращается к подпрограмме лежащей в ххх через call
|
|
|
|
|
Apr 3 2008, 10:43
|
Знающий
   
Группа: Свой
Сообщений: 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)
|
|
|
|
|
Apr 3 2008, 11:02
|
Участник

Группа: Участник
Сообщений: 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) Возможно вы правы, но нужный мне диапазон обнуляется без продблем. попробую Ваш код, посмотрим, если он быстрее, то попробую его применить.
|
|
|
|
|
Apr 3 2008, 11:07
|
Знающий
   
Группа: Свой
Сообщений: 526
Регистрация: 24-08-07
Из: Беларусь, Минск
Пользователь №: 30 045

|
Цитата(Fynjy86 @ Apr 3 2008, 14:02)  Возможно вы правы, но нужный мне диапазон обнуляется без продблем. попробую Ваш код, посмотрим, если он быстрее, то попробую его применить. вы копируете содержимое ячейки памяти по адресу 0 во все ячейки RAM. А по нулевому адресу у нас что? правильно: Цитата SFR interrupt enable1 IE1 000h
|
|
|
|
|
Apr 3 2008, 11:19
|
Участник

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

|
Цитата(gotty @ Apr 3 2008, 14:07)  вы копируете содержимое ячейки памяти по адресу 0 во все ячейки RAM. А по нулевому адресу у нас что? правильно:  конечно!! я ошибся, но и мой код работает и Ваш)) тоько ошибка User error: illegal opcode on address 0x403Ch всёравно остаётся
Сообщение отредактировал Fynjy86 - Apr 3 2008, 11:36
|
|
|
|
|
Apr 3 2008, 11:38
|
Участник

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

|
Цитата(gotty @ Apr 3 2008, 14:36)  Только мой код будет работать всегда, а Ваш -- нет  я свою ошибку понял, что писал в память чёрти что, только этом чёрти что были нули. ваш код верен, но как быть с User error: illegal opcode on address 0x403Ch ??? подскажите плз
|
|
|
|
Сообщений в этой теме
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
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|