ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Воскресенье
24 ноября
66146 Топик полностью
VVB (23.08.2006 09:03, просмотров: 1) ответил AlexandrY на Похоже ваша проблема из пальца выс...
Ответ: В исходниках отсутствуют функции работы с JTAG как с портом ввода/вывода. Оказывается, MULTI при отладке сама без моего ведома ставит точку останова на процедуру __dotsyscall() (которая в том числе вызывается любым обращением к вводу/выводу), и отладчик запускает свой неизвестный код для обмена. Сама процедура состоит из двух команд:
__dotsyscall:
	mov	r8, r8			; mov hireg,hireg doesn't set CC!
	mov	pc, lr			; Return
Если я вручную ставлю точку останова в отладчике на __dotsyscall(), программа не загружается -- сообщение "2 точки останова на одном адресе" (я при всём своём желании не смогу поставить 2 точки останова на одном адресе). К тому же исходники библиотек ANSI C отсутствуют. Есть лишь исходники более низкого уровня, который связывает библиотеки с конкретным железом.