Добрый день! Недавно приобрел iskra js, и с ней постигаю азы работы с семейством arduino подобных плат. Подскажите пожалуйста, есть ли возможность узнать подключено ли к пину что-либо? Идея такая - как то "опросить" плату по всем пинам, и выяснить что к пинуN и N1 что-то подключено, а остальные пины свободны.
Это не ардуино подобная, а ардуино мимикрировавшая плата. От Ардуино у нее только форма и ничего больше. Каждый пин в плате можно опросить и в ответ получить либо 0 либо 1. Но поможет ли это узнать, подключено к ноге что-то или нет? Это чтото может также иметь на выходе 0 или 1. Ваш подход неверен в принципе. Само ничто в плату не приползает и не подключается. Следовательно, надо понимать что Вы подключали к такой-то ноге и что значит то или иное состояние этой ноги.
Насколько я понял искру можно в последствии прошить, купировав ява интерпритатор и она станет "обычной" ардуино-подобной платой, или я путаю понятия? Т.к. это первые эксперименты и второй день знакомства, все в новинку. Да, до этого момента я тоже дошел, до опроса состояния, и получения 0 на подключенной, но не работающей led лампочке =) Собственно после чего и решил задать свой вопрос. Давайте я попробую сформулировать его иначе. Что если мы имеем плату, с подключенной периферией, которая выполняет некие действия, например светит нам той же самой пресловутой лампочкой, но мы хотим знать что устройство может справляться со своей задачей, лампочка не перегорела, она подключена и все у нас хорошо. Возникает мысль - повесить датчик света, и снимать показания с него, но что если у нас не лампа, а что-то другое. Думаю идея ясна.
1. Из Искры JS Ардуино сделать нельзя никаким образом. Можно программировать как обычный STM32 контроллер, но это уровень очень высокий, не новичка. 2. Идею не понял. Объясню сам. Любое устройство, которое имеет ВЫХОД, формирующий сигнал, может быть присоединено к ноге Искры и эта нога может быть считана. Мы должны понимать что за сигнал выдает присоединенное устройство и уметь его интерпретировать. Для ардуино туча примеров. Для Искры JS - читать вики Амперки.
1. Понял, спасибо. 2. Я знаю что к ноге присоединено устройство, например диод, как его мне со стороны платы понять что он работает? Может быть можно замерить сопротивление? Ок, как мне проверить работоспособность сервопривода например?
Это все великолепно, и вариант взять некий датчик для проверки состояния другого датчика - это первая мысль которая приходит в голову, но это плодит сущности, неужели нет способа в рамках одной платы и одного устройства проверить его работоспособность?
Диод и сервопривод - это управляемые устройства. Они не генерируют выходных сигналов для приема и обработки МК. Работоспособность их проверить можно, но каждый раз следует определить то свойство, которое и определяет эту работоспособность. Светодиод испускает свет, если он работоспособен. Свет можно принять и измерить МК, но принимать его будет датчик света. Сервопривод работоспособен если он вращается. Как будем проверять вращение? Сходу и не соображу. МК предназначен либо для управления (зажечь светодиод), либо для обработки сигналов, которые специально генерируются другими устройствами. Светодиод и сервопривод их не генерируют и значит напрямую, как источники информации для МК бесполезны. Однако и то и другое может управляться МК, поскольку МК генерирует выходные сигналы, а эти устройства предназначены для их приема.
В некоторых случаях и некоторые неисправности можно. В общем случае - нет. Вы какого-то искусственного интеллекта в микроконтроллере хочете.
Все я вас понял, спасибо за интересную дискуссию. Мне как раз не хватало понимания того что может МК. Особенно хорошо было про лопату, просто и понятно. =) А выводы я сделал такие: Хочешь понять, к примеру, работает ли твое шасси, попробуй проехать и проверить изменилось ли твое положение в пространстве. Хочешь выяснить работает ли светодиод - измерь освещенность. Ну и далее в таком духе.