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

 
 
> Проблема с ATMEGA1244, портится содержимое ОЗУ
lehacheb
сообщение Apr 15 2013, 06:04
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 37
Регистрация: 11-04-09
Пользователь №: 47 508



У меня возникла вот такая проблема при написании программы на ATMEGA1244:
когда идет обмен данными с компъютером по UART у меня неожиданно переменные в
ОЗУ портятся, принимают значения, которые никогда не должны принимать в программе,
т.е. в ОЗУ записывается какой-то мусор. Естетственно это приводит к сбою программы.
Это происходит не при каждом запросе, а время от времени на 100-й или 1000-й запрос.
Когда обмена нет, программа работает нормально.
Это происходит, даже если программа не отвечает на запрос, по самому факту прерывания
по UART. Переменные портятся различные, расположенные в разных местах ОЗУ (пробовал
менять расположение переменных в ОЗУ).
Не могу понять что происходит, с чем это связано. Может кто сталкивался с такой проблемой
или может что-то посоветовать.
Среда Atmel Studio 6.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
lehacheb
сообщение Apr 15 2013, 08:21
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 37
Регистрация: 11-04-09
Пользователь №: 47 508



Я пишу на си
Volatile не помогает
Портится если только происходят прерывания по UART
Можно переделать наверное и без прерываний, только
почему с прерываниями такое происходит?
Go to the top of the page
 
+Quote Post
SergeBS
сообщение Apr 15 2013, 20:51
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 17
Регистрация: 11-05-07
Пользователь №: 27 645



Цитата(lehacheb @ Apr 15 2013, 11:21) *
Можно переделать наверное и без прерываний, только
почему с прерываниями такое происходит?

Скорее всего потому, что прием по UART целиком сочинил сам, а не посмотрел в аппнотах, как он правильно делается. И в этом случае переход на обработку без прерываний ничем не поможет. Будет повторена та же ошибка.
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 28th July 2025 - 05:12
Рейтинг@Mail.ru


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