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

 
 
> проблема портирования программы с AtMega32 на AtMega 128
Nekromant
сообщение Aug 6 2008, 07:05
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 47
Регистрация: 21-03-07
Пользователь №: 26 369



Доброго времени суток,
суть проблемы заключается ч том, что написанная программа для AtMega 128 работает без каких либо изъянов, но при попытке ее перенести на AtMega 32 возникла следующая проблема:
приведенная ниже конструкция на 32 меге просто не работает:
Вариант 1
if(tmp==0x00)
{
Closed=true;
}
else
{
Closed=false;
if(tmp==0x3F)
{
All=true;
}
else
{
All=false;
for( i = 1; i < 6; i++)
{
if(tmp & (1 << i))
SensorData[i]=false;
else
SensorData[i]=true;
}

}
}
Вариант 2
if(tmp==0x00)
{
Closed=true;
}

else
{
Closed=false;
if(tmp==0x3F)
{
All=true;
}
else
{
All=false;
tmp=(~tmp)&0x01;
if(tmp!=0x01)
{
Nurse1=true;
}
else
{
Nurse1=false;
}
tmp=tmp_data;
tmp=(~tmp)&0x02;
if(tmp!=0x02)
{
Nurse2=true;
}
else
{
Nurse2=false;
}
tmp=tmp_data;
tmp=(~tmp)&0x04;
if(tmp!=0x04)
{
Hall=true;
}
else
{
Hall=false;
}
tmp=tmp_data;
tmp=(~tmp)&0x08;
if(tmp!=0x08)
{
Bedroom=true;
}
else
{
Bedroom=false;
}
tmp=tmp_data;
tmp=(~tmp)&0x10;
if(tmp!=0x10)
{
Kitchen=true;
}
else
{
Kitchen=false;
}
tmp=tmp_data;
tmp=(~tmp)&0x20;
if(tmp!=0x20)
{
Door=true;
}
else
{
Door=false;
}
}
оба варианта ведут себя одинаково нормально на меге 128 и оба же варианта ведут себя одинаково плохо на меге 32 07.gif
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Nekromant
сообщение Aug 6 2008, 12:20
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 47
Регистрация: 21-03-07
Пользователь №: 26 369



если честно ума не приложу взял то же самое проделал с мегой 16 и мегой 8515 порылся в дата шите и нашел конкретно какие биты jtag навесил датчики и все одинакого, зато в меге 128 если навесить те же датчики на jtag то мало того что заработало без фьюза так там еще и пресловутых двух строчеук не понадобилось 05.gif
Go to the top of the page
 
+Quote Post
Палыч
сообщение Aug 6 2008, 12:31
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 2 399
Регистрация: 10-05-06
Из: г. Новочеркасск
Пользователь №: 16 954



Цитата(Nekromant @ Aug 6 2008, 15:20) *
если честно ума не приложу взял то же самое проделал с мегой 16 и мегой 8515 порылся в дата шите и нашел конкретно какие биты jtag навесил датчики и все одинакого, зато в меге 128 если навесить те же датчики на jtag то мало того что заработало без фьюза так там еще и пресловутых двух строчеук не понадобилось 05.gif
ИМХО, это от того, что JTAG в разных МК цепляется на разные ноги (порты). Например, в m128 - на PF4-PF7
Go to the top of the page
 
+Quote Post
Nekromant
сообщение Aug 6 2008, 14:59
Сообщение #4


Участник
*

Группа: Участник
Сообщений: 47
Регистрация: 21-03-07
Пользователь №: 26 369



Цитата(Палыч @ Aug 6 2008, 15:31) *
ИМХО, это от того, что JTAG в разных МК цепляется на разные ноги (порты). Например, в m128 - на PF4-PF7

я на 128 и подцепился на него получил то что работает и не сбоит.
2) согласен что логичнее не устанавливать jtag по умолчанию, зачастубю проще включить что надо чем искать что тебе мешает работать.
Go to the top of the page
 
+Quote Post
defunct
сообщение Aug 6 2008, 15:14
Сообщение #5


кекс
******

Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326



Цитата(Nekromant @ Aug 6 2008, 17:59) *
2) согласен что логичнее не устанавливать jtag по умолчанию, зачастубю проще включить что надо чем искать что тебе мешает работать.

Если бы вы программировали МК через JTAG, вы бы задались вопросом - как его включить? И пришли бы к выводу что - без стороннего программатора (еще одного) - никак. Потому этот фуз запрограммирован.

Цитата
зачастубю проще включить что надо чем искать что тебе мешает работать.

Хотя понимаю, что счастливым пользователям PonyProg'a этот вопрос не интересен. Только лохи читают документацию перед началом работы, "реальные пацаны" читают доку только тогда когда появляется реальная проблема.
Go to the top of the page
 
+Quote Post
Nekromant
сообщение Aug 6 2008, 15:33
Сообщение #6


Участник
*

Группа: Участник
Сообщений: 47
Регистрация: 21-03-07
Пользователь №: 26 369



Цитата(defunct @ Aug 6 2008, 18:14) *
Если бы вы программировали МК через JTAG, вы бы задались вопросом - как его включить? И пришли бы к выводу что - без стороннего программатора (еще одного) - никак. Потому этот фуз запрограммирован.
Хотя понимаю, что счастливым пользователям PonyProg'a этот вопрос не интересен. Только лохи читают документацию перед началом работы, "реальные пацаны" читают доку только тогда когда появляется реальная проблема.


Я бы сказал что при изучени нового лучше все таки начинать сначала - а не кидаться на всю информацию целиком-в школе тоже можно задачки стразу через иксы решать, но их никто сразу не дает, потому что понимание приходит со временем. И у меня как и у многих начинающих еще просто не хватает понимания, что может повлиять на работу а что нет.
Go to the top of the page
 
+Quote Post
defunct
сообщение Aug 6 2008, 16:09
Сообщение #7


кекс
******

Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326



Цитата(Nekromant @ Aug 6 2008, 18:33) *
Я бы сказал что при изучени нового лучше все таки начинать сначала - а не кидаться на всю информацию целиком

В таком случае рекомендую Вам собрать JTAG-ICE и поработать с ним. МК - будет как на ладони. На начальном этапе это самый лучший инструмент из возможных.

Цитата
-в школе тоже можно задачки стразу через иксы решать, но их никто сразу не дает, потому что понимание приходит со временем.

И тут JTAG лучший помошник т.к. например устанавливать требуемые значения портов - можно мышкой, а истинные значения портов будут отображаться на экране. Т.е. у вас будет полный доступ к любому узлу МК из отладчика.

Цитата
И у меня как и у многих начинающих еще просто не хватает понимания, что может повлиять на работу а что нет.

Посмотрите на заголовок топика - "портирование с M32 на M128". Разве можно предположить по заголовку, что Вы начинающий?
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Nekromant   проблема портирования программы с AtMega32 на AtMega 128   Aug 6 2008, 07:05
- - Непомнящий Евгений   теги [code] используйте... А как именно "пло...   Aug 6 2008, 07:11
- - MrYuran   1. Используйте теги [code][/code] для кусков кода,...   Aug 6 2008, 07:14
|- - Nekromant   1)именно плохо в том, что на 32 меге изменяются то...   Aug 6 2008, 07:35
|- - Сергей Борщ   Цитата(Nekromant @ Aug 6 2008, 10:35) 2) ...   Aug 6 2008, 07:45
|- - MrYuran   Цитата(Сергей Борщ @ Aug 6 2008, 11:45) Т...   Aug 6 2008, 07:59
|- - Nekromant   Цитата(MrYuran @ Aug 6 2008, 10:59) ++ То...   Aug 6 2008, 08:12
|- - Сергей Борщ   Цитата(Nekromant @ Aug 6 2008, 11:12) tmp...   Aug 6 2008, 08:19
|- - Dog Pawlowa   Цитата(Nekromant @ Aug 6 2008, 11:12) tmp...   Aug 6 2008, 08:24
|- - Nekromant   да, это сигналы, подключенные на порты, точнее 6 ...   Aug 6 2008, 08:38
|- - Stanislav_S   Цитата(Nekromant @ Aug 6 2008, 13:38) да,...   Aug 6 2008, 09:05
|- - Nekromant   фьюз я не трогал просто в функции маин в самом нач...   Aug 6 2008, 09:46
|- - Stanislav_S   Цитата(Nekromant @ Aug 6 2008, 14:46) фью...   Aug 6 2008, 10:53
|- - Nekromant   Цитата(Stanislav_S @ Aug 6 2008, 13:53) П...   Aug 6 2008, 11:38
|- - MrYuran   Цитата(Nekromant @ Aug 6 2008, 15:38) то ...   Aug 6 2008, 11:50
- - GDI   Может с размером стека проблемы? Map-файл посмотри...   Aug 6 2008, 07:21
- - Nekromant   Точно, снял фьюз и большая часть глюков исчезла...   Aug 6 2008, 11:59
|- - Stanislav_S   Цитата(Nekromant @ Aug 6 2008, 16:59) Точ...   Aug 6 2008, 12:04
|- - Палыч   Цитата(Nekromant @ Aug 6 2008, 14:59) Точ...   Aug 6 2008, 12:11
|- - MrYuran   Цитата(Палыч @ Aug 6 2008, 16:11) Интерес...   Aug 6 2008, 12:17
|- - Nekromant   [quote name='MrYuran' date='Aug 6 2008...   Aug 6 2008, 12:29
- - defunct   Цитата(Stanislav_S @ Aug 6 2008, 15:04) Я...   Aug 6 2008, 12:18
|- - Stanislav_S   Цитата(defunct @ Aug 6 2008, 17:18) Кто в...   Aug 6 2008, 13:28
|- - defunct   Цитата(Stanislav_S @ Aug 6 2008, 16:28) Л...   Aug 6 2008, 14:07
|- - Stanislav_S   Цитата(defunct @ Aug 6 2008, 19:07) Чем л...   Aug 6 2008, 16:56
|- - defunct   Цитата(Stanislav_S @ Aug 6 2008, 19:56) т...   Aug 6 2008, 19:15
|- - defunct   Цитата(Nekromant @ Aug 6 2008, 15:20) так...   Aug 6 2008, 12:26
- - Nekromant   Мой девайс сегодня оттестировался и вполне отработ...   Aug 7 2008, 02:14


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

 


RSS Текстовая версия Сейчас: 21st July 2025 - 11:03
Рейтинг@Mail.ru


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