Страница 304 из 628

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Ср мар 28, 2012 22:51:26
edm2007
А так же кроме AREF и AVCC. :)

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Чт мар 29, 2012 13:15:22
Лютик
хочу сделать емкостной сенсор как описано http://habrahabr.ru/post/111679/
схема Изображение

у себя использовал пин PINB1. В соответствии с алгоритмом, написал код:

Код: Выделить всё

volatile long unsigned int l;

SETBIT(DDRB,1);//на выход
CLEARBIT(PORTB,1);///->0
CLEARBIT(DDRB,1);///на вход

while(PINB1==0){l++;};

String1("Емкость = %u",l);//вывод на жк

однако значение емкости не изменяется и даже если резистор снимаю с +питание все равно не зависает в цикле, а показывает 47872. также соединял ножку с землей и все равно показывает не зацикливаясь 47872(т.к. PINB1=0(!))
уже не знаю что и делать... :cry:

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Чт мар 29, 2012 13:23:18
*Trigger*
В цикле не нужно задержку поставить?

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Чт мар 29, 2012 13:25:57
Engineer_Keen
Я бы еще наверно в начале функции l обнулял... На всякий случай...

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Чт мар 29, 2012 13:54:16
Лютик
*Trigger* писал(а):В цикле не нужно задержку поставить?
а зачем, она как раз таки не нужна, для более точного определения "времени" разряда задержка не требуется
Я бы еще наверно в начале функции l обнулял... На всякий случай...
в начале функции идет ее объявление, а это равносильно обнулению

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Чт мар 29, 2012 14:06:59
Engineer_Keen
Приводите весь код целиком, может косяк и не в этом месте...

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Чт мар 29, 2012 14:15:31
Лютик
в том то и дело, что фактически весь код

Код: Выделить всё

while(1)
{
volatile long unsigned int l;

SETBIT(DDRB,1);//на выход
CLEARBIT(PORTB,1);///->0
CLEARBIT(DDRB,1);///на вход

while(PINB1==0){l++;};

String1("Емкость = %u",l);//вывод на жк

_delay_ms(1000);
//пояснение, само собой в шапке находится:
//#define LED1 0
//#define LED_PORT PORTB
LED_PORT ^=1<<LED1;
}

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Чт мар 29, 2012 14:35:14
Engineer_Keen
Блин, только сейчас внимание обратил :facepalm:
Куда подключена RC-цепочка и откуда читаем?

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Чт мар 29, 2012 14:39:15
*Trigger*
Он же написал:
Лютик писал(а):у себя использовал пин PINB1

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Чт мар 29, 2012 14:48:12
Лютик
Engineer_Keen писал(а):Блин, только сейчас внимание обратил :facepalm:
Куда подключена RC-цепочка и откуда читаем?
у себя использовал пин PINB1. В соответствии с алгоритмом, написал код:
*Trigger*, опоздал :))

п.с. если отсоединить цепочку, то девайс по-прежнему работает и выдает заветное число, даже не циклится, гад =(

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Чт мар 29, 2012 14:56:53
Engineer_Keen
А, ну да, проглядел. Но откуда берется число 47872? Раз оно !=0, значит цикл выполняется, но раз он выполняется, программа должна зависнуть при замыкании ноги на землю... Для чистоты эксперимента, приравняйте ее в начале к 0, хуже - то не станет...

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Чт мар 29, 2012 14:58:14
Gudd-Head
Engineer_Keen писал(а):Но откуда берется число 47872?
Это BB00h, так что не самое обычное число.

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Чт мар 29, 2012 15:05:52
Engineer_Keen
Это понятно, хотя если бы это было 65535, это бы не многое прояснило. Дайте чтоли HEX, в протеусе погонять...

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Чт мар 29, 2012 15:14:55
Лютик
LCD : PC0-PC3 : DB4-DB7, RS,RW,E: PB3-PB5
сенсор к PB1

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Чт мар 29, 2012 15:30:37
Engineer_Keen
Лютик писал(а):в том то и дело, что фактически весь код
HEX говорит об обратном... Там как минимум куча строковых констант и используется прерывание по приему USART :dont_know:

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Чт мар 29, 2012 15:40:09
Лютик
Engineer_Keen писал(а):
Лютик писал(а):в том то и дело, что фактически весь код
HEX говорит об обратном... Там как минимум куча строковых констант и используется прерывание по приему USART :dont_know:
да, есть прерывание, но так я же ничего не шлю в этот момент, поэтому и исключаю его
забыл 8Мгц частота

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Чт мар 29, 2012 15:50:20
Engineer_Keen
Ну так надо было выложить весь, от первого #include до последней "}". Вот у меня он завис в симуляторе и даже до самой проверки емкости не дошел, а я даже понять не могу, где в исходном коде это место.

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Чт мар 29, 2012 16:06:15
Лютик
странно, но на самом деле эмулятор на то и эмулятор, вполне возможно, что он глючит.
скинул проект в avr studio, сильно не пинайте, там много не задействованного кода, так как тестовый проект(разбираюсь с avr'ками, rtc'шками...)

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Чт мар 29, 2012 16:55:09
Engineer_Keen
Компилятор упорно игнорирует строку "while(PINB1==0){l++;};", он ее просто не преобразует в машинный код, а вот строка
"while((PINB & (1<<PB1))==0){l++;};" замечательно переводится в

Код: Выделить всё

+000000DF:   8189        LDD       R24,Y+1        Load indirect with displacement
+000000E0:   819A        LDD       R25,Y+2        Load indirect with displacement
+000000E1:   81AB        LDD       R26,Y+3        Load indirect with displacement
+000000E2:   81BC        LDD       R27,Y+4        Load indirect with displacement
+000000E3:   9601        ADIW      R24,0x01       Add immediate to word
+000000E4:   1DA1        ADC       R26,R1         Add with carry
+000000E5:   1DB1        ADC       R27,R1         Add with carry
+000000E6:   8389        STD       Y+1,R24        Store indirect with displacement
+000000E7:   839A        STD       Y+2,R25        Store indirect with displacement
+000000E8:   83AB        STD       Y+3,R26        Store indirect with displacement
+000000E9:   83BC        STD       Y+4,R27        Store indirect with displacement
+000000EA:   9BB1        SBIS      0x16,1         Skip if bit in I/O register set
+000000EB:   CFF3        RJMP      PC-0x000C      Relative jump

Re: Мелкие вопросы по МК и ПЛИС.

Добавлено: Чт мар 29, 2012 18:35:35
Igor2012
Добрый вечер. Есть такой вопрос: можно ли с помощью STK-500 программировать микроконтроллер ATtiny 2313-20PU?
В описании на STK его в списке возможных программируемых МК нет. Если попытаться все таки его запрограммировать на сколько можно надеяться на корректную запись кода?
Прошивка на STK 2.0A AVR Studio версия 4.12.