roboforum.ru

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

МикроКонтроллер AVR начинающим - общие вопросы

Re: МикроКонтроллеры начинающим - общие вопросы

avr123.nm.ru » 09 авг 2008, 12:14

Ну что там будет если там вмещается от 0 до 255 ? вот ОНО и будет.

Re: МикроКонтроллеры начинающим - общие вопросы

Fox89 » 10 авг 2008, 23:07

Код: Выделить всёРазвернуть
char global_array4[25];

void main(void)
{
lcd_init();
lcd_clear();
while (1)
      {   

     global_array4[]="string";

      };
}

CodeVision ругается "invalid expression" на global_array4[]="string";
присвоить при объявлении дает,а далее по текту - нет. В инете толком ничего не нашел. В чём дело?

Re: МикроКонтроллеры начинающим - общие вопросы

Сергей » 11 авг 2008, 01:06

Почитай книжки для начинающих по языку Си. Все ПОНЯТНЫМ языком описано в разделе массивы, строки

Re: МикроКонтроллеры начинающим - общие вопросы

Fox89 » 11 авг 2008, 06:31

Сергей писал(а):Почитай книжки для начинающих по языку Си. Все ПОНЯТНЫМ языком описано в разделе массивы, строки

Если бы было б всё так просто я бы не спрашивал. Согласно той книге по Си что у меня (Стефан Кочан) никакого нарушения в синтаксисе у меня нет.

Re: МикроКонтроллеры начинающим - общие вопросы

avr123.nm.ru » 11 авг 2008, 09:52

Fox89 писал(а):CodeVision ругается "invalid expression" на global_array4[]="string";
присвоить при объявлении дает,а далее по текту - нет. В инете толком ничего не нашел. В чём дело?


Посмотри "Си для МК" - http://avr123.nm.ru/05a.htm
и help в CVAVR.

Re: МикроКонтроллеры начинающим - общие вопросы

loid » 12 авг 2008, 14:09

Как проверить, работает ли Pull-Up на ножках? Не могу повесить кнопку на ножку. Делаю порт входом, указываю что он с подтяжкой. В программе считываю бит с ножки, но что то не считывает совсем, хотя раньше работало, до замены чипа (интересно это может повлеять).
Например, в генераторе начального кода выставляю : PORT C "in" "P"
Т.е. в бите порта С должна быть "1" если ножка не замкнута на землю.

В программе проверяю так: if (PINC.0==1) {PORTA.0=1;} else {PORTA.0=0;}

По светодиоду подключенном к ножке порта А должно быть видно какой сигнал присутствует на ножке порта С. Но что то не идёт.

Если в подтяжку заменить на "Т" (как я понят тригер) и подавать на вход, то с этой ножке можно считать 1 или 0. Но что случилось с пожтяжкой - ума не приложу. :o

Re: МикроКонтроллеры начинающим - общие вопросы

avr123.nm.ru » 12 авг 2008, 14:46

loid писал(а):Как проверить, работает ли Pull-Up на ножках ?


Заземлить резистором 100 - 1000 кОм и померить напругу на ноге.

http://avr123.nm.ru/02.htm - Устройство микроконтроллера AVR

Там же ДатаШит AVR ATmega на русском языке - он-лайн !

Re: МикроКонтроллеры начинающим - общие вопросы

loid » 13 авг 2008, 06:29

Всё, нашел причину. :ROFL: JTAG был включен. Я как то сразу о нём не подумал.

Re: МикроКонтроллеры начинающим - общие вопросы

foxit » 13 авг 2008, 16:56

Здравствуйте.
Кто-нибудь занимался разработкой самодельной библиотеки для codevision?
Можно ли использовать библиотеки от других компиляторов?

Спасибо.

Re: МикроКонтроллеры начинающим - общие вопросы

Co$s » 14 авг 2008, 20:43

foxit
Кто-нибудь занимался разработкой самодельной библиотеки для codevision?
Можно ли использовать библиотеки от других компиляторов?

Там все в принципе стандартно и расширение .lib применяемое к CVAVR библиотекам скрывает за собой обычные .c файлы. То есть готовый исходник достаточно разделить на .h - "хидер" и .lib (можно прямо вручную сменить расширение) - библиотеку с реализацией самих функций, ну и по-мелочи: добавить #pragma used- / used+ для того что бы не выскакивало предупреждение о неиспользуемых функциях / переменных + в самом конце .h файла - #pragma lib (имя вашей библиотеки с расширением). Все в принципе, берете любую библиотеку и пользуетесь ею как примером.
Что касается переносимости... Мне лично как начинающему в этой области сложно сказать что будет при достаточно сложных примерах, но чаще всего сложности возникают как раз при переносе кода из CVAVR, а не наоборот (тут и удобная реализация для размещения данных в flash / eeprom... Работы с отдельными битами и достаточн. слабым оптимизатором практически не требующим использование volatile-переменных)...

Re: МикроКонтроллеры начинающим - общие вопросы

avr123.nm.ru » 14 авг 2008, 20:46


Re: МикроКонтроллеры начинающим - общие вопросы

loid » 17 авг 2008, 08:14

Скоро мой бот всем свернёт мозг :o Дело обстоит так: написал скрипт в котором по командам он должжен перемещаться вперёд, надаз и т.д., но вместо этого об делает то что взбредёт ему в голову. И дейструет по своему "интеллекту". Пробывал всё то же самое без задействования двигателей - всё ок! Возникла идея о наводках от двигателей, но только не пойму на что она действует. К примеру для пуска бота использую микровключатель (кнопочный), который замыкает ножну МК на "землю". Он естественно заземлён. Что ещё можо сделать? Может двигатели и их провода экранировать? :)

Re: МикроКонтроллеры начинающим - общие вопросы

EdGull » 17 авг 2008, 08:24

как показала практика, у начинающих когда такие глюки, то проблемма именно в неправильном питании.
для начала просто проверить питание под нагрузкой, а именно сколько у тебя вольт при включенных движках, на движках и на МК.

Re: МикроКонтроллеры начинающим - общие вопросы

loid » 17 авг 2008, 09:29

Смотрел осцилографом, питание на МК 5.2 вольт. Движки питаю через ШИМ - 4 вольт. Потыкал везде, явных помех не нашел. Но что то явно с движками

Re: МикроКонтроллеры начинающим - общие вопросы

EdGull » 17 авг 2008, 09:32

схему в студию


Rambler\'s Top100 Mail.ru counter