Мелкие вопросы по МК и ПЛИС.
- edm2007
- Поставщик валерьянки для Кота
- Сообщения: 2255
- Зарегистрирован: Вт апр 21, 2009 22:24:10
- Откуда: Иркутск
- Контактная информация:
Re: Мелкие вопросы по МК и ПЛИС.
А так же кроме AREF и AVCC. 
"Слишком много людей ломаются, даже не подозревая о том, насколько близки к успеху они были в тот момент, когда упали духом". Томас Алва Эдисон
-
Лютик
- Нашел транзистор. Понюхал.
- Сообщения: 161
- Зарегистрирован: Вт мар 25, 2008 22:10:23
- Откуда: Минск
Re: Мелкие вопросы по МК и ПЛИС.
хочу сделать емкостной сенсор как описано http://habrahabr.ru/post/111679/
схема
у себя использовал пин PINB1. В соответствии с алгоритмом, написал код:
однако значение емкости не изменяется и даже если резистор снимаю с +питание все равно не зависает в цикле, а показывает 47872. также соединял ножку с землей и все равно показывает не зацикливаясь 47872(т.к. PINB1=0(!))
уже не знаю что и делать...
схема

у себя использовал пин 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(!))
уже не знаю что и делать...
Re: Мелкие вопросы по МК и ПЛИС.
В цикле не нужно задержку поставить?
Этот пост оказался полезен? Не поленись, нажми
слева!

Куплю индикаторы ИТС-1А, ИТС-1Б, ИГВ1-8х5Л, ИГПС1-222/7, ИГПС1-111/7 и подобные.
слева!Куплю индикаторы ИТС-1А, ИТС-1Б, ИГВ1-8х5Л, ИГПС1-222/7, ИГПС1-111/7 и подобные.
- Engineer_Keen
- Друг Кота
- Сообщения: 3868
- Зарегистрирован: Пт янв 29, 2010 10:27:40
- Откуда: Москва
Re: Мелкие вопросы по МК и ПЛИС.
Я бы еще наверно в начале функции l обнулял... На всякий случай...
-
Лютик
- Нашел транзистор. Понюхал.
- Сообщения: 161
- Зарегистрирован: Вт мар 25, 2008 22:10:23
- Откуда: Минск
Re: Мелкие вопросы по МК и ПЛИС.
*Trigger* писал(а):В цикле не нужно задержку поставить?
а зачем, она как раз таки не нужна, для более точного определения "времени" разряда задержка не требуется
Я бы еще наверно в начале функции l обнулял... На всякий случай...
в начале функции идет ее объявление, а это равносильно обнулению
- Engineer_Keen
- Друг Кота
- Сообщения: 3868
- Зарегистрирован: Пт янв 29, 2010 10:27:40
- Откуда: Москва
Re: Мелкие вопросы по МК и ПЛИС.
Приводите весь код целиком, может косяк и не в этом месте...
-
Лютик
- Нашел транзистор. Понюхал.
- Сообщения: 161
- Зарегистрирован: Вт мар 25, 2008 22:10:23
- Откуда: Минск
Re: Мелкие вопросы по МК и ПЛИС.
в том то и дело, что фактически весь код
Код: Выделить всё
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;
}
- Engineer_Keen
- Друг Кота
- Сообщения: 3868
- Зарегистрирован: Пт янв 29, 2010 10:27:40
- Откуда: Москва
Re: Мелкие вопросы по МК и ПЛИС.
Блин, только сейчас внимание обратил
Куда подключена RC-цепочка и откуда читаем?
Куда подключена RC-цепочка и откуда читаем?
Re: Мелкие вопросы по МК и ПЛИС.
Он же написал:
Лютик писал(а):у себя использовал пин PINB1
Этот пост оказался полезен? Не поленись, нажми
слева!

