roboforum.ru

Технический форум по робототехнике.
Текущее время: 02 ноя 2024, 04:21

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 2149 ]  На страницу Пред.  1 ... 104, 105, 106, 107, 108, 109, 110 ... 144  След.
Автор Сообщение
 Заголовок сообщения: Re: МикроКонтроллер AVR начинающим - общие вопросы
СообщениеДобавлено: 02 апр 2010, 16:02 
Не в сети
Аватара пользователя

Зарегистрирован: 07 окт 2009, 00:29
Сообщения: 6028
Откуда: СПб
Если вы хотите использовать именно I2C,
то имеет смысл посмотреть в сторону MSP430 (TI), LPC (NXP), STR7 (ST), STM32 - там поддержка i2c
гораздо более "внятная", чем на АВРках, имхо. Есть множество кристаллов с двумя (и больше) i2c на борту.

Вообще, хочу заметить, что протокол I2C не подразумевает гарантированного времени доставки
(несмотря на то, что про это часто "забывают"), и что производительность канала связи и алгоритма
разбора протокола ("упрощенного XML") станет узким местом на верхнем уровне.
(да и на нижних наложит определенные ограничения на проц).

Ну а принципиально - да. все реально :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: МикроКонтроллер AVR начинающим - общие вопросы
СообщениеДобавлено: 02 апр 2010, 23:57 
Не в сети

Зарегистрирован: 31 мар 2010, 16:15
Сообщения: 23
Michael_K писал(а):
Если вы хотите использовать именно I2C

Это то немногое что я успел прочитать. Может есть что лучше для небольших AVR?

Michael_K писал(а):
MSP430 (TI), LPC (NXP), STR7 (ST), STM32

Больно много ножек. А если серьезно -- я просто с ними не справлюсь. Хотя камушки очень интересные.

Трафик можно уменьшить за счет частичной обработки данных на промежуточных уровнях (на то они и контролеры). Разбор XML не так сложен как кажется на первый взгляд. В основном это как искать подстроку в строке.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: МикроКонтроллер AVR начинающим - общие вопросы
СообщениеДобавлено: 03 апр 2010, 01:34 
Не в сети
Аватара пользователя

Зарегистрирован: 07 окт 2009, 00:29
Сообщения: 6028
Откуда: СПб
greyder писал(а):
Michael_K писал(а):
...I2C

...Может есть что лучше для небольших AVR?


Что лучше... Хммм... Это сииильно от задачи зависит :wink:
Если задача ставится "сделать что-нибудь", то и лучше будет "что-нибудь" :) :pardon: Сорри.

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

greyder писал(а):
Michael_K писал(а):
MSP430 (TI), LPC (NXP), STR7 (ST), STM32

Больно много ножек. А если серьезно -- я просто с ними не справлюсь.

Это все "предрассудки", по-моему :)
MSP430 - вообще мелких много, и в корпусах DIP есть (правда с двумя I2C в ДИП нету).
LPC2101 - чуть ли не самый простой из армов - это всего 48 ног (правда в QFP-корпусе) и два I2C на борту,
и стОит всего пару баксов - однозначно дешевле навороченных АВРок.
Работать с ними - ничуть не сложнее, чем с АВР-ками...
(Я же специально на простые камешки показал, а не на AVR32 и блэкфины какие-нибудь :))

Ну это так - личные ощущения... и оффтопик :wink:
Не хотелось бы холиворов тут разводить. Минусы свои там тоже есть, конечно.

По поводу "всего лишь поиск подстроки"... вы оцените объем памяти, количество элементарных операций и т.д.
Это несложно, конечно - просто, по-моему, достаточно ресурсоемко для мелких чипов.
Впрочем, это тоже зависит от многого, сколько вы данных хотите передавать,
какие подстроки искать, как часто... :pardon:


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: МикроКонтроллер AVR начинающим - общие вопросы
СообщениеДобавлено: 03 апр 2010, 19:54 
Не в сети

Зарегистрирован: 10 фев 2010, 23:08
Сообщения: 5
Откуда: Екатеринбург
Подскажите, пожалуйста, если в свойствах Unknown USB Device в поле Device Instance ID пишется USB\VID_0000&PID_0000 - это означает, что девайс не прошел enumeration (процедуру состыковки с хабом)? Что в таком случае может означать запись libusb0 в поле Class upper filters (была попытка установить драйвера для USB из комплекта Flip 3.4.1 вручную из *.inf, т.к. стандартная процедура утверждает, что драйвера и так стоят самые подходящие)? Платка на основе AT90USB647 с питанием от USB же, самоделка.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: МикроКонтроллер AVR начинающим - общие вопросы
СообщениеДобавлено: 05 апр 2010, 10:10 
Не в сети

