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

 
 
> Keil: L121 Improper fixup error
JustIce
сообщение Feb 24 2009, 12:10
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 18
Регистрация: 8-01-09
Пользователь №: 43 008



Проект на асемблере разбит на несколько файлов (по функциям). В процессе сборки возникает куча ошибок типа:

*** ERROR L121: IMPROPER FIXUP
MODULE: Initialization.obj (INITIALIZ)
SEGMENT: INITIALIZ_
OFFSET: 0059H

Я так понимаю что при сборке нескольких файлов они накладываются друг на друга.

Если в опциях проекта в закладке Device поставить "Use extended linker (LX51) ...." то проект собирается и работает нормально, но во время симуляции на каждом шаге выскакивает окно дизасемблера (если закрыть то на следующем шаге все одно выскакивает).

В хелпе на Keil нашел
"QUESTION
Why does the 251 linker (L251) report "L121 Improper fixup error" in my STARTUP.A51 file?
ANSWER
Make sure that if you modify the startup file to set the STACK correctly. In the 80251, the stack pointer is a 16-bit value. If you are accustomed to using the 8051, it is easy to forget to initialize the upper byte. This means the upper byte never gets set which may cause this error message."

Может кто знает как вручную выставить этот 16 битный стек (похоже что обычный (не расширеный) линкер устанавливает 8 битный стек)???
Go to the top of the page
 
+Quote Post

Сообщений в этой теме


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

 


RSS Текстовая версия Сейчас: 3rd August 2025 - 03:36
Рейтинг@Mail.ru


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