Nrf24l01+

maksim
Offline
Зарегистрирован: 12.02.2012

Так бывает когда перепутаны CE и CSN местами, также проверьте правильность подключения и на второй дуине.

Great_BAO
Offline
Зарегистрирован: 25.02.2013

maksim пишет:

Так бывает когда перепутаны CE и CSN местами, также проверьте правильность подключения и на второй дуине.

на второй дуине все спаяно согласно вот этой схеме

http://avrproject.ru/nrf24l01/nrf24l01_mod_full.png

все контакты перепроверенны и соответствуют выходам чипа Atmega8A

кстати, вне зависимости от наличия второго радиомодуля, в консоль все равно не должно ничего сыпаться, так как нет получения данных... я прав ?

и все таки, куда на меге подключать CE и CSN ? на указанные в скетче 9-10 пины ?

maksim
Offline
Зарегистрирован: 12.02.2012

А на Atmega8A CE и CSN вы какие указываете?

maksim
Offline
Зарегистрирован: 12.02.2012

Great_BAO пишет:

и все таки, куда на меге подключать CE и CSN ? на указанные в скетче 9-10 пины ?

Да, к 9 и 10. А случайно еще чего к Меге не подключено? Изернет шилд, например или SD-ридер?

Great_BAO
Offline
Зарегистрирован: 25.02.2013

на Atmega8A я подпаял CE к выходу (SS) PB2 14-ая лапка, а CSN к выходу (T1) PD5 9-ая лапка

Great_BAO
Offline
Зарегистрирован: 25.02.2013

maksim пишет:

Да, к 9 и 10. А случайно еще чего к Меге не подключено? Изернет шилд, например или SD-ридер?

нет, только радио-модуль

maksim
Offline
Зарегистрирован: 12.02.2012

Great_BAO пишет:

на Atmega8A я подпаял CE к выходу (SS) PB2 14-ая лапка, а CSN к выходу (T1) PD5 9-ая лапка

Я это на схеме вижу, я спрашиваю в коде вы какие выводы указываете RF24 radio(5, 10); ?

Great_BAO
Offline
Зарегистрирован: 25.02.2013

maksim пишет:

Я это на схеме вижу, я спрашиваю в коде вы какие выводы указываете RF24 radio(5, 10); ?

да, перепроверил, в независимом дуино прописаны 5,10

на меге прописываю 9,10

подключаю следующим образом:

Vcc - пин 3v3

GND - земля

MISO - пин 50

MOSI - пин 51

SCK - пин 52

CE - пин 9

CSN - пин 10

в таком варианте, в консоли тишина, что бы я туда не отправлял

если поменять местами 9-10 пины, то в консоль сыплется вот такое

Great_BAO
Offline
Зарегистрирован: 25.02.2013

возможно напортачил что-то в схеме независимого модуля, хотя вроде там все незамысловато

вот моя плата

питаю схему от кроны 9в

maksim
Offline
Зарегистрирован: 12.02.2012

Если же отключить автономный модуль, то все равно же игрики летят в монитор. Тут дело в стационарной схеме. Такое ощущение, что между Мегой и модулем где-то не контакт. Особое внимание уделите линиям MISO и CSN прозвоните их.

Great_BAO
Offline
Зарегистрирован: 25.02.2013

ну тут тоже сложно напортачить :)

maksim
Offline
Зарегистрирован: 12.02.2012

Вот еще что в попробуйте подтянуть 50 (MISO)

#include <SPI.h>
#include "RF24.h"
RF24 radio(9, 10);

const uint64_t pipes[2] = {0xF0F0F0F000LL, 0xF0F0F0F0FFLL};
// адреса каналов приема и передачи

void setup(){
  digitalWrite(50, 1);
  Serial.begin(9600);
  radio.begin();  
  radio.setDataRate(RF24_250KBPS); // Скорость передачи
  radio.setChannel(100); // Номер канала от 0 до 127
  radio.setRetries(15,15); // Кол-во попыток и время между попытками
  radio.openWritingPipe(pipes[1]);  // Открываем канал передачи
  radio.openReadingPipe(1, pipes[0]); // Открываем один из 6-ти каналов приема
  radio.startListening(); // Начинаем слушать эфир
}

