Модераторы: PILOT, ManiaK, Mazzi
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Определение адреса, как правильно считывать данные 
:(
    Опции темы
Hobo
Дата 29.4.2005, 06:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 68
Регистрация: 15.4.2004

Репутация: нет
Всего: нет



Подскажите, а то я уже совсем замучился

mega32


/* àäðåñà äëÿ äàò÷èêîâ
// addr2 addr1 addr0 ìàñêà 7 6 5 4 3 2 1 0
// 0 0 1 WOG1 0x08 x x 0 0 1 x x x
// 0 1 0 WOG2 0x10 x x 0 1 0 x x x
// 0 1 1 WOG3 0x18 x x 0 1 1 x x x
// 1 0 0 WOG4 0x20 x x 1 0 0 x x x
*/
SIGNAL(SIG_INTERRUPT0)
{
register char address;

address=inp(PINC);

while(bit_is_clear(PIND,2));
// Confirmation();

if (address==0x08) sbi(PORTC,7);
}


int main(void)
{
DDRC=0xC0
sei();

for(;;)
{

}
}

то есть при возникновение прерывания идет опрос адреса и при совпадение адреса выставляется
потверждение. Гоняю в Симуляторе все нормально, на реальном устройстве не хочет - зараза.
если детектирование адреса убрать, то потвеждение выставляется.
Если кто сталкивался с подобным - поделитесь опытом.
Заранее спасибо
PM MAIL ICQ   Вверх
ManiaK
Дата 29.4.2005, 07:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Homo Sapience
***


Профиль
Группа: Комодератор
Сообщений: 1145
Регистрация: 3.8.2004
Где: ИУ5-93

Репутация: 2
Всего: 29



Цитата(Hobo @ 29.4.2005, 06:58)
на реальном устройстве не хочет - зараза

Зачем же так? smile

Неужели для SIG_INTERRUPT0 не нужно инициализировать никаких регистров?..
PM MAIL WWW   Вверх
Hobo
Дата 29.4.2005, 08:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 68
Регистрация: 15.4.2004

Репутация: нет
Всего: нет



MCUCSR = 0x00;
MCUCR = 0x00;
GIFR = 0x00;
GICR = 0x40;

просто это кусок кода не привел
PM MAIL ICQ   Вверх
ManiaK
Дата 29.4.2005, 08:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Homo Sapience
***


Профиль
Группа: Комодератор
Сообщений: 1145
Регистрация: 3.8.2004
Где: ИУ5-93

Репутация: 2
Всего: 29



Тогда по порядку. Прерывание вообще приходит?
PM MAIL WWW   Вверх
Hobo
Дата 29.4.2005, 09:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 68
Регистрация: 15.4.2004

Репутация: нет
Всего: нет



да прерывания приходят и отрабатываются

while(bit_is_clear(PIND,2));
Confirmation();
но как я не могу определить адрес, не могу прочитать данные с PINC.x

хотя все просто
res=inp(PINC);
для проверки ставим следующее
PORTA = res;


и получаем...
БОЛЬШУЮ ДЫРКУ ОТ БУБЛИКА
вот и хочу понять в каком месте я дурак
PM MAIL ICQ   Вверх
Hobo
Дата 30.4.2005, 12:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 68
Регистрация: 15.4.2004

Репутация: нет
Всего: нет



осел баран идиот - это относится ко мне
решил перепроверить биты защиты, и что я вижу
стоит разрешеным JTAG
PM MAIL ICQ   Вверх
ManiaK
Дата 2.5.2005, 10:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Homo Sapience
***


Профиль
Группа: Комодератор
Сообщений: 1145
Регистрация: 3.8.2004
Где: ИУ5-93

Репутация: 2
Всего: 29



В нашей работе всяка бывает smile
Как-то с пол часа пытался связаться с устройством, у которого было отключено питание smile
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Микроконтроллеры (MCU) и микропроцессоры (MPU)"
PILOT ManiaK
UniBomb Mazzi

На данный раздел помимо Правил форума распространяются текже следующие правила:


  • Прежде чем создать тему воспользуйтесь поиском или посмотрите в faq. Возможно на форуме уже есть ответ на ваш или близкий к вашему вопрос.
  • В заголовке темы в квадратных скобках обозначьте используемое семейство микроконтроллера: [avr],[pic],[arm].
  • При создании темы с вопросом указывайте участок кода с ошибкой, версию компилятора, схемы подключения, fuse биты и прочие данные, которые помогут найти правильный ответ. Для форматирования текста программ используйте кнопку код.
  • Новое сообщение должно иметь прямое отношение к тематике этого раздела. Для флуда, просьб выполнить задание, поиска партнёров или исполнителей существуют свои разделы.
  • Если вы заметили несовместимое с правилами сообщение, то можете уведомить об этом модератора раздела нажав кнопку Репорт у соответствующего сообщения.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, PILOT, ManiaK, UniBomb, Mazzi.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Микроконтроллеры (MCU) и микропроцессоры (MPU) | Следующая тема »


 




[ Время генерации скрипта: 0.0464 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.