Atmega328 , ардуино , радиосвязь.
-
mehanik_universe
- Открыл глаза
- Сообщения: 59
- Зарегистрирован: Вт дек 09, 2014 00:47:04
Atmega328 , ардуино , радиосвязь.
Здравствуйте, у меня несколько вопросов на которые в гугле я не нашел ответов.
Я только учусь программировать, отнетситесь пожалуйста с пониманием.
1) Я хочу осуществить радио связь при помощи двух ардуин на Atmega328 одна из которых самодельная. Радиомодули у меня XY-MK-5V. Нашел только библиотеки которые работают с терминалом, а мне нужно что-то типо подал на 13 пин лог 1 , на другой дуине появилась лог 1.
что-то максимально простое,хочу сделать радиоуправление для машинки.Буду благодарен за примеры.
2) как я уже писал одна дуина самодельная, скажите пожалуйста как при помощи arduino UNO заливать скетчи в самодельную. Неохота постоянно мегу328 вынимать))
Я только учусь программировать, отнетситесь пожалуйста с пониманием.
1) Я хочу осуществить радио связь при помощи двух ардуин на Atmega328 одна из которых самодельная. Радиомодули у меня XY-MK-5V. Нашел только библиотеки которые работают с терминалом, а мне нужно что-то типо подал на 13 пин лог 1 , на другой дуине появилась лог 1.
что-то максимально простое,хочу сделать радиоуправление для машинки.Буду благодарен за примеры.
2) как я уже писал одна дуина самодельная, скажите пожалуйста как при помощи arduino UNO заливать скетчи в самодельную. Неохота постоянно мегу328 вынимать))
- Реклама
Re: Atmega328 , ардуино , радиосвязь.
В вашу самоделку, наверное, проще лить без загрузчика через "Файл - Загрузить с помощью программатора" типа как тут http://habrahabr.ru/post/144620/.
Использование такой простой логики с этими модулями чревато ложными срабатываниями, мне кажется там шума на выходе полно и надо кодировать / декодировать как то, но честно говоря в руках такие не крутил - отмел сразу, возни больше чем экономии, для комнатных условий меня полностью устроили bluetooth модули - проще некуда, но чутка подороже.
Возможно стоит глянуть в эту сторону http://www.airspayce.com/mikem/arduino/VirtualWire.pdf http://kind-evil.blogspot.ru/2013/04/433mhz-txrx-arduino-module.html
Использование такой простой логики с этими модулями чревато ложными срабатываниями, мне кажется там шума на выходе полно и надо кодировать / декодировать как то, но честно говоря в руках такие не крутил - отмел сразу, возни больше чем экономии, для комнатных условий меня полностью устроили bluetooth модули - проще некуда, но чутка подороже.
Возможно стоит глянуть в эту сторону http://www.airspayce.com/mikem/arduino/VirtualWire.pdf http://kind-evil.blogspot.ru/2013/04/433mhz-txrx-arduino-module.html
"Вся военная пропаганда, все крики, ложь и ненависть исходят от людей, которые на эту войну не пойдут !" / Джордж Оруэлл /
"Война - это,когда за интересы других,гибнут совершенно безвинные люди." / Уинстон Черчилль /
"Война - это,когда за интересы других,гибнут совершенно безвинные люди." / Уинстон Черчилль /
-
mehanik_universe
- Открыл глаза
- Сообщения: 59
- Зарегистрирован: Вт дек 09, 2014 00:47:04
Re: Atmega328 , ардуино , радиосвязь.
по первому вопросу, мегу я покупал с загрузчиком, я хочу узнать как в неё заливать дуиновские скетчи, а то приходится ставить её в панельку arduinoUNO, заливать скетч, вытаскивать и ставить обратно на плату.
Re: Atmega328 , ардуино , радиосвязь.
mehanik_universe писал(а):я хочу узнать как в неё заливать дуиновские скетчи,
тебе нужен адаптер http://www.ebay.com/itm/6Pin-USB-2-0-to ... 5d4397cc60
у него есть вывод дтр, который подключается к сбросу и вроде бы там еще конденсатор надо или резистор допаять к контроллеру, недавно видел что-то на эту тему
короче цепь сброса должна быть
в контроллер надо прошить загрузчик быдлодуинский, а для этого в одну плату надо залить скетч исп или как там его, который в иде идет стандартно
потом выбрать прошивку бутлоадера в меню и тогда можеш пользоваться тем адаптером и заливать уже через загрузчик как это положено
как вариант - купить программатор http://www.ebay.com/itm/Mini-USBISP-USB ... 2edd4c1d37
правда там вроде тоже надо прошивку залить для работы с дудкой
mehanik_universe писал(а): Радиомодули у меня XY-MK-5V.
для них есть библиотека http://www.airspayce.com/mikem/arduino/ ... __ASK.html
я сейчас ковыряю http://www.airspayce.com/mikem/arduino/ ... NRF24.html
но модули как у тебя у меня тоже есть, только самопальные с питанием 3-5в на передатчике, а китайские требуют 12в для нормальной работы
тематические ответы только в форуме, в приват не пишите
-
mehanik_universe
- Открыл глаза
- Сообщения: 59
- Зарегистрирован: Вт дек 09, 2014 00:47:04
Re: Atmega328 , ардуино , радиосвязь.
но ведь можно и без переходника дуиновские скетчи заливать, дуина это же и программатор... Я в тинни13 заливал ,только там ядро нужно было скачать, для меги321 почему-то таким макаром не получается, там проводки кидаются на reset,MISO,SCK,MOSI.задолбался гуглить уже,никакой инфы нет...
- Реклама
-
mehanik_universe
- Открыл глаза
- Сообщения: 59
- Зарегистрирован: Вт дек 09, 2014 00:47:04
Re: Atmega328 , ардуино , радиосвязь.
Спойлер
kalobyte писал(а):mehanik_universe писал(а):я хочу узнать как в неё заливать дуиновские скетчи,
тебе нужен адаптер http://www.ebay.com/itm/6Pin-USB-2-0-to ... 5d4397cc60
у него есть вывод дтр, который подключается к сбросу и вроде бы там еще конденсатор надо или резистор допаять к контроллеру, недавно видел что-то на эту тему
короче цепь сброса должна быть
в контроллер надо прошить загрузчик быдлодуинский, а для этого в одну плату надо залить скетч исп или как там его, который в иде идет стандартно
потом выбрать прошивку бутлоадера в меню и тогда можеш пользоваться тем адаптером и заливать уже через загрузчик как это положено
как вариант - купить программатор http://www.ebay.com/itm/Mini-USBISP-USB ... 2edd4c1d37
правда там вроде тоже надо прошивку залить для работы с дудкойmehanik_universe писал(а): Радиомодули у меня XY-MK-5V.
для них есть библиотека http://www.airspayce.com/mikem/arduino/ ... __ASK.html
я сейчас ковыряю http://www.airspayce.com/mikem/arduino/ ... NRF24.html
но модули как у тебя у меня тоже есть, только самопальные с питанием 3-5в на передатчике, а китайские требуют 12в для нормальной работы
http://3g1l.com/blog-burn-bootloader-bl ... rduino-uno вот например
Re: Atmega328 , ардуино , радиосвязь.
mehanik_universe писал(а):но ведь можно и без переходника дуиновские скетчи заливать, дуина это же и программатор... Я в тинни13 заливал ,только там ядро нужно было скачать, для меги321 почему-то таким макаром не получается, там проводки кидаются на reset,MISO,SCK,MOSI.задолбался гуглить уже,никакой инфы нет...
Как нет
"Вся военная пропаганда, все крики, ложь и ненависть исходят от людей, которые на эту войну не пойдут !" / Джордж Оруэлл /
"Война - это,когда за интересы других,гибнут совершенно безвинные люди." / Уинстон Черчилль /
"Война - это,когда за интересы других,гибнут совершенно безвинные люди." / Уинстон Черчилль /
-
mehanik_universe
- Открыл глаза
- Сообщения: 59
- Зарегистрирован: Вт дек 09, 2014 00:47:04
Re: Atmega328 , ардуино , радиосвязь.
не получается залить скетч,для этого дудка не нужна случайно?
Re: Atmega328 , ардуино , радиосвязь.
дудка - часть среды ардуино, включите в св-вах галку чтобы подробные сообщения при программировании выводились
скетч arduinoisp лучше новый скачать, вроде одно время ошибка там была
напишу примерно как я делал (хотя в общем по инструкции) - взял arduino nano, залил туда скетч arduinoisp, соединил mosi/miso/clk/reset с мегой328, выбрал в среде ардуино программатор "arduino as isp" и залилось
скетч arduinoisp лучше новый скачать, вроде одно время ошибка там была
напишу примерно как я делал (хотя в общем по инструкции) - взял arduino nano, залил туда скетч arduinoisp, соединил mosi/miso/clk/reset с мегой328, выбрал в среде ардуино программатор "arduino as isp" и залилось
"Вся военная пропаганда, все крики, ложь и ненависть исходят от людей, которые на эту войну не пойдут !" / Джордж Оруэлл /
"Война - это,когда за интересы других,гибнут совершенно безвинные люди." / Уинстон Черчилль /
"Война - это,когда за интересы других,гибнут совершенно безвинные люди." / Уинстон Черчилль /
Re: Atmega328 , ардуино , радиосвязь.
mehanik_universe писал(а):для меги321 почему-то таким макаром не получается
328 ты хотел сказать?
чтобы заливать, нужно тогда руками в консоли запускать дудку с ключом программатора
я не знаю как называется программатор, если зашит скетч исп
у меня 2 платы и я пользуюсь загрузчиком, а для меги8 голой я использую обычный программатор на базе фт2232 или китайский универсальный тл866а со своей прогой
тематические ответы только в форуме, в приват не пишите
-
mehanik_universe
- Открыл глаза
- Сообщения: 59
- Зарегистрирован: Вт дек 09, 2014 00:47:04
Re: Atmega328 , ардуино , радиосвязь.
Спойлер
Morroc писал(а):дудка - часть среды ардуино, включите в св-вах галку чтобы подробные сообщения при программировании выводились
скетч arduinoisp лучше новый скачать, вроде одно время ошибка там была
напишу примерно как я делал (хотя в общем по инструкции) - взял arduino nano, залил туда скетч arduinoisp, соединил mosi/miso/clk/reset с мегой328, выбрал в среде ардуино программатор "arduino as isp" и залилось
хорошо, спасибо буду пробовать
-
mehanik_universe
- Открыл глаза
- Сообщения: 59
- Зарегистрирован: Вт дек 09, 2014 00:47:04
Re: Atmega328 , ардуино , радиосвязь.
Спойлер
kalobyte писал(а):mehanik_universe писал(а):для меги321 почему-то таким макаром не получается
328 ты хотел сказать?
чтобы заливать, нужно тогда руками в консоли запускать дудку с ключом программатора
я не знаю как называется программатор, если зашит скетч исп
у меня 2 платы и я пользуюсь загрузчиком, а для меги8 голой я использую обычный программатор на базе фт2232 или китайский универсальный тл866а со своей прогой
Да наверно придется покупать переходник юсб-юарт просто з/п долго ждать.... А случайно LPT порт нельзя использовать для заливки дуиновских скетчей?
Re: Atmega328 , ардуино , радиосвязь.
можно через буфер 244й, а программатор называется стк200
тематические ответы только в форуме, в приват не пишите
-
mehanik_universe
- Открыл глаза
- Сообщения: 59
- Зарегистрирован: Вт дек 09, 2014 00:47:04
Re: Atmega328 , ардуино , радиосвязь.
придется ждать зарплату и покупать переходник, ничего у меня не получилось...
Может кто-нибуть показать пример как тупо помигать светиком через радиомодуль XY-MK-5V?
пообещал друзьям что радиоуправление сделаю, нехочу лохануться, они и детальки купили...
Может кто-нибуть показать пример как тупо помигать светиком через радиомодуль XY-MK-5V?
пообещал друзьям что радиоуправление сделаю, нехочу лохануться, они и детальки купили...
Re: Atmega328 , ардуино , радиосвязь.
mehanik_universe писал(а):мне нужно что-то типо подал на 13 пин лог 1 , на другой дуине появилась лог 1.
ну ваши модули примерно так и работают, для мигания светиком можно применить что то типа "антидребезга" - проверяйте раз 10 в секунду и если подряд идут 1 или 0 - это и будет с хорошей вероятностью 1 и 0, только вот с таким подходом перейти от светика к многокомандному радиоуправлению сложно, лучше сразу разобраться с библиотекой (уже 2 ссылки дали, да и сами вы нашли) и юзать ее.
насчет программирования я так и не понял в чем проблема... на крайняк можно ноги меги отпаять на uno и прицепить их временно к самоделке - залить туда
на "соседнем" форуме есть подобная тема - там вроде получилось, но без дуины, просто avr - http://forum.easyelectronics.ru/viewtopic.php?f=4&t=21500
p.s. гоню - 10 нулей наверное подряд и не будет, но что не 1 то 0
можно еще ик управление сделать, в среде есть пример - там все просто (с библиотекой из примера), но пульт лучше готовый взять
"Вся военная пропаганда, все крики, ложь и ненависть исходят от людей, которые на эту войну не пойдут !" / Джордж Оруэлл /
"Война - это,когда за интересы других,гибнут совершенно безвинные люди." / Уинстон Черчилль /
"Война - это,когда за интересы других,гибнут совершенно безвинные люди." / Уинстон Черчилль /
Re: Atmega328 , ардуино , радиосвязь.
mehanik_universe писал(а):Может кто-нибуть показать пример как тупо помигать светиком через радиомодуль XY-MK-5V?
я тебе дал библиотеку и там есть готовые скетчи
возьми протеус и посмотри в виртуалке пока
покупай самую дешевую плату http://www.ebay.de/itm/371182527001
у меня такая есть и я еще брал синюю подороже малость
на желтой белым маркировка плохо видна, а так все одинаково
тематические ответы только в форуме, в приват не пишите
Re: Atmega328 , ардуино , радиосвязь.
Мне arduino nano нравятся - можно и на макетку воткнуть и в конструкцию и к usb так же цепляются - хоть программируй готовый девайс хоть аккумуляторы заряжай через этот разъем, стандартный размер ардуины не очень подходит для такого.
Примеры годных переходников для программирования и просто подключения к компу всяких атмег
http://chipster.ru/catalog/arduino-and-modules/interface-modules/3074.html
http://chipster.ru/catalog/arduino-and-modules/interface-modules/2283.html
http://chipster.ru/catalog/arduino-and-modules/interface-modules/2283.html
у 4х проводных переходников внутри тоже есть все сигналы и клеем они не залиты - можно вывести все что нужно, есть с 6ю проводами, но это уже в китае надо искать
ну или вот годный программатор
http://chipster.ru/catalog/tools/programmers/2406.html
(ппц как все весело в рублях стало, меня бы жаба задушила - лучше месяц из китая подождать или заказать там всякого в 2 раза больше)
Примеры годных переходников для программирования и просто подключения к компу всяких атмег
http://chipster.ru/catalog/arduino-and-modules/interface-modules/3074.html
http://chipster.ru/catalog/arduino-and-modules/interface-modules/2283.html
http://chipster.ru/catalog/arduino-and-modules/interface-modules/2283.html
у 4х проводных переходников внутри тоже есть все сигналы и клеем они не залиты - можно вывести все что нужно, есть с 6ю проводами, но это уже в китае надо искать
ну или вот годный программатор
http://chipster.ru/catalog/tools/programmers/2406.html
(ппц как все весело в рублях стало, меня бы жаба задушила - лучше месяц из китая подождать или заказать там всякого в 2 раза больше)
"Вся военная пропаганда, все крики, ложь и ненависть исходят от людей, которые на эту войну не пойдут !" / Джордж Оруэлл /
"Война - это,когда за интересы других,гибнут совершенно безвинные люди." / Уинстон Черчилль /
"Война - это,когда за интересы других,гибнут совершенно безвинные люди." / Уинстон Черчилль /
-
mehanik_universe
- Открыл глаза
- Сообщения: 59
- Зарегистрирован: Вт дек 09, 2014 00:47:04
Re: Atmega328 , ардуино , радиосвязь.
всем спасибо за помощь,скетчи в мегу не заливались возможно из за плохой платы, когда мегу вытащил и подал питалово на плату,то заметил что светик на 13 слабенько ,хаотически моргает причины так и не нашел,надо заново паять...
касательно радиопередатчика,то буду мучить библиотеку.
касательно радиопередатчика,то буду мучить библиотеку.
-
domrustika
- Грызет канифоль
- Сообщения: 257
- Зарегистрирован: Чт мар 22, 2007 13:50:33
- Откуда: казань
- Контактная информация:
Re: Atmega328 , ардуино , радиосвязь.
ребята помогите вот видео моего устройства http://www.youtube.com/watch?v=FnnWvMbb5v8
вот код
как сделать что бы при нажатии на 1 надпись реле не просто включалось а вЫключалось ждало 1 секунду и снова ВКЛЮЧалась? помогите что надо сделать с кодом?
вот код
Спойлер
Код: Выделить всё
/*
* arduWebRelays.ino
*
* Created: 07/09/2013 15:55:00
* Author: Guillaume Carriere - guillaume.carriere@gmail.com
*
VCC - 3.3V
GND - GND
SCK - Pin 13
SO - Pin 12
SI - Pin 11
CS - Pin 8 # Selectable with the ether.begin() function
*/
#include <EtherCard.h>
static byte mymac[] = { 0x74,0x69,0x69,0x2D,0x30,0x32 };
static byte myip[] = { 192,168,2,50 };
int etap = 0;
#define BUFFER_SIZE 500
byte Ethernet::buffer[BUFFER_SIZE];
BufferFiller bfill;
#define CS_PIN 10
#define RELAIS_1 5
#define RELAIS_2 6
bool relais1Status = false;
bool relais2Status = false;
const char http_OK[] PROGMEM =
"HTTP/1.0 200 OK\r\n"
"Content-Type: text/html\r\n"
"Pragma: no-cache\r\n\r\n";
const char http_Found[] PROGMEM =
"HTTP/1.0 302 Found\r\n"
"Location: /\r\n\r\n";
const char http_Unauthorized[] PROGMEM =
"HTTP/1.0 401 Unauthorized\r\n"
"Content-Type: text/html\r\n\r\n"
"<h1>401 Unauthorized</h1>";
void homePage()
{
bfill.emit_p(PSTR("$F"
"<title>Интернет-розетка</title>"
"Розетка 1: <a href=\"?relais1=$F\">$F</a><br />"
"Розетка 2: <a href=\"?relais2=$F\">$F</a>"),
http_OK,
relais1Status?PSTR("off"):PSTR("on"),
relais1Status?PSTR("<font color=\"green\"><b>Выключено</b></font>"):PSTR("<font color=\"red\">Включено</font>"),
relais2Status?PSTR("off"):PSTR("on"),
relais2Status?PSTR("<font color=\"green\"><b>Выключено</b></font>"):PSTR("<font color=\"red\">Включено</font>"));
}
void setup()
{
Serial.begin(115200);
pinMode(RELAIS_1, OUTPUT);
pinMode(RELAIS_2, OUTPUT);
if (ether.begin(BUFFER_SIZE, mymac, CS_PIN) == 0)
Serial.println("Cannot initialise ethernet.");
else
Serial.println("Ethernet initialised.");
ether.staticSetup(myip);
// Serial.println("Setting up DHCP");
// if (!ether.dhcpSetup())
// Serial.println( "DHCP failed");
ether.printIp("My IP: ", ether.myip);
ether.printIp("Netmask: ", ether.netmask);
ether.printIp("GW IP: ", ether.gwip);
ether.printIp("DNS IP: ", ether.dnsip);
}
void loop()
{
// digitalWrite(RELAIS_1, relais1Status);
// digitalWrite(RELAIS_2, relais2Status);
delay(1); // necessary for my system
word len = ether.packetReceive(); // check for ethernet packet
word pos = ether.packetLoop(len); // check for tcp packet
if (pos) {
bfill = ether.tcpOffset();
char *data = (char *) Ethernet::buffer + pos;
if (strncmp("GET /", data, 5) != 0) {
// Unsupported HTTP request
// 304 or 501 response would be more appropriate
bfill.emit_p(http_Unauthorized);
}
else {
Serial.print("----");
Serial.print(data);
Serial.println("----");
data += 5;
if (data[0] == ' ') {
// Return home page
homePage();
}
else if (strncmp("?relais1=on ", data, 12) == 0) {
// if (etap == 0)
// {
relais1Status = true;
digitalWrite(RELAIS_1, relais1Status);
delay(1500);
relais1Status = false;
digitalWrite(RELAIS_1, relais1Status);
// etap ++;
// }
bfill.emit_p(http_Found);
// if (etap > 2)
// {
// etap = 0;
// }
}
else if (strncmp("?relais1=off ", data, 13) == 0) {
if (etap == 0)
{
relais1Status = true;
digitalWrite(RELAIS_1, relais1Status);
delay(1500);
relais1Status = false;
digitalWrite(RELAIS_1, relais1Status);
etap ++;
}
bfill.emit_p(http_Found);
}
else {
// Page not found
bfill.emit_p(http_Unauthorized);
}
}
ether.httpServerReply(bfill.position()); // send http response
}
}
как сделать что бы при нажатии на 1 надпись реле не просто включалось а вЫключалось ждало 1 секунду и снова ВКЛЮЧалась? помогите что надо сделать с кодом?
Re: Atmega328 , ардуино , радиосвязь.
этот код сосет по 2м причинам
1 вид не отделен от быдлокода
2 я нихера в быдлокоде не понял
3 я нихера не понял, что вообще должно происходить
по логике при нажатии на линк он должен меняться на выключено и при следущем нажатии снова включить реле и сменить надпись
1 вид не отделен от быдлокода
2 я нихера в быдлокоде не понял
3 я нихера не понял, что вообще должно происходить
по логике при нажатии на линк он должен меняться на выключено и при следущем нажатии снова включить реле и сменить надпись
тематические ответы только в форуме, в приват не пишите