void loop(){
  if(Serial.available()){
    char data[32] = "";
    byte i = 0;
    while(Serial.available()){
       data[i] = Serial.read();
       i++;
       delay(2);
    }
    data[i] = 0;
    radio.stopListening();
    radio.write(&data, 32);
    radio.startListening();
  }
  
  if(radio.available()){
    char data[32] = "";
    radio.read(&data, 32);
    Serial.println(data);
  }
}

игрики сыпаться перестали?

maksim
Offline
Зарегистрирован: 12.02.2012

А попробуйте подключить GND, MISO, MOSI и SCK к разъему ICSP

Great_BAO
Offline
Зарегистрирован: 25.02.2013

по поводу ноги - без изменений, сейчас попробую напрямую

Great_BAO
Offline
Зарегистрирован: 25.02.2013

нет, напрямую к ISP разьему - то же самое, либо сыпятся, либо тишина (если меня 9-10 ноги местами)

но сам ISP работает, прошиваю через него atmega8 через avrdude

maksim
Offline
Зарегистрирован: 12.02.2012

А от чего зависит это "сыпятся, либо тишина"? Явный неконтакт/непропай.

Great_BAO
Offline
Зарегистрирован: 25.02.2013

где может быть не пропай ? я подключаю напрямую радио-модуль к дуине соиденительными проводами

пробовал на 2-х радио-модулях

эффект один и тот же

сыпятся или нет, это меняется от смены местами пинов 9 и 10

maksim
Offline
Зарегистрирован: 12.02.2012

У вас провода у которых с обеих сторон мамы ("дырки"), то есть вы вставляете еще штырьки в дуину, которые могут быть короткими. Так от чего зависит это "сыпятся, либо тишина"?

Great_BAO
Offline
Зарегистрирован: 25.02.2013

maksim пишет:

У вас провода у которых с обеих сторон мамы ("дырки"), то есть вы вставляете еще штырьки в дуину, которые могут быть короткими. Так от чего зависит это "сыпятся, либо тишина"?

все контакты прозвонил, контакт есть на всех пинах (кстати использованны провода мама-папа)

про сыпятся или нет я уже писал выше,

если подключаю CE к 10-ому пину, а SCN к 9-му, то сыпется

если SCNк 10-ому пину, а CEк 9-му, то тишина, но при отправке данных в консоль, назад ответа нет

maksim
Offline
Зарегистрирован: 12.02.2012

Great_BAO пишет:

если SCNк 10-ому пину, а CEк 9-му, то тишина, но при отправке данных в консоль, назад ответа нет

Вот на этом стоит остановиться. Значит все нормально подключено если ничего не сыпится. 

Дальше. Еще одной дуины нету?

Great_BAO
Offline
Зарегистрирован: 25.02.2013

к сожалению нет, так было бы намного проще протестить

еще заметил такую тенденцию, при подключении одного и того же модуля к дуине и к независимой плате

питание на ногах сильно разнится

может в этом трабла ?

Great_BAO
Offline
Зарегистрирован: 25.02.2013

переносим обсуждение на завтра... точнее уже на сегодня, но на вечер :)

а то на работу не встану с этими модулями :)

maksim
Offline
Зарегистрирован: 12.02.2012

Да как видите активности на автономном модуле нету, значит он не работает.
Так а как вы Атмега8 прошиваете?

Great_BAO
Offline
Зарегистрирован: 25.02.2013

подключаю к меге по SPI + SS вывод с меги замыкаю с выходом Reset чипа до резистора

в мегу заливаю скетч ArduinoISP и щью avrdude

фьюзы выставленны норм, скетч льется отлично

Great_BAO
Offline
Зарегистрирован: 25.02.2013

правильно говорят - утро вечера мудренее :)

с питанием разобрался, лил hex скомпиленный в ArduinoIDE но с выставленной платой Mega1280 ))

исправил ошибку, перекомпилил скетч под плату Atmega8A (все необходимое забито в файле boards.txt)

