Ви не увійшли.
По буквам что ли нужно объяснять?
Можешь и по буквам объясниться, если хочешь ответ получить.
А иначе ... ну, ты сам понимаешь куда ...
А в жизни?
А что "в жизни" интересует?
Понятно. Диагноз ясен. Вопрос закрыт.
Вот и я подумал, что с самонадеянным ... радиомонтажником обсуждать дальше не стану.
Olej пише:Что? Так и собираетесь идиотом всю жизнь прожит?
дык вы ещё и грубиян)))
А ты думал?
Я с понтующимимся подростками по-другому и не разговариваю.
Так учили.
Olej пише:В AVR обычно и в Arduino в частности таймер настроен на системный тик как-раз по 1024-й микросекунде (если не лазить к таймеру руками).
Ты идиот? Частота в ардуино 16МГц, значит системный тик - 1/16 микросекунды.
Идиот - это ты, дружище.
А 1/16 микросекунды - это период частоты процессора, к системному тику никакого прямого отношения не имеет ... хотя системный тик и формируется из этой частоты.
Это только у недоумков-самоделкиных, безграмотных радиолюбителей - что частота процессора, что системный тик ... и всё по хер.
возможно напутана маркировка входов на реле Vcc, Gnd, In попробую еще с этим поэксперементировать
В моём модуле, который абсолютно похож на вас, порядок размещения Vcc, Gnd, In в точности тот же, что и у вас на картинке.
IDE 1.8.4 - последний релиз.
Не последний. Последний - 1.8.5.
Olej пише:Почему вы решили что там "прям из IDE можна зашить OptiBoot"?
Я не решаю, я шью.
И зашил оптибут уже во все 328р/5в/16мгц - Uno,Nano, ProMini
Проблемки пока только с версиями 3,3в/8мгц. Особенно с вариантом 168р.
Но почему вы решили что это именно OptiBoot?
В IDE это (название) нигде и никак не видно.
здесь никого не интересует с чем вы работали и что умеете.
Естественно.
Да я и не собираюсь перед вами бисер метать.
Я просто рассказал для того, что могу сравнивать, в отличие от вас, для чего эта Arduino годится, а для чего - никак.
И там куда оно годится - оно очень даже ничего.
если кто то перерос, то спокойно идёт во всякие авр, малинки-шмалинки и прочее, читает книжки и учится.
но большинству здесь это нафиг не нужно)))
Вы не говорите за большинство.
Вы говорите за себя.
Вот так: мне это "нафиг не нужно " - "читать книжки и учится".
Что? Так и собираетесь идиотом всю жизнь прожит?
Спасибо за ваш ответ! я пробовал на In подавать +5В , имитируя сигнал с digital pin - предположил что так оно должно замкнуться, но увы- нет. похоже что все-таки трабла с реле.
Я пошёл на сайт продавца где я покупал модуль реле. И там ничего нет о типе/маркировке самого реле.
Но там есть такое в описании:
...
- In — сигнальный ввод
Вход реле инвертированный — низкий уровень, подаваемый на него замыкает реле, высокий размыкает.
Только сейчас заметил, что тип, указанный у вас на картинке, в точности (или почти в точности) совпадает с тем, который у меня: SRD-5VDC-SL-C.
Только выглядит мой совершенно по-другому, так как ваш 1-й на картинке: со светодиодами, более длинная плата...
Во дают китайцы!
Догадался (предположительно):
- маркировка типа нанесена на корпусе реле, как моя SRD-5VDC-SL-C, так и ваша JQC-3FF-S-Z ...
- к самому модулю управления реле для Arduino она, похоже, не имеет отношения
- а тип модуля? ... это у продавца нужно спрашивать
Olej пише:Разницу между 1024 и 1000 уловишь?
А ты разницу между системным тиком и тиком миллис уловишь? Или тебе это всё едино?
В AVR обычно и в Arduino в частности таймер настроен на системный тик как-раз по 1024-й микросекунде (если не лазить к таймеру руками).
Что такое за термин "тик миллис" - это только ты один такие страшные слова знаешь. Но millis() как-раз и считает 1.024мс интервалы, и именно из-за этого отстаёт от течения физического времени, и его приходится корректировать, каждые 42/43 отсчёта millis() инкрементируется не на 1, а на 2. Это по дефаулту, хотя детальные параметры коррекции можно перенастроить (но вряд ли стоит это делать). А соотношение вот тех 42 и 43 в последовательности корректировок они выбрали, чтобы моделировать некоторое дробное приближение 42.xxx.
А если тебе как-то по-другому это известно, так изложи ... с ссылками на источники и аргументами, а не бла-бла-бла:
Дабы глупость каждого была видна.
Olej пише:это при запрещённых прерываниях процессора,
А теперь возьми примпер оттуда, убери запрет прерываний и получи свои 17,6 мкс, бла-блабол.
А вот это значение, в реальной работе, с разрешёнными прерываниями и хотелось получить.
Только это ещё вопрос: получится или нет "свои 17,6 мкс" или нет? Потому как в их примере это можно только осциллографом видеть ... а мне такие эксперименты проделывать в облом. А я себе определял выше "свои 17,6 мкс" чисто программным путём, без шнурков и обвязки.
Так что про "возьми примпер оттуда" - это как-раз и есть бла-бла-бла: языком оно совсем просто ворочать, не камни, чай
Так-то вот как-то ... , примпер.
по поводу токовой нагрузки- замечание дельное, однако у меня есть другое реле которое работает при подобном подключении
корректно.
Только сейчас заметил, что тип, указанный у вас на картинке, в точности (или почти в точности) совпадает с тем, который у меня: SRD-5VDC-SL-C.
Только выглядит мой совершенно по-другому, так как ваш 1-й на картинке: со светодиодами, более длинная плата...
Во дают китайцы!
Olej пише:Вы ведь не пишете ни слова что там у вас за "реле"
ну как же не пишу, пишу, прямол в названии темы- JQC-3FF-S-Z
https://i.stack.imgur.com/TWLit.jpg
Не нужно в названии, нужно в теме.
У меня подобный модуль SRD-5VDC-SL-C ... только там чёрт ногу сломит в этих китайских именах...
по поводу токовой нагрузки- замечание дельное, однако у меня есть другое реле которое работает при подобном подключении
корректно.
https://www.jaycar.com.au/medias/sys_master/images/9057637728286/arduino-compatible-5v-relay-boardImageMain-515.jpg
Вообще то, вы сравниваете разные устройства: 1-е - это то, что они называют "Low level trigger" (на плате подписано), а 2-е - это, как мне кажется, чисто реле без обвязки управления.
Я бы попробовал реле без всякого Arduino: хуже уже не станет ... потом в магазин отнесёте
:
- подключить GND + VCC куда надо, к источнику питания...
- а IN просто позамыкать шнурком накоротко на эти GND и VCC
- и посмотреть как срабатывает (не срабатывает) реле.
Я уже вам ответил, но уточню конкретно на обвинения...
и что , интересно, вас тогда сюда привело, как впрочем и на другие ардуиновские форумы?
Меня интересуют некоторые тонкие детали, связанные с работой Arduino именно в режиме как PLC (что "подстраивает" ему Arduino IDE) + некоторые дополнительные возможности программирования AVR-процессора, вполне доступные и в Arduino, но ни словом не упомненные во всех описаниях и руководствах Arduino "для пЫАнЭров".
Вам о чём-нибудь это говорит: sprintf(), printf(), <<, template<> ...
Но если и не говорит, то не печальтесь сильно... - оно вам и не надо.
учить жизни и читать никому не нужные лекции - так это никому не надо и не интересно.
Попутно, выясняя себе интересное, показываю и подсказываю кой-кому то, что мне известно и понятно. Потом многие из тех, кому помогаю - благодарят.
А то, что вам персонально оно "никому не нужные лекции" - так ... "не в коня корм" , оно вам непонятно зачем и не нужно...
Так: закрыл рот и пошёл.
Прикупил ProMini с камнем atmega168P 3,3в 8Мгц.
В них залит бутлоадер старого образца (не OptiBoot), занимающий 2кб из 16.
Чего хочется от бутлоадера - маленький (512к) и с рабочим вотчдог.
На 328Р проблем нет - туда прям из IDE можна зашить OptiBoot.
Непонятно что вы хотите...
Что такое "маленький (512к)" ... это 512Kb? н-да ... маленький
Какой у вас Arduino IDE, версия?
Почему вы решили что там "прям из IDE можна зашить OptiBoot"?
вот вы как раз и относитесь к последней кагорте)))
Я не отношусь ни к какой вашей кОгорте (возьмите "Букварь" )
Я за свой трудовой стаж профессиональной деятельности в IT работал а). 8-ю семействами, системами команд процессоров, б). 7-ю разными операционными системами и в). 23-ю языками программирования, на которых реально писал код ... и иногда обучал этому коллег.
Поэтому я просто могу сравнивать что и куда годится.
А всякая вещь годится для одного, и совершенно непригодна для другого ... это совершенно естественно.
Меня лично Arduino интересует только как инструмент быстрого и простого в использовании интерфейса стандартного компьютера под управлением Linux к внешнему миру (это одно из удачных применений, которые я называл выше).
P.S. А вы то сами? Вы считаете Arduino "серебряной пулей" на все случаи жизни? Который скоро вытеснит с рынка IBM PC, Linux, Android ... и все эти другие малопонятные глупости?
Вопрос к администраторам форума:
При чём здесь администратор форума?
Вы хотите чтобы именно он вернул вам потраченные деньги?
Может так быть что реле деффективное?
Может. Но редко.
куплено в магазине Arduino.ua, чек присутствует.
Ну так идите в магазин и с ними разбирайтесь.
(насколько я предполагаю, ваш модуль реле стоит по чеку что-то порядка 40 руб. - дорога в магазин и потраченное время дороже станет)
Суть проблемы в том что при подключении реле к UNO, реле оказывается в неуправляемом состоянии- оно или включено хотя на него не подавали сигнал о включении или же выключено хотя напряжение было подано.
На момент "неправильного поведения" замерял напряжение между цифровым выходом и землей на реле- напряжение соответствовало установленному в коде значению (0 если выключено и около +5В когда подана единица).
Вы ведь не пишете ни слова что там у вас за "реле": модель, что там на нём написано, годится ли оно вообще под Arduino...
Кроме напряжения (которое вы меряете), есть ещё и токовая нагрузка, которой может просто не хватать для вашей модели реле.
Кроме того, вы не показываете код, которым вы там что-то включаете и выключаете...
Вопрос: это дефект в реле или схеме, как вам кажется? если есть проблемы со схемой- подскажите,пожалуйста, что не так?
Если реле- как часто попадаются дефективные реле такой маркировки?
Мне так кажется что там может быть всё что угодно!
Про реле "такой маркировки" ничего нельзя сказать, потому что вы ничего не пишете про маркировку.
Но мой опыт, достаточно большой, показывает что в 100 случаях к 1 нарекания на работу возникают по некорректным действиям пользователя, а не каким-то дефектам. Но только в 1 случае к 100 пользователь грешит на себя, а не на дефекты.
P.S. Хотя ссылка сама по себе интересная ... дальше там, а не с начала - я её как-то пропустил.
Там же показывают как loop() встраивает в функцию main() Arduino IDE:
for (;;) { loop(); if (serialEventRun) serialEventRun(); }
Вот то обслуживание ("системное"), которое за: if (serialEventRun) serialEventRun(); и тем, что может оттуда вызываться по цепочке, и добавляет к периоду тупого вызова loop() в цикле.
Там же, кстати, утверждается:
Предлагаю автору провести эксперимент с таким циклом:
while (1) { loop(); if (serialEventRun) serialEventRun(); }
и убедиться, что цикл выполняется в 4 раза быстрее.
Если это действительно так (мне в облом это проверять), то это полный идиотизм ... кого? компилятора AVR? разработчиков IDE? и т.д.
есть и вообще уникальная кагорта, которая лазит по ардуиновским форумам и с упоением рассказывает какая ардуино фигня , какая у неё иде отстой. только не понятно - какого они сюда приходят, видно с пиковских и стмовских выгнали))))
Ну так вы возьмите и напишите, тему объективного сравнения Arduino с другими изделиями ... и тех областей где его разумно применять.
1. Arduino, во многих случаях применения, действительно "фигня", в сравнении, например, с соизмеримым по стоимости Raspberry Pi, Galileo Gen2, PINE A64, BeagleBone Black, Orange Pi (я специально назвал многие, потому что "имя им легион" и появляются и будут всё новые и новые) ... такие вот всякие (похоже? ):
И для многих применений Arduino "фигня" вовсе не из-за производительности процессора, потому что и в идеологии Arduino и в совместимости с Arduino IDE появляются такие вот:
Но Arduino отличает философия работы, то что работает это как программируемый логический контроллер, PLC, массово используемые в промышленных АСУ ТП. И это годится для целей управления, но не годится для многих других применений универсальных процессоров.
2. И нигде толком ясно не обозначено области применения, где целесообразно использовать Arduino, а где нет - вот и про это вы можете написать в такой теме. Как мне кажется (IMHO), Arduino можно использовать только в областях:
- начальное обучение ... ну, тут всё понятно;
- макетирование устройств, быстрая отработка решений;
- единичные экземпляры поделок для себя, на уровне радиолюбительских конструкций;
- простейший способ приделать руки-ноги с мощному десктопному компьютеру, особенно используя попутно такой проект как Processing (от которого, собственно, и произошли Arduino и Arduino IDE);
И в этих применениях он замечательно хорош.
Но Arduino совершенно бессмысленный и неприменим (опять же IMHO) для:
- тиражных изделий ... когда таких изделий больше уже 2-3 экземпляров;
- изделий промышленного применения - из-за чудовищно низкой надёжности и живучести того, что построено на Arduino;
Вот вы возьмите и напишите, и внесите ясность и объективность ... вместо того, чтобы переводить и пересказывать хотелки и популяризирующие статьи, написанные итальянскими студентами ещё с 2005 года, когда они изобретали Arduino...
Olej пише:- период повторения "пустых" loop() в среднем 17.61 мкс.
А если бы ты туда ко всему ещё и delay впихнул, то время было бы ещё больше.
При чём здесь delay(), если интерес состоял именно в максимальной частоте loop(), которая в слабеньком Arduino совсем не так высока, и часто недостаточная в реальной обработке уже в звуковом диапазоне. Т.е. частота "быстрого" цикла без пассивных ожиданий и активно нагружающих операций в цикле.
Частота вызова пустого loop - 1.136МГц, стало быть период - 880 наносекунд.
Источник - http://arduino.ru/forum/programmirovanie/chastota-vyzovov-loop
Если бы ты читал до конца то, на что ссылаешься ... да ещё давал себе труд понимать то, что читаешь - то заметил бы такую простую вещь, что "стало быть" - это при запрещённых прерываниях процессора, когда служба времени не работает и недоступна для использования - это граничный режим, который на практике никому и никогда не понадобится.
P.S. Хотя ссылка сама по себе интересная ... дальше там, а не с начала - я её как-то пропустил.
Olej пише:время системного тика чуть меньше 1mc
Поделись телефоном дилера. Тоже хочу эту траву попробовать.
Попробуй ... если годишься хоть что-то в этом понимать
Посмотрим что ты за Сухов...
Вот тебе телефон дилера - http://arduino.ru/forum/programmirovani … ent-354224:
Возвращаемое значение увеличивается на единицу каждые 1024 мсек. Затем, когда миллис отстанет на 1 мсек, она "подводится" на единицу, т.е. возвращаемое значение перескакивает через один.
Разницу между 1024 и 1000 уловишь?
+ фактический результат теста выше - где хорошо видно неравномерный инкремент последовательных millis(): на 1, но иногда, каждый 42-43-й раз, на 2.
любой форум всегда в какой то мере помойка.
Во-первых, не любой форум помойка ... а почти любой форум помойка, 99% форумов - помойка.
Так было более-менее всегда, но особенно, в разы, во много раз это стало выявляться последние года 3-4. И это индикатор того, что форум как форма организации общения - умерла. Её вытеснили социальные сети, куда ушёл тасоваться молодняк, а по форумам остались доживать старые пердуны пенсионеры ... что, как ни странно и на удивление, демонстрируют все форумы Arduino. А профессиональные сообщества по интересам, по новым языкам программирования, по корпоративной принадлежности и т.д. - поуходили в Slack, Telegram и Viber. Форумам - конец, и это объективно обусловленный процесс, как только вымрут естественным путём населяющие их старпёры - последние форумы позакрываются. Подробней об объективных прицинах обречённости форумов, кому станет интересно, почитайте здесь: форумы дистрибутивов Linux.
Во вторых, лет 15-20 последних идёт настолько бурный процесс деградации публики, хоть каким-то концом принадлежащей к IT ... а больше всего из области программирования, что IT специалисты в большинстве своём, как человечий материал, превращаются из элиты общества, в отстой общества, в маргиналов. По верхам глянь - будто лоск и холёность, а глубже рассмотри - гниль и срань. Это тоже объективный процесс и на то есть мощные причины. Не буду распространяться, кому любопытно, почитайте здесь: почему IT специалисты - это худшая часть социума?
Но с Arduino - это особая песня! Здесь гыдотность на всех форумах такая, что зашкаливает за любые красные линии. Это в-третьих... Возможно это связано (по сравнению с другими программистско-электронными ресурсами) с высокой доступностью и очень низким порогом вхождения в тему. И наплыв в тему самоделкиных-радиолюбителей, по-быстрому наловчившихся пальцы тыкать или паяльники, и предлагающих услуги в надежде срубить бабла "с говна на 3 копейки".
Интересный вопрос: продолжительность пустого цикла опроса loop()?
Часто пишут: что мы, мол, точно не знаем задержек повторения loop() ... поэтому сложно судить ... о скважности, например delay() ...
Проверяем!
void setup() {
Serial.begin( 115200 );
}
unsigned long rep, i, s1, s2, prev, next;
bool cont = true;
void loop() {
if( cont ) { // ввод числа повторений
while( !Serial.available() );
rep = 0;
while( Serial.available() ) {
int r = Serial.read();
if( r >= '0' && r <='9' )
rep = rep * 10 + ( r - '0' );
delay( 3 );
}
cont = false;
s1 = s2 = prev = next = i = 0;
}
next = micros();
if( i <= rep ) { // посчёт задержек
if( i > 0 ) {
uint32_t inter = next - prev;
s1 += inter;
s2 += inter * inter;
}
i++;
}
prev = next;
if( i == rep + 1 ) { // вычисление результатов
Serial.print( i - 1, DEC );
Serial.print( " : " );
double m = (double)s1 / rep,
d = (double)s2 / rep - m * m;
Serial.print( m, 2 );
Serial.print( " +/-" );
Serial.println( sqrt( d ) );
cont = true;
}
}
В итоге имеем:
Итог:
- период повторения "пустых" loop() в среднем 17.61 мкс.
- со среднеквадратичным разбросом (СКО) 2.09 мкс. (11.87% от среднего)