Зарегистрирован: 31 мар 2010, 16:15
Сообщения: 23
Только что у меня была похожая проблема с проводком (преобразователь USB-COM) для Simens S25 на pl2303 пишет Unknown USB Device с примерно таким же ID (после PID_0000 было еще немного мусора на разных машинах разный). Вылечил это отрезав старый USB провод от платы к компьютеру и припаяв другой от мышки. Также имеет смысл проверить соответствие D+ и D- (обычно белый и зеленый проводки).


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: МикроКонтроллер AVR начинающим - общие вопросы
СообщениеДобавлено: 21 апр 2010, 16:20 
Не в сети

Зарегистрирован: 25 окт 2008, 18:09
Сообщения: 8
Откуда: Moscow City
прог. языки: Си, Pascal
Привет всем.
Ребят, непонятная ситуация со срабатыванием таймера 1 по совпадению на atmega 8.

Допустим, OCR1A = 0x0008, все работает, счетчик считает, TCNT1 увеличивается. TCNT1 = 8, ничего не происходит. Как только TCNT1 = 9, только тогда! устанавливается бит OCF1A, и соответственно вызывается прерывание.

Вопрос: Так и должно быть? можно ли добиться того, чтобы бит OCF1A выставлялся как только TCNT1 = OCR1A?

Пишу в Code Vision. симулировал в AvrStudio.

// Timer/Counter 1 initialization
// Clock source: System Clock
// Clock value: 2000,000 kHz
// Mode: Normal top=FFFFh
// OC1A output: Discon.
// OC1B output: Discon.
// Noise Canceler: Off
// Input Capture on Falling Edge
// Timer1 Overflow Interrupt: Off
// Input Capture Interrupt: Off
// Compare A Match Interrupt: On
// Compare B Match Interrupt: Off

TCCR1A=0x00;
TCCR1B=0x02;
TCNT1H=0x00;
TCNT1L=0x00;
ICR1H=0x00;
ICR1L=0x00;
OCR1BH=0x00;
OCR1BL=0x00;
OCR1AH=0x00;
OCR1AL=0x08;


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: МикроКонтроллер AVR начинающим - общие вопросы
СообщениеДобавлено: 21 апр 2010, 16:50 
Не в сети
отсылающий читать курс
Аватара пользователя

Зарегистрирован: 06 ноя 2005, 04:18
Сообщения: 14195
Откуда: Москва
Временные диаграммы событий в даташите есть
а по вашему рассказу можно просто число на 1 меньше записывать в OCR

_________________
Читайте !


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: МикроКонтроллер AVR начинающим - общие вопросы
СообщениеДобавлено: 21 апр 2010, 20:15 
Не в сети

Зарегистрирован: 25 окт 2008, 18:09
Сообщения: 8
Откуда: Moscow City
прог. языки: Си, Pascal
Спасибо, попробую посмотреть диаграммы в даташите...
мне просто необходимо, чтобы прерывание иногда вызывалось через такт таймера, сразу по равенству регистров...
Буду искать...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: МикроКонтроллер AVR начинающим - общие вопросы
СообщениеДобавлено: 22 апр 2010, 00:19 
Не в сети

