![]() |
![]() |
#1 |
Senior Member
Регистрация: 16.09.2012
Адрес: Irkutsk
Сообщений: 555
Вес репутации: 1605 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]()
Открыл новую тему в которой предлагаю обсуждать вопросы по программированию Arduino, какие-то технические аспекты.
Конечно есть официальный сайт arduino.cc и русскоязычный arduino.ru и множество других, но пускай это будет и на нашем форуме. Ведь здесь собираются люди которые хотят приобщится к миру автоматики, хотят чем-то поуправлять - поуправлять своим домом. Ардуино как раз тот кирпичик, на котором строится "умный дом". Я не так давно купил это маленькое "чудо" поэтому опыта работы с ним немного. Хочу задать вопрос такого плана: послал команду на цифровой выход Код:
digitalWrite(13, HIGH); или digitalWrite(13, LOW); т.е. я хочу знать в каком состоянии находится тот или иной выход конечно можно какой-то переменной присваивать тоже значение, а потом читать ее и делать выводы. Но как то это не правильно. Код:
digitalWrite(ledPin, HIGH); int pin13 = 1; |
![]() |
![]() |
![]() |
#2 |
Administrator
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9824 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]()
Единственный способ это, вместо LOW и High изменять значение переменной Lamp_Stat
Или еще можно просто инвертировать эту переменную ~Lamp_Stat Вот так будет выглядеть код блинка Код:
boolean Lamp_Stat; void setup() { pinMode(13, OUTPUT); } void loop() { Lamp_Stat=~Lamp_Stat; digitalWrite(13, Lamp_Stat); delay(1000); } |
![]() |
![]() |
![]() |
#3 |
Senior Member
Регистрация: 16.09.2012
Адрес: Irkutsk
Сообщений: 555
Вес репутации: 1605 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]()
Спасибо.
Из вашего примера я понял получится мигалка ![]() Моя идея банальна, я хочу зайти на страницу роутера и увидеть состояние выход(а)ов ардуины, чтобы принять решение включить или выключить светодиод (реле). |
![]() |
![]() |
![]() |
#4 | |
Junior Member
Регистрация: 29.11.2012
Сообщений: 28
Вес репутации: 0 ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() Цитата:
PORTD – The Port D Data Register (регистр данных порта D) Для статики (вкл/выкл) подойдет, если PWM режим - нет, считывает ТЕКУЩЕЕ состояние, а PWM ногой дергает.... |
|
![]() |
![]() |
![]() |
#5 |
Senior Member
Регистрация: 16.09.2012
Адрес: Irkutsk
Сообщений: 555
Вес репутации: 1605 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]()
Столкнулся с такой проблемой.
Измеряю температуру с помощью DS18B20 и по запросу передаю данные в serial порт. Проблема в том, что если в момент запроса от мастера идет чтение температуры происходит ошибка в виде тайм-аута. В библиотеке опроса датчика температуры есть такой "нехороший" код, как ожидание в ~750ms. Вижу выход в виде обработки аппаратного прерывания т.е. при входящем символе ардуина бросала все дела и обрабатывала запрос. В общем не знаю как это победить, прошу помощи. |
![]() |
![]() |
![]() |
#6 |
Administrator
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9824 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]() |
![]() |
![]() |
![]() |
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1) | |
|
|