m8.name=Atmega8 16MHz (Ext Cristal)
m8.upload.protocol=arduino
m8.upload.maximum_size=7680
m8.upload.speed=115200
m8.bootloader.low_fuses=0xDF
m8.bootloader.high_fuses=0xCF
m8.bootloader.file=optiboot/optiboot_atmega8.hex
m8.bootloader.unlock_bits=0x3F
m8.bootloader.lock_bits=0x0F
m8.build.mcu=atmega8
m8.build.f_cpu=16000000L
m8.build.core=arduino
m8.build.variant=standard

результата по прежднему нет, продолжаю думать....

Great_BAO
Offline
Зарегистрирован: 25.02.2013

а есть у кого либо схематика этого радио-модуля ?

заметил на нем отсутствующие/неприпаянные элементы, подумываю не отладочные ли это светодиоды ?

maksim
Offline
Зарегистрирован: 12.02.2012

Да не хватает чуть-чуть, думаю причена не в этом, это бы не повлияло на то что нет активности на ногах МК.

Great_BAO
Offline
Зарегистрирован: 25.02.2013

maksim пишет:

Да не хватает чуть-чуть, думаю причена не в этом, это бы не повлияло на то что нет активности на ногах МК.

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

ustas
Offline
Зарегистрирован: 12.03.2012

а что мешает загрузить примеры из библиотеки RF24?

Схема модуля, кстати, гуглится. Где я нашел, уже не помню. Если нужно - шлите адрес почты - вышлю.

Great_BAO
Offline
Зарегистрирован: 25.02.2013

ustas пишет:

а что мешает загрузить примеры из библиотеки RF24?

Схема модуля, кстати, гуглится. Где я нашел, уже не помню. Если нужно - шлите адрес почты - вышлю.

кидай сюда spam(собака)me-it.ru

ustas
Offline
Зарегистрирован: 12.03.2012

уже там

Great_BAO
Offline
Зарегистрирован: 25.02.2013

завтра должны принести дуину уно, буду пробовать на 100% рабочих дуинах

по результатам отпишусь

ustas
Offline
Зарегистрирован: 12.03.2012

Great_BAO пишет:

к сожалению нет, так было бы намного проще протестить

еще заметил такую тенденцию, при подключении одного и того же модуля к дуине и к независимой плате

питание на ногах сильно разнится

может в этом трабла ?

а почему на ножке GND в варианте МЕГА - висит потенциал питания? (кстати, неплохо ножки было бы пронумеровать, чтобы не надо было догадываться)

Great_BAO
Offline
Зарегистрирован: 25.02.2013

с питанием я уже разобрался, проблема была в неверно скомпилированном hex файле под другую плату

сейчас питание соответствует изображению "Arduino Mega" за исключением некоторых расхождений

maksim
Offline
Зарегистрирован: 12.02.2012

Скорее всего вы не прошиваете Atmega8 или криво прошиваете.

maksim
Offline
Зарегистрирован: 12.02.2012

Почитайте темку, вам будет полезно.

atmega8A.name=ATmega8A

atmega8A.bootloader.low_fuses=0xFF
atmega8A.bootloader.high_fuses=0xCF
atmega8A.bootloader.unlock_bits=0x3F
atmega8A.bootloader.lock_bits=0x0F
atmega8A.upload.maximum_size=8192
atmega8A.build.mcu=atmega8
atmega8A.build.f_cpu=16000000L
atmega8A.build.core=arduino:arduino
atmega8A.build.variant=standard

добаляете в bords.txt, запускаете IDE, заливаете в Мегу ArduinoISP, подключаете все как надо, выбираете программатор ArduinoISP, выбираете из списка плат ATmega8Aнажимаете Burn bootloader, если прошился без ошибок, значит фьзы прошиты, далее открываете скейтч Blink, нажимаете Upload, если прошился без ошибок значит все норм, далее подключаете светодиод к SCK и смотрите мигает ли светодиод с переодичностью в 1 секунду (0,5 Гц), если мигает нормально не быстрее и не медленнее ,то все норм, можно копать дальше.

Great_BAO
Offline
Зарегистрирован: 25.02.2013

прошиваю нормально, уже не первый чип прошил

бутлоадер грузить в 8кб чип не вижу смысла

проверяю прошивку всегда скетчом блинк на одну из ног, пока проблем с этим не было