Куплю индикаторы ИТС-1А, ИТС-1Б, ИГВ1-8х5Л, ИГПС1-222/7, ИГПС1-111/7 и подобные.
слева!Куплю индикаторы ИТС-1А, ИТС-1Б, ИГВ1-8х5Л, ИГПС1-222/7, ИГПС1-111/7 и подобные.
-
Лютик
- Нашел транзистор. Понюхал.
- Сообщения: 161
- Зарегистрирован: Вт мар 25, 2008 22:10:23
- Откуда: Минск
Re: Мелкие вопросы по МК и ПЛИС.
Engineer_Keen писал(а):Блин, только сейчас внимание обратил![]()
Куда подключена RC-цепочка и откуда читаем?
у себя использовал пин PINB1. В соответствии с алгоритмом, написал код:
*Trigger*, опоздал
п.с. если отсоединить цепочку, то девайс по-прежнему работает и выдает заветное число, даже не циклится, гад =(
- Engineer_Keen
- Друг Кота
- Сообщения: 3868
- Зарегистрирован: Пт янв 29, 2010 10:27:40
- Откуда: Москва
Re: Мелкие вопросы по МК и ПЛИС.
А, ну да, проглядел. Но откуда берется число 47872? Раз оно !=0, значит цикл выполняется, но раз он выполняется, программа должна зависнуть при замыкании ноги на землю... Для чистоты эксперимента, приравняйте ее в начале к 0, хуже - то не станет...
- Gudd-Head
- Друг Кота
- Сообщения: 20092
- Зарегистрирован: Чт сен 18, 2008 12:27:21
- Откуда: Столица Мира Санкт-Петербург
Re: Мелкие вопросы по МК и ПЛИС.
Engineer_Keen писал(а):Но откуда берется число 47872?
Это BB00h, так что не самое обычное число.
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
- Engineer_Keen
- Друг Кота
- Сообщения: 3868
- Зарегистрирован: Пт янв 29, 2010 10:27:40
- Откуда: Москва
Re: Мелкие вопросы по МК и ПЛИС.
Это понятно, хотя если бы это было 65535, это бы не многое прояснило. Дайте чтоли HEX, в протеусе погонять...
-
Лютик
- Нашел транзистор. Понюхал.
- Сообщения: 161
- Зарегистрирован: Вт мар 25, 2008 22:10:23
- Откуда: Минск
Re: Мелкие вопросы по МК и ПЛИС.
LCD : PC0-PC3 : DB4-DB7, RS,RW,E: PB3-PB5
сенсор к PB1
сенсор к PB1
- Вложения
-
- hex.rar
- (5.24 КБ) 144 скачивания
- Engineer_Keen
- Друг Кота
- Сообщения: 3868
- Зарегистрирован: Пт янв 29, 2010 10:27:40
- Откуда: Москва
Re: Мелкие вопросы по МК и ПЛИС.
Лютик писал(а):в том то и дело, что фактически весь код
HEX говорит об обратном... Там как минимум куча строковых констант и используется прерывание по приему USART

-
Лютик
- Нашел транзистор. Понюхал.
- Сообщения: 161
- Зарегистрирован: Вт мар 25, 2008 22:10:23
- Откуда: Минск
Re: Мелкие вопросы по МК и ПЛИС.
Engineer_Keen писал(а):Лютик писал(а):в том то и дело, что фактически весь код
HEX говорит об обратном... Там как минимум куча строковых констант и используется прерывание по приему USART
да, есть прерывание, но так я же ничего не шлю в этот момент, поэтому и исключаю его
забыл 8Мгц частота
- Engineer_Keen
- Друг Кота
- Сообщения: 3868
- Зарегистрирован: Пт янв 29, 2010 10:27:40
- Откуда: Москва
Re: Мелкие вопросы по МК и ПЛИС.
Ну так надо было выложить весь, от первого #include до последней "}". Вот у меня он завис в симуляторе и даже до самой проверки емкости не дошел, а я даже понять не могу, где в исходном коде это место.
-
Лютик
- Нашел транзистор. Понюхал.
- Сообщения: 161
- Зарегистрирован: Вт мар 25, 2008 22:10:23
- Откуда: Минск
Re: Мелкие вопросы по МК и ПЛИС.
странно, но на самом деле эмулятор на то и эмулятор, вполне возможно, что он глючит.
скинул проект в avr studio, сильно не пинайте, там много не задействованного кода, так как тестовый проект(разбираюсь с avr'ками, rtc'шками...)
скинул проект в avr studio, сильно не пинайте, там много не задействованного кода, так как тестовый проект(разбираюсь с avr'ками, rtc'шками...)
- Вложения
-
- main.rar
- (50.63 КБ) 131 скачивание
- Engineer_Keen
- Друг Кота
- Сообщения: 3868
- Зарегистрирован: Пт янв 29, 2010 10:27:40
- Откуда: Москва
Re: Мелкие вопросы по МК и ПЛИС.
Компилятор упорно игнорирует строку "while(PINB1==0){l++;};", он ее просто не преобразует в машинный код, а вот строка
"while((PINB & (1<<PB1))==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: Мелкие вопросы по МК и ПЛИС.
Добрый вечер. Есть такой вопрос: можно ли с помощью STK-500 программировать микроконтроллер ATtiny 2313-20PU?
В описании на STK его в списке возможных программируемых МК нет. Если попытаться все таки его запрограммировать на сколько можно надеяться на корректную запись кода?
Прошивка на STK 2.0A AVR Studio версия 4.12.
В описании на STK его в списке возможных программируемых МК нет. Если попытаться все таки его запрограммировать на сколько можно надеяться на корректную запись кода?
Прошивка на STK 2.0A AVR Studio версия 4.12.