Зарегистрирован: 25 окт 2008, 18:09
Сообщения: 8
Откуда: Moscow City
прог. языки: Си, Pascal
Цитата из Евстифеева:
Регистр OCR1A входит в состав блока сравнения. Во время работы таймера производится непрерывное (в каждом машинном цикле) сравнение этого регистра с TCNT1 В случае равенства в следующем машинном цикле устанавливается флаг OCF1A регистра TIFR и генерируется прерывание.
А на деле флаг устанавливается не спустя 1 машинный цикл, а спустя один таймерный цикл. Так и должно быть? или это глюк AVR Studio? Кода? В Proteuse аналогтчно AVR... :(


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: МикроКонтроллер AVR начинающим - общие вопросы
СообщениеДобавлено: 22 апр 2010, 00:56 
Не в сети
Аватара пользователя

Зарегистрирован: 07 окт 2009, 00:29
Сообщения: 6028
Откуда: СПб
Че вы читаете фигню всякую - даташиты читать надо.
Там даже подчеркнуто это место :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: МикроКонтроллер AVR начинающим - общие вопросы
СообщениеДобавлено: 22 апр 2010, 14:49 
Не в сети
Аватара пользователя

Зарегистрирован: 30 дек 2009, 08:16
Сообщения: 106
Откуда: Омск
Skype: hedgehoguse
Всем привет, короче, тут такая тема:

Есть тини2313 с заводскими установками.
Есть авр910 по Протоссу
Есть CodeVisionAVR

Создаю проект. Выставляю только 8 МГц частоту ядра (как и есть у тини2313 по дефолту), и портД назначаю выходом все биты.

Генерится проект, в коде пишу только 1 строчку:
PORTD.5=1;
Все, делаю мейк, прошиваю, все компилится и шьется без ошибок. Но блин, НЕ РАБОТАЕТ!
Никак не меняется состояние ноги! Блин, надо сделать шефу срочно одну ерундовину, но не могу сделать :cry:
Хто знает в чем проблема?
Считываю с чипа нормально прошивку, фиг его знает, что это такое.
Помню, что когда-то именно из-за этого отказался от CodeVisiona, но сейчас не могу, т.к. есть только USB.

Плиз, в чем косяк может быть? Уже все истыкал :cry:

_________________
В гугле есть все! Даже то, чего еще нет!

Не спорь с холостяком о макаронах!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: МикроКонтроллер AVR начинающим - общие вопросы
СообщениеДобавлено: 22 апр 2010, 14:51 
Не в сети
Аватара пользователя

Зарегистрирован: 07 окт 2009, 00:29
Сообщения: 6028
Откуда: СПб
Ногу на выход настрой, истыкатель, млин.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: МикроКонтроллер AVR начинающим - общие вопросы
СообщениеДобавлено: 22 апр 2010, 15:12 
Не в сети

Зарегистрирован: 27 авг 2008, 10:45
Сообщения: 1981
Откуда: Харьков
прог. языки: С/С++
Он же написал, что настроил :)

Не генери нифига вообще. Напиши в main только 2 команды: DDRD = 0x20; PORTD = 0x20; и проверь, что там на ноге - 0, 1 или Z? Если 0 - бред или нога сконфигурена как выход ШИМ (хотя быть такого не может), если 1 - все ОК, копай дальше, если Z - прога видимо не выполняется.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: МикроКонтроллер AVR начинающим - общие вопросы
СообщениеДобавлено: 22 апр 2010, 16:41 
Не в сети
отсылающий читать курс
Аватара пользователя

Зарегистрирован: 06 ноя 2005, 04:18
Сообщения: 14195
Откуда: Москва
ADonis писал(а):
Выставляю только 8 МГц частоту ядра (как и есть у тини2313 по дефолту)


Сумлеваюсь.

Рекомендую прожект выложить и PROTEUS использовать ИНТЕНСИВНО !

Добавлено спустя 6 минут 13 секунд:
boez писал(а):
Не генери нифига вообще.


Ни в коем случае ! ГЕНЕРАТОРЫ кода это ЗЛОООООООООО !!!

Слушай вот товарища:

boez писал(а):
Напиши в main только 2 команды: DDRD = 0x20; PORTD = 0x20;


Конечно этот код компилятор не сможет скомпилировать.
Но всеравно слушай совет !

А генератор кода нетрожь !

Ведь код сделаный генератором обычно работает и кайфа познания не будет.

_________________
Читайте !


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: МикроКонтроллер AVR начинающим - общие вопросы
СообщениеДобавлено: 22 апр 2010, 17:47 
Не в сети
Аватара пользователя

Зарегистрирован: 30 дек 2009, 08:16
Сообщения: 106
Откуда: Омск
Skype: hedgehoguse
Вот сейчас только что поменял версии, была 1.24.8b, пробовал 1.25.3. Потом 1.25.8, 1.25.9 у обеих вылетает ошибка при мейке: Error(s) occured during assembly.
Ругается, что вот это:
RJMP _main
андефайнд символ %)
А кто-то говорит, что код генератора работает ;)

Нифига. Теперь я ваще в ступоре.

У тини2313 судя по онлайн-калькулятору действительно 8МГц частота по умолчанию.


Попробовал поменять кристалл, благо в запасе лежит еще один. Такая же ерунда. Что само тупо - 1 раз сработало элементарное выставление 1 на ногу. Поигрался маленько, подал сначала 1, потом переписал, подал 0, затем снова 1, нифига, опять все свалилось и ничего не пашет :(
Не знаю даже, че делать и вообще где может быть косяк. Я же не перегенерировал проект заново, лишь менял одну строку, почему опять ничего не работает, не пойму нифига :(

_________________
В гугле есть все! Даже то, чего еще нет!

Не спорь с холостяком о макаронах!


Последний раз редактировалось ADonis 22 апр 2010, 18:00, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 2149 ]  На страницу Пред.  1 ... 104, 105, 106, 107, 108, 109, 110 ... 144  След.

Часовой пояс: UTC + 4 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
phpBB SEO