меня больше интересует вопрос диагностики радио-модуля

вечером (пока не приехала дуино уно) буду заливать скетч на постоянную отправку данных и буду пытаться ловить его на модуле подключенном к меге

maksim
Offline
Зарегистрирован: 12.02.2012

Great_BAO пишет:

прошиваю нормально, уже не первый чип прошил

Как видите ваша атмега ножками не дергает в отличии от Меги.

Great_BAO пишет:

бутлоадер грузить в 8кб чип не вижу смысла

Где вы бутлоудер увидили??? Да еще и в 8кб??? Еще раз внимательно перечитайте сообщение.

maksim пишет:

нажимаете Burn bootloader ... значит фьзы прошиты

Это у вас выше зачем-то указан бутлоудер optiboot_atmega8.hex. выделяется под него место 8192 - 7680 = 512 байт, а вы его не заливаете и не пользуетесь им.

Зачем усложнять?
Зачем гемороиться с .нех файлами и работать вручную с дудкой, если за вас это делает IDE?

 

Great_BAO
Offline
Зарегистрирован: 25.02.2013

maksim пишет:

Как видите ваша атмега ножками не дергает.

если заливаю в него скетч блинк, то ножки дергаются

maksim пишет:

Где вы бутлоудер увидили??? Да еще и в 8кб??? Еще раз внимательно перечитайте сообщение.

я и не говорил что бутлоадер весит 8кб, я говорил что в чипе всего 8кб и не вижу смысла забивать часть этого пространства бутлоадером (так как в планах забить это пространство рабочим кодом)

а бутлоадер я увидел в вашей строке Burn bootloader ... 

этот пункт меню как раз и заливает бутлоадер в дуину... или я не прав ?

maksim пишет:

Это у вас выше зачем-то указан бутлоудер optiboot_atmega8.hex. выделяете под него место 8192 - 7680 = 512 байт и не пользуетесь им.

вот по этой строчке у меня как раз таки вопрос, играет ли она роль при установленных в чип фьюзах, указывающих чипу явное ограничение бут сектора в 128 и отключением BOOTRST ?

hex в таком случае льется ведь с начального адреса ?

и вообще играет ли роль эта строчка, с учетом что я не шью бутлоадер дуиновским IDE ? а использую ее только как програматор в работе с avrdude ?

maksim пишет:

Зачем усложнять?
Зачем гемороиться с .нех файлами и работать вручную с дудкой, если за вас это делает IDE?

только из за отказа от бутлоадера, 8кб в чипе не так уж и много, хочется использовать их по максимому

maksim
Offline
Зарегистрирован: 12.02.2012

Great_BAO пишет:

я говорил что в чипе всего 8кб и не вижу смысла забивать часть этого пространства бутлоадером (так как в планах забить это пространство рабочим кодом)

Ну так вы когда компилируете со своей версией строк в бордс посмтрите что вам пишит IDE об объеме прошивки "..скока-то байт из 7680 байт", с моей же версией будет писать "...скока-то байт из 8192 байт", так и как вы планируете забить все пространство (8192 байт) если у вас оно ограничено 7680 байтами?

Great_BAO пишет:

а бутлоадер я увидел в вашей строке Burn bootloader ... 

этот пункт меню как раз и заливает бутлоадер в дуину... или я не прав ?

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

Great_BAO пишет:

вот по этой строчке у меня как раз таки вопрос, играет ли она роль при установленных в чип фьюзах, указывающих чипу явное ограничение бут сектора в 128 и отключением BOOTRST ?

hex в таком случае льется ведь с начального адреса ?

Не играет.

Great_BAO пишет:

только из за отказа от бутлоадера, 8кб в чипе не так уж и много, хочется использовать их по максимому

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

В общем, что я вас тут убеждаю, как забить все 8 кб скейтчем без бута и при этом прошивать и скейтчи и фьзы из ArduinoIDE написано выше, хотите делать все через ж..пу да и еще без толку ваше право.

 

Great_BAO
Offline
Зарегистрирован: 25.02.2013

maksim пишет:

В общем, что я вас тут убеждаю, как забить все 8 кб скейтчем без бута и при этом прошивать и скейтчи и фьзы из ArduinoIDE написано выше, хотите делать все через ж..пу да и еще без толку ваше право.

я принял вашу информацию к размышлению и не пытаюсь утверждать что я умнее

просто меня сейчас больше интересует как запустить радио-модули, думаю что от того, каким вариантом залит скетч в чип они точно не заработают :)

ПыСы а по поводу файлика boards спасибо, буду учитывать это в будущем

Great_BAO
Offline
Зарегистрирован: 25.02.2013

кстати сразу вопрос по поводу файла boards.txt

если я правильно вас понял, то при отсутствии строк, указывающих на файл бутлоадера в boards.txt, IDE просто прошьет фьюзы и зальет скетч в виде hex данных в чип ?

если так, то используется ли при такой заливке параметр -e (предварительная очистка flash) ?

maksim
Offline
Зарегистрирован: 12.02.2012

При нажатии на Burn bootloader прошьются тоьлко фьюзы, а при нажатии на Upload прошивается скейтч, все как в штатном режиме. С помощью бутлоудера шьете или без него, через дудку или IDE, не важно, файл прошивки всегда один и тот же.

leshak
Offline
Зарегистрирован: 29.09.2011

Great_BAO пишет:

если так, то используется ли при такой заливке параметр -e (предварительная очистка flash) ?

Вы сегда сами можете это узнать. Идете в File/Preferences и отмечаете галку Show verbose output during upload

И тогда, в нижнем окне, будете видеть с какими параметрами запускается дудка, что оно отвечает... вообщем весь процесс.

Great_BAO
Offline
Зарегистрирован: 25.02.2013

отлично, с этим разобрались, после работы попробую заливать скетчи через IDE

maksim
Offline
Зарегистрирован: 12.02.2012

Такая строка формируется:
avrdude -CC:\\\avrdude.conf -v -v -v -v -patmega8 -cstk500v1 -P\\.\COM9 -b19200 -Uflash:w:\\\Temp\build5114159614577364620.tmp\Blink.cpp.hex:i 

Вы про это ...Uflash:w... говорите? Или про эти ...-v -v -v -v ...? Не знаю, сам не разбирался, но думаю и это можно настроить как надо.

Great_BAO
Offline
Зарегистрирован: 25.02.2013

нет, я про отдельный параметр у дудки

 -e   Perform a chip erase.

судя по логу, этот параметр не используется, но думаю это не критично

больше забавляет дублирование параметра -v -v -v -v из этого же лога :)

-v  Verbose output. -v for more.

этот параметр выводит подробную информацию при работе (чтение/прошивка) с чипом

думаю что эти параметры где то можно указать в IDE, вечером покапаюсь

Great_BAO
Offline
Зарегистрирован: 25.02.2013

maksim пишет:

Добаляете в bords.txt, запускаете IDE, заливаете в Мегу ArduinoISP, подключаете все как надо, выбираете программатор ArduinoISP, выбираете из списка плат ATmega8Aнажимаете Burn bootloader, если прошился без ошибок, значит фьзы прошиты, далее открываете скейтч Blink, нажимаете Upload, если прошился без ошибок значит все норм, далее подключаете светодиод к SCK и смотрите мигает ли светодиод с переодичностью в 1 секунду (0,5 Гц), если мигает нормально не быстрее и не медленнее ,то все норм, можно копать дальше.

В результате получаю моментально ошибку:

processing.app.debug.RunnerException
	at processing.app.debug.BasicUploader.burnBootloader(BasicUploader.java:288)
	at processing.app.Editor$47.run(Editor.java:2524)
	at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:597)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)

в какую сторону копать ?

maksim
Offline
Зарегистрирован: 12.02.2012

Версия IDE у вас какая? а когда в Мегу выгружаете таких ошибок нет? Вы случайно кроме файла boards больше никуда не лазили?

Great_BAO
Offline
Зарегистрирован: 25.02.2013

версия 1.5.2, в мегу льется все отлично без ошибок, больше никакие файлы не правил

скачал версию IDE 1.0.4 вроде заработало....

прошил фьюзы через IDE - удачно

прошил скетч - удачно

проверяю - нет ответа ((