roboforum.ru

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


Помогите "переписать" код из Ардуино в WinAvr

Раздел создан специально для людей которым интересна робототехника, но в силу разных причин они не знают с чего начать.
Задавайте ваши вопросы, какими бы простыми они не казались, постоянные посетители форума постараются ответить на них по мере своих сил.
Робот своими руками. Самодельный робот.

Помогите "переписать" код из Ардуино в WinAvr

Сообщение Perdimonocle » 13 фев 2012, 15:29

Помогите "переписать" код из Ардуино в WinAvr

//ADKeyboard Module
int adc_key_val[5] ={50, 200, 400, 600, 800 };
int NUM_KEYS = 5;
int adc_key_in;
int key=-1;
int oldkey=-1;

void setup()
{
pinMode(13, OUTPUT); //we'll use the debug LED to output a heartbeat
Serial.begin(9600); // 9600 bps
}

void loop()
{
adc_key_in = analogRead(0); // read the value from the sensor
digitalWrite(13,LOW);
key = get_key(adc_key_in); // convert into key press

if (key != oldkey) // if keypress is detected
{
delay(50); // wait for debounce time
adc_key_in = analogRead(0); // read the value from the sensor
key = get_key(adc_key_in); // convert into key press
if (key != oldkey)
{
oldkey = key;
if (key >=0){
digitalWrite(13,HIGH);
switch(key)
{
case 0:Serial.println("S1 OK");
break;
case 1:Serial.println("S2 OK");
break;
case 2:Serial.println("S3 OK");
break;
case 3:Serial.println("S4 OK");
break;
case 4:Serial.println("S5 OK");
break;
}
}
}
}
delay(100);
}

// Convert ADC value to key number
int get_key(unsigned int input)
{
int k;
for (k = 0; k < NUM_KEYS; k++)
{
if (input < adc_key_val[k])
{
return k;
}
}
if (k >= NUM_KEYS)k = -1; // No valid key pressed
return k;
}
Аватара пользователя
Perdimonocle
 
Сообщения: 72
Зарегистрирован: 05 июл 2010, 05:36

Re: Помогите "переписать" код из Ардуино в WinAvr

Сообщение blindman » 13 фев 2012, 16:27

Arduino это и есть winavr. Так что ничего переписывать не надо.
Проект [[Open Robotics]] - универсальные модули для построения роботов
Модули Open Robotics можно приобрести в магазине shop.roboforum.ru

Day OFF? You must be pulling my leg! Stop making humor before someone sees you, fool!

Аватара пользователя
blindman
 
Сообщения: 4130
Зарегистрирован: 29 апр 2008, 21:15
Откуда: Хабаровск
прог. языки: C,C++,Assembler,PHP,Javascript,Ruby, SPIN,Java(?)
ФИО: Андрей Юрьевич

Re: Помогите "переписать" код из Ардуино в WinAvr

Сообщение Perdimonocle » 14 фев 2012, 04:38

Действительно?! Спасибо, если так...

Добавлено спустя 3 часа 17 минут 26 секунд:
WinAvr при компиляции "ругается" практически на все строки... Похоже, что надо "переписывать" на нормальном C...
Аватара пользователя
Perdimonocle
 
Сообщения: 72
Зарегистрирован: 05 июл 2010, 05:36

Re: Помогите "переписать" код из Ардуино в WinAvr

Сообщение =DeaD= » 14 фев 2012, 07:35

Ругается, потому что надо подцепить arduino-библиотеки.
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Помогите "переписать" код из Ардуино в WinAvr

Сообщение Perdimonocle » 14 фев 2012, 10:35

=DeaD= писал(а):Ругается, потому что надо подцепить arduino-библиотеки.

Ок, понял, спасибо.

Добавлено спустя 1 час 30 минут 28 секунд:
Я в программировании микроконтроллеров новичок, поэтому и пишу в ветку для новичков.
Подскажите, пожалуйста, можно ли написать вышеуказанный код только средствами языка Си?

Очень нужна обработка нажатия кнопок вот такой клавиатуры http://www.domko.ru/item.php?code_id=684356

Изображение
Аватара пользователя
Perdimonocle
 
Сообщения: 72
Зарегистрирован: 05 июл 2010, 05:36

Re: Помогите "переписать" код из Ардуино в WinAvr

Сообщение Myp » 14 фев 2012, 10:42

можно.
найди любой простой пример АПЦ под винавр и простой пример передачи через компорт
ну и объедини их.

смысл кнопок в том что нажатие каждой кнопки даст определённое значение с АЦП, каждая кнопка имеет свой резистор.
соответсно сравнив значение с эталонным узнаем какая кнопка нажата
<telepathmode>На вопросы отвечает Бригадир Телепатов!</telepathmode>
Всё уже придумано до нас!
Аватара пользователя
Myp
скрытый хозяин вселенной :)
 
Сообщения: 18018
Зарегистрирован: 18 сен 2006, 12:26
Откуда: Тверь по прозвищу Дверь
прог. языки: псевдокод =) сила в алгоритме!
ФИО: глубокоуважаемый Фёдор Анатольевич

Re: Помогите "переписать" код из Ардуино в WinAvr

Сообщение Perdimonocle » 14 фев 2012, 11:27

Попробую
Аватара пользователя
Perdimonocle
 
Сообщения: 72
Зарегистрирован: 05 июл 2010, 05:36


Вернуться в Новичкам или основы основ роботостроения.

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

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