Тот же исходный код, те же инструменты компилятора,ubunto и windows xp, другое поведение, почему? почти одинаковые файлы карт

У меня есть проблема. У меня есть оценочный комплект и программа starter_kit, которая довольно хорошо работает с плагином toolsuites IDE под WINDOWS xp. Тот же плагин toolsuites IDE sous Ubuntu 12.0.4 работает, но не делает то же самое вещь. проводной нет? просто для информации, мои инструменты:

  • MCU: PIC24HJ128GP504
  • Плата:MPLAB STARTER KIT для PIC24H MCU
  • USB-соединение для загрузки / отладки SKDE PIC24H SENSOR
  • IDE: MPLABX IDE v1.85
  • Компилятор C:XC16 V1.11
  • Исходный код: стартовый набор для датчика pic24 H Демо

в UBUNTU я скомпилирую и свяжу этот исходный код в MPLAB X ide с использованием компилятора XC16 C безо всякой ошибки, а затем запрограммирую устройство, но затем после того, как логотип Microchip (начальное упражнение) появится на OLED, остальные части кода не будут Выполнено (например, на главном экране). И OLED просто мигает и повторяет, показывая логотип Microchip, а мигает. Мне кажется, что он входит в RESET LOOP.

Что странно, так это то, что когда я меняю ОС с Ubuntu на Windows XP и использую ту же среду IDE, установленную на Windows XP и тот же компилятор C, и программирую устройство, она работает отлично и не входит в этот, казалось бы, цикл сброса. Микрочип логотип (начальное упражнение) и выполняет остальную часть программы (которая является домашним экраном). и я не знаю, что не так. Я использовал этот шаг для отладки этой проблемы безуспешно, и я хотел бы знать, что вы будете делать, если вы в моем случае, и если вы можете помочь мне найти мою проблему.

  • сравните файлы карты (выходные данные компоновщика): эти два файла почти одинаковы, за исключением того, что карта winXP имеет функцию resetPRI, но в Ubuntu используется сброс (что мне кажется, что это раздел памяти, а не функция). общая часть файла карты и различия ниже.

External Symbols in Program Memory (by address):

              0x000200                  __resetPRI 
Memory Configuration:

Name             Origin             Length             Attributes
data             0x000800           0x002000           a !xr
reset            0x000000           0x000004   
program          0x000200           0x015600    

LOAD libp24HJ128GP504-elf.a


.reset            0x000000          0x4 
                  0x000000          0x2 SHORT 0x200 ABSOLUTE (__reset)
                  0x000001          0x2 SHORT 0x4
                  0x000002          0x2 SHORT 0x0 ((ABSOLUTE (__reset) >> 0x10) & 0x7f)
                  0x000003          0x2 SHORT 0x0

.text             0x000200        0xf06



libpic30-elf.a(crt0_standard.o)
              0x000200                  __reset (difference:from ubuntu map file)
              0x000200                  __resetPRI (difference:from winxp map file)
build/default/production/_ext/1360937237/**Main.o** 

_0x40c515645214dac2 (difference:from ubuntu map file)
_0213CF005214c228   (difference:from winxp map file)
                    0x2600        0x1c0
 _0x40c515645214dac2  (difference:from ubuntu map file)
 _0213CF005214c228   (difference:from winxp map file)
                    0x2600        0x1c0 build/default/production/_ext/1360937237       /Accelerometer.o   (ONE function in the program )  
                0x2600                  _BufferA

  _0x40c515c05214dac2  (difference:from ubuntu map file)
_0213D1205214c228       (difference:from winxp map file)

любая идея, где я должен искать проблему, будет принята с благодарностью.

0 ответов

Другие вопросы по тегам