roboforum.ru

Технический форум по робототехнике.

прерывание виснет

avr123.nm.ru » 19 фев 2007, 12:08

Myp писал(а):припаял 4 кондёра как надо по даташиту, 1мФ 50в электролитические не чип, самые обычные,

на  питание не повесил так как не нашёл откуда  выпаять 0.1мФ


если электролиты не старые не высохшие то нормально.

а 0.1 нужен но можно и больше поставить.

купи по 20 штук - 22 пФ   0.1 мкФ   резисторы 10 ком

Myp » 19 фев 2007, 14:19

угу
ток я задумался над тем что возможнодля реального девайся нужно чтото исчё раз у меня ничё не работало :lol:
я сижу смотрю как у меня на контроллере вспыхивает произвольно светик прерывания и иногда несмотря на то что в проге стоит PINB.0 = 0; он светицца продолжает
думаю о том что чёто тут не чисто
стал пробовать всё чё можно и нельзя
потом забил вернул опять всё как было по мастеру кода



сижу теперь думаю когда я с КПК передаю символ как мне его на avr принять...
какаята у меня теперь програмная нестыковка =/
насчёт входного буфера хотел спросить, мне на 4 символа какой буфер нужен? ато у вас написано берите больше не жадничайте =)
вот ещё подумал, у меня работает от внутренней RC по дефолту 1мГц мож лучше на внешний кварц сконфигурить для надёжности?
и ещё большой вопрос зачем нужна галочка для удвоения частоты уарта в настройках визарда???

у вас написано
gdvix = getchar();
/* наиболее старый символ из буфера
поместить в переменную gdvix  */

а наиболее молодой можно??? :?

попробую вечером засунуть свою программулину в протеус и подцепить на реальный ком порт чтоб посмотреть чё там в буфер складываеться

avr123.nm.ru » 19 фев 2007, 14:54

Myp писал(а):у меня работает от внутренней RC по дефолту 1мГц мож лучше на внешний кварц сконфигурить для надёжности?


бл...дь! охуе....ь!      (извиняюсь!)

ну неужели так трудно прочитать наконец КУРС !!!

http://avr123.nm.ru/z5.htm

Для обеспечения с достаточной точностью скорости обмена обычно требуются кварцы специальных UART'овских частот - их можно найти в таблице ДШ в разделе USART.

Не советую использовать внешний или встроенный RC-генератор для тактирования МК при обмене с ПК - их точность слишком мала и

наверняка будут сплошные ошибки в передаче.


А в мастере вы не видели КРАСНУЮ надпись когда ставили скорость 9600 при 1 МГц  что ОШИБКА БУДЕТ  7.5%  и ДАЖЕ С КВАРЦЕМ !


ДВА ДНЯ ДУРЬЮ МАЕМСЯ !

когда нужно прочитать внримательно и сделать как написано !

Myp » 19 фев 2007, 17:12

ну мну подумало что 7% это немного...и не стало волноватсо
и красными буквами слово НИЗЯ нигде не написано, просто"Не советую" но типа если оч хотца то можно...
и мастер кода предупреждает а не запрещает...
мну незнало что всё так плохо.

вопщето в плату тестовую кварц запаян на 10 мГц, хотел фьюзы прошить на внешний но чёто като хотелось скорей и не стал читать про фьюзы...

а вчера всётаки на 4800 переделал но не пошло =( ошибка приёма в буфер и всё тут.

зачем нужна галочка для удвоения частоты уарта в настройках визарда???
:?

Vovan » 19 фев 2007, 18:21

ИМХО, топик сей тут явно не по теме: почитает новичок и ...
Не пора ли енту дискуссию в МК перенести?
___________
С уважением
Vovan

Myp » 19 фев 2007, 20:09

Vovan писал(а):ИМХО, топик сей тут явно не по теме: почитает новичок и ...
Не пора ли енту дискуссию в МК перенести?
___________
С уважением
Vovan


и решит что тут одни идиоты=)  ?

MegaBIZON » 19 фев 2007, 21:58

Не, Чуваки, ну правда! Вот спорим, по МК я тут самый ультро-мега-тупой новечог? И не спорить со мной :evil: !
Так вот, скока бы раз я в эту тему не глянул, ни разу ваще ничо не понял... Воспринимается всё, как куча специнформации для избранных :shock:

А как бы хотелось в этом разделе увидеть нечто типа "Вот нарыли с пацанами на свалки три почти новых эксковатора и половину ноутбука, и как бы нам из всего этого сварить боевого робата..." :roll:

Пардон зо афтоп, зато от душы :)

Myp » 19 фев 2007, 22:26

Normal Operation
SHDN = 0  
EN = 0; receivers active  

забыл одну издвух ножку на ноль зацепить, 25-ю, на макетке забыл вобще под эту ножку контакт сделать=) поэтому микруха от балды включалась и выключалась
Так вот, скока бы раз я в эту тему не глянул, ни разу ваще ничо не понял... Воспринимается всё, как куча специнформации для избранных Shocked

читай avr123.nm.ru - Краткий курс AVR  :lol:
будешь всё знать совсем как я

UPD
удалено по просьбам Зломодера
гыгыгы
Последний раз редактировалось Myp 20 фев 2007, 11:33, всего редактировалось 1 раз.

D-M » 19 фев 2007, 22:47

Error 404

сообщение удаленно
Последний раз редактировалось D-M 20 фев 2007, 11:46, всего редактировалось 1 раз.

Сергей » 20 фев 2007, 01:21

<Censored>
Последний раз редактировалось Сергей 20 фев 2007, 19:17, всего редактировалось 1 раз.

MegaBIZON » 20 фев 2007, 08:44

D-M писал(а):
Myp писал(а):
Так вот, скока бы раз я в эту тему не глянул, ни разу ваще ничо не понял... Воспринимается всё, как куча специнформации для избранных Shocked

ЗАКЛИНАЮ: читай avr123.nm.ru - Краткий курс AVR  :lol:
будешь всё знать совсем как я

ЗАКЛИНАЮ!!!

Чёрт побери, Чуваки... УМАЛЯЮ, прикратите!!! :cry:

=DeaD= » 20 фев 2007, 11:01

Прекращайте "цветомузыку" и переправьте уже написанное :!:

:arrow: Злой модер :twisted:

Сергей » 20 фев 2007, 19:17

Так красиво было..эх. =) даешь бан злому модеру!)

Myp » 12 мар 2007, 20:48

поднимаю вобщем заново вопрос

есть вот такой код
Код: Выделить всёРазвернуть
char resived; 
char MSS, LSS;
int mss, lss;
 
void priem(void)                        //процедура приёма и обработки строки
{
      char *end = 'X';                 //символом конца строки будет Х
      resived = *gets(end, 3);         //принимаем строку длинной 3 и символом конца строки Х
      MSS = resived >> 2;              //сдвигаем вправо на 2 позиции чтоб выделить заголовок
      mss = (int)MSS;                  //переводим заголовок из строковых в числовую (ещё незнаю зачем)
      LSS = resived << 1;              //сдвигаем влево на 1 позицию и получаем цифры
      lss = (int)LSS - 4;              //переводим цифры их текстового вида в числовой
       
      switch (MSS)                     //проверка заголовка
      {
       case 'L':                       //если заголовок L
       PORTB.1 = lss;                   //пишем данные в порт, тобишь мотор начинает крутицца или останавливаеться
       break;                          //если заголовок R
       case 'R':                       //пишем данные в порт, тобишь мотор начинает крутицца или останавливаеться
       PORTB.2 = lss;
       break;
       case 'i':                       //тож самое, к этой ножке прицепляем светодиод, для красоты
       PORTB.3 = lss;
       break;
       }
       MSS = 0;                        //очищаем заголовок чтоб не проверять его постоянно если данные всё равно не приходят
}

но чёто я неправильно тут написал =/

Myp » 12 мар 2007, 21:08

вот такая картинка в протеусе

что значат зелёные циферки в самом левом столбце? и что значат прочерки в левом столбце??

контроллер у меня повис(тестовая лампочка не мигает) значит курсор в протеусе указывает на ту строку на которой произошло зависание??

как вобще в протеусе делать отладку?
как мне заставить пошагово выполнять программу? :(
ато я жму step into и совершенно ничего не меняется

добавлю ещё
Вложения
ACDSee6 BMP Image.jpg
и собсно вот ещё такие переменные тоже с непонятными проблемами
ACDSee6 BMP Image.jpg
что означает вот эта строчка? какието проблемы с переменной??
ACDSee6 BMP Image.jpg
вот что у меня в дебагере
мк уже повис


Rambler\'s Top100 Mail.ru counter