[an error occurred while processing this directive]
|
"про то что вектора на С не пишут я и сам знаю прекрасно
почему это не делают - а потому что ресурсы жрутся сильно"
Не потому. Вы уверены, что ISR делает все корректно? Я нет. Например DSPLib врубает циркулярную адресацию для некоторого ARx. В ISR есть например такая штука:
MOV *ARx, T0
Вопрос какое значение будет загружено в T0? Ответ - любое из случайно взятой ячейки памяти. Думаете C вставит в ISR нечто типа
; Turn off the Circular Addressing for AR7-AR0
AND #0FF00h, mmap(ST2_55)
Думаете это единственные грабли при написании ISR на C? Отнюдь, там еще десяток может быть. Я Вам искренне сочувствую, иногда уходят часы с JTAG и пошаговой отладкой для поимки тонкого бага. Купили бы DSK за $395 и навесили бы дочку - давно бы уже все отладили - там JTAG встроенный.
E-mail: info@telesys.ru