FIFO С. В. Прерывания Paged карту памяти

B

Bukitoo

Guest
Привет!
Я недавно начал работать в компании, чтобы исправить "некоторые программные проблемы" Встроенные системы (что я не дизайн).
На самом деле, там были не одни.Это система, с помощью 512 Кб ATmega128 (он может управлять только 64kb, поэтому она использует 8 PAGS памяти).
Кроме того, система имеет реализация очередей использования этих страниц.Конечно, есть прерывания в параллельных решений беспорядок.
После нескольких месяцев напряженной работы, исправить некоторые ошибки, купить побольше это глубокой тайной для меня.Я пытался заставить эти ошибки, но они появляться, в некоторых уникальных Tha условиях я не могу воспроизвести.Некоторые Aparently указателя некоторые структуры данных, это изменение его значения и ovelaping адресов, но это suposition.Может быть, стек достижения переполнения.Я не знаю.

Может быть, кто-то может помочь мне предоставили мне несколько советов.Некоторые книги, чтобы говорить или что-то!Pleease!

Спасибо заранее

 
Вы унаследовали Buggy проект кто-то.Lucky You.

И невозможность происходить на скамейке, или это одна из тех ошибок, которые лишь тогда, когда клиент касается ее?

Если невыполнение вызывает некоторые немедленные симптомы, а затем попробуйте использовать логический анализатор смотреть шины процессора.Программа его остановки, когда она видит неспособность симптом.Теперь у вас есть снимок поведением процессоров до отказа.

Другой подход заключается во вставке отладке кода на стратегическом месте в прошивке.Если она обнаруживает что-то подозрительное, она сразу переходит в безопасный режим (отключение прерываний, новый указатель стека, зачем-то), и свалок регистры процессора и памяти, содержимое памяти путем простого портов ввода / вывода на внешний компьютер.Теперь вы можете прорыть, что материал для более улик.

 
С подкачки включен, это всегда трудно справиться Paged данные всегда.

лучший способ может быть выбора модели памяти HUGE, где считается, что все данные, чтобы быть выгружен.Я не уверен, что это решит проблему.

Когда я работал с этим типом арки с C167, я столкнулся с теми же проблемами, когда я использовал указатели на эту память как представители других структур.Для нормальной объекты данными, размещенными место с гораздо слов она работала хорошо.

Во всяком случае я делаю кодирования и имели свободу изменять код, как я хочу, чтобы компилятор счастливы.

удачи
idlebrain

 
Спасибо за ответы!
echo47: Проблема в том, что система имеет 2 плат с 2 uControllers.Они общаются через SPI автобусе, но их функциональность полностью asinchonous.

Я знаю, что есть много проблем.Проблемы очень часто происходят на поле, и ОЧЕНЬ unfrequently на моей скамейке.

Unfortunally документации не существует.

<img src="http://www.edaboard.com/images/smiles/icon_cry.gif" alt="Плачущий или очень расстроенный" border="0" />Оба цС имеет дамп докладов при возникновении ошибок, но теперь информация дней Tha они дают бесполезно.

idlebrain: Спасибо Вам за Ваши советы.Я знаю, что компилятор (IAR AVR Workbench) имеет те директив компилятора поэтому я буду читать carfully их функциональности.

 
Bukitoo пишет:

Привет!

Некоторые Aparently указателя некоторые структуры данных, это изменение его значения и ovelaping адресов, но это suposition.
Может быть, стек достижения переполнения.
Я не знаю.Может быть, кто-то может помочь мне предоставили мне несколько советов.
Некоторые книги, чтобы говорить или что-то!
Pleease!Спасибо заранее
 
Другой способ найти переполнения стека пополнить ваш стек с особым байт (0xAA), прежде чем перейти к основной.После аварии вы можете прочитать назад ваши стека и проверить, что верхний на стек 0xAA.Гомес

 

Welcome to EDABoard.com

Sponsor

Back
Top