Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /* ========================================
- * Автор: Яночка
- * Мыло: theseversky@gmail.com
- * Название: senstest
- * Дата: 20.05.2018
- * Версия: 1.0 (вроде всё нормально работает)
- * ============================================================
- * Описание: скетч предназначен для теста аналоговых датчиков.
- * Их питание предусмотрено через цифровые пины, перечисленные в dpins.
- * Номера элементов apins (с которого считывается показание датчика)
- * должны соответствовать номерам элементов apins (цифровой выход =>
- * аналоговый вход), иначе считывание будет вестись не со включённого
- * в данный момент датчика.
- * Считывание сигналов с датчиков ведётся через Serial.
- * ============================================================
- */
- int dpins[]={2,3,4,5,6};
- int apins[]={0,1,2,3,4};
- int data=0; //переменная для записи показаний датчиков
- unsigned long timer=10000; //переменная для таймера, 10000 для опроса сразу
- void setup()
- {
- for(int i=0;i<5;i++) //i< число элементов в dpins и apins
- {
- pinMode(dpins[i],OUTPUT); //назначаются цифровые выходы
- }
- Serial.begin(19200); //перестраховка
- }
- void loop() {
- if(millis()-timer>=9980) //при таких таймингах опрос раз в примерно 10 сек
- {
- for(int i=0;i<5;i++) //как в 24, перебор датчиков по порядку dpins&apins
- {
- digitalWrite(dpins[i],HIGH);
- delay(10); //чтобы датчик успел включиться и считать показания
- data=analogRead(apins[i]);
- Serial.print("Показания датчика с пина А");
- Serial.print(apins[i]);
- Serial.print(" D");
- Serial.print(dpins[i]);
- Serial.print(": ");
- Serial.println(data);
- delay(10); //перестраховка
- digitalWrite(dpins[i],LOW);
- timer=millis(); //перезаписать таймер
- }
- Serial.print("Со старта: ");
- Serial.print(millis());
- Serial.print(", таймер: ");
- Serial.println(timer);
- Serial.println(); //разделить блоки опросов
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement