Вопросы настройки, программирования, прошивки микроконтроллеров и микросхем программируемой логики
Тема закрыта

Re: нужна помощь с мегой8

Сб июл 07, 2012 14:21:34

ploop писал(а):Держу, пока силы остались...


+1. Они действительно не понимают, или прикидываются?

Re: нужна помощь с мегой8

Сб июл 07, 2012 15:31:26

крутости тут никто не показывает, а пытается лишь добиться уважения со стороны других пользователей и, действительно, я не подозревал, что есть еще лимитированные тарифы на интернет. в архиве то находится виде с работой девайса. попробую еще раз на словах: на пину ввода висит кнопка подтянутаю внутренней подтяжкой МК к +, а при нажатии кнопки пин замыкается на массу. в проекте 5 пкнопок подключены по этому принципу, все работают кроме одной, при ее нажатии вместо выполнения команды идет сброс. нажатие кнопок в прошивке обрабатываются командой switch (){case:}. печать позже выложу

Re: нужна помощь с мегой8

Сб июл 07, 2012 15:52:31

Лучше исходничек покажите. Может имеет место быть банальная ошибочка...

Re: нужна помощь с мегой8

Сб июл 07, 2012 22:01:46

действительно, я не подозревал, что есть еще лимитированные тарифы на интернет.

Представьте, есть.
в архиве то находится виде с работой девайса.

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

По поводу вашей проблемы: очень похоже, что накосячили в коде. Выкладывайте исходник.

Re: нужна помощь с мегой8

Сб июл 07, 2012 22:07:57

И схемку бы не помешало , а то может она банально на reset висит

Re: нужна помощь с мегой8

Сб июл 07, 2012 23:49:39

вы со своей кнопкой на резете меня добьете......
Спойлер
Код:
void key(void)
{
unsigned char keycon = PINB|0b11000010; 
if ((keycon!=0b11111111)||(komanda>0))
   {
   key_press = 1;
   }
   else
   {
   key_press = 0;
   }
if (key_press)
    {
    if (!del1 || !del2)
       { 
       switch (keycon)
          {
          case 0b11111110 : if(!del1){if (kanal != 0)
                            {
                            brightness = brightness + 8;             //~3sec ;  1188~5sec ; 2376~2.5sec
                            if(brightness>250){brightness=251;}
                            if (brightness!=251){sd=1;}
                            }    }
          break;
          case 0b11111011: if(!del1){brightness = brightness - 8;
                         if(brightness<11){brightness=11;}
                         if (brightness!=1){sd=1;}
                         fst=0;  }
          break;
          case 0b11110111: if(!del2){if (PORTD.5)                 
                            {
                            kanal=0x01;
                            PORTD.5=0;
                            sd_on=1;
                            fst=1;
                            }
                            else if (kanal != 0b100000)
                                    {
                                    kanal = kanal<<1;
                                    brightness_temp = brightness;
                                    brightness = 1;
                                    ban_slow = 1;
                                    sd=1;
                                    }    }
          break;
          case 0b11101111: if(!del2){if (kanal != 0b000001)          /////////
                            {
                            kanal = kanal>>1;
                            brightness_temp = brightness;
                            brightness = 1;
                            ban_slow = 1;
                            sd=1;
                            }           }
          break;
          }
          del1=del1+1;
          del2=del2+1;       
        }

if (del1>0)             
 {del1=del1+1;}   
    if(del1>10)
       {
       del1=0;
       }   
 if (del2>0)             
 {del2=del2+1;}   
    if(del2>50)
       {
       del2=0;
       }

обработку PINB.5, думаю, будет лишнем выкладывать. функция опроса кнопок вызывается по прерыванию от синхронизации с сетью.
Вложения
copy.jpg
схема
(192.86 KiB) Скачиваний: 476

Re: нужна помощь с мегой8

Вс июл 08, 2012 21:18:42

А земля то физически на кнопках есть ? Или верить схеме?

Re: нужна помощь с мегой8

Вс июл 08, 2012 22:40:25

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

Re: нужна помощь с мегой8

Вс июл 08, 2012 22:51:09

моя невнимательность в схеме, как я и писал, кнопки сидят на земле, а пины подтянуты резисторами МК к питанию (в инициализации портов они работают на прием и их значения - единицы)

Re: нужна помощь с мегой8

Пн июл 09, 2012 16:09:36

angry_black_cat писал(а):моя невнимательность в схеме, как я и писал, кнопки сидят на земле, а пины подтянуты резисторами МК к питанию (в инициализации портов они работают на прием и их значения - единицы)

Я бы все таки повесил внешние резисторы на кнопки (4,7-10к). С внутренней подтяжкой бывают проблемы.

Re: нужна помощь с мегой8

Пн июл 09, 2012 19:40:29

я пробовал с внешним резистором, толку мало, да и МК менял - проблема не исчезла

Re: нужна помощь с мегой8

Вт июл 10, 2012 00:13:38

angry_black_cat писал(а):я пробовал с внешним резистором, толку мало, да и МК менял - проблема не исчезла

Я иногда в свичах пропускаю по невнимательности break; Потом бывают большие проблемы.
Еще сталкивался в CV первой версии с непонятными ошибками. Полностью переставал работать код. Сделаешь новый проект, вставишь в него куски из старого и все работает.

Re: нужна помощь с мегой8

Вт июл 10, 2012 22:58:55

Леонид Иванович писал(а):
+1. Они действительно не понимают, или прикидываются?

Я например тоже не подумал бы, что в 21 веке есть компьютеры, в которых человек не мог бы каждый день качать фильмы по 2 гига с торента, или они с телефона в инет выходят?
По теме, а если попробывать заэкранировать, ну или хотябы взять кусок фальги размером с плату, и через картонку прикрутить снизу, соеденив с корпусом?

Re: нужна помощь с мегой8

Вт июл 10, 2012 23:11:51

java писал(а):Я например тоже не подумал бы, что в 21 веке есть компьютеры, в которых человек не мог бы каждый день качать фильмы по 2 гига с торента


В 21 веке есть страны, где интернет дорогой и не развитый. Для меня скачать фильм 1.4 гига - это событие. В жизни такое было пару раз. Уходит целый день.

Re: нужна помощь с мегой8

Вт июл 10, 2012 23:14:08

Выбросите всё и оставьте обработку только проблемной кнопки. И попробуйте разобраться. И кстати , раз задействовано прерывание , то чаще всего проблемы с ним , при некоректном выходе из него обычно в итоге (долго объяснять почему ) но происходит RESET.
...скачать фильм 1.4 гига - это событие

А я так ни разу и не скачал и это при высоко развитом интернете. Смотреть нечего да и на... не надо.

Re: нужна помощь с мегой8

Ср июл 11, 2012 00:30:02

или они с телефона в инет выходят?

Представьте, да. Выделенок у нас в городе нет, есть dsl, но не у всех. Остальным остаётся довольствоваться 3G, не дотягивающим до мегабита. И этого, если честно, хватает, если использовать его по делу.
Дело даже не в объёме. Просто давать ссылку куда-то, что требует просмотра кучи рекламы и ввода капчи уже нехорошо, т.к. человек просит, и мог бы обеспечить удобство обратившим внимание на его пост.

На этом предлагаю закончить оффтоп (либо в МЯУ).
Проблема, скорее в коде, и возможные варианты все озвучили.

Re: нужна помощь с мегой8

Ср июл 11, 2012 09:30:12

Мяу!

java писал(а):Я например тоже не подумал бы, что в 21 веке есть компьютеры, в которых человек не мог бы каждый день качать фильмы по 2 гига с торента, или они с телефона в инет выходят?
У меня лимит в месяц сто гигабайт (на безлимите за немного бо́льшие деньги скорость подрезана, не устроило). Так что принять пару гиг в день не проблема.
Но всё равно считаю одномегабайтную BMP-шку вместо 50-килобайтной PNG-шки признаком неуважения к людям и разгильдяйского отношения к ресурсам. (пережатая jpg-ина с размытыми буквами ненамного лучше :-) ). Не говоря уже о видео на сотни мегабайт с «вот так оно у меня не работает».
Если при этом такое исходит ещё и от человека, просящего помощи, а не оказывающего её, то это вообще свинство. Хочешь помощи — обеспечь простоту и удобство потенциальным помогающим.

А когда встречаю людей, жалующихся на то, что «новые ОС жрут много ресурсов», но не стесняющихся, к примеру, прислать вместо текстового файла выдачи avreal то же самое в BMP-скриншотах (в один длинная выдача не влезла, прислано несколько файлов с прокруткой консоли), то просто не знаю, что сказать. Выглядит как сердитое «вот гады, замусорили совсем город», сопровождаемое резким бросанием окурка себе под ноги.

Re: нужна помощь с мегой8

Ср июл 11, 2012 10:31:18

ILYAUL писал(а):И кстати , раз задействовано прерывание , то чаще всего проблемы с ним , при некоректном выходе из него обычно в итоге (долго объяснять почему ) но происходит RESET.

Обращение к несуществующей памяти, недопустимый код команды, нахимичено со стеком... Неограниченные возможности софтописателей в этом жанре МК пресекает жестким RESET. А ущучивается банальной трассировкой в отладчике Студии. Но это, конечно, не для поклонников CVAVR и Proteus'а . Ничего личного -- ну не люблю я их, хотя ни разу не пробовал .

Re: нужна помощь с мегой8

Ср июл 11, 2012 18:30:56

Я например тоже не подумал бы, что в 21 веке есть компьютеры, в которых человек не мог бы каждый день качать фильмы по 2 гига с торента


В XXI веке есть файлообменники, которые ограничивают скорость бесплатного скачивания.

Ничего личного -- ну не люблю я их, хотя ни разу не пробовал .


CVAVR да, убог, ибо разжижает мозг начинающего - опытному же эмбеддеру пофиг, в чем писать. А вот альтернативы Proteus я не вижу. Но я всегда говорю, что симуляторы - первый шаг к резиновой девушке. Отладка в железе - единственный метод стопроцентного контроля идей.
Тема закрыта