Aven

Arduino. Энергосбережение и SD карта.

9 сообщений в этой теме

Aven    0

Появилась необходимость собрать устройство на базе Arduino, которое работает с SD картой.

Так как работа от аккумулятора, нужно максимально снизить ток потребления.

Возникла проблема, если отключить питание SD карты, чтобы уйти в сон, после его возобновления работа с картой уже невозможна, при попытке пере инициализировать все виснет.

Вопрос, как лучше реализовать отключение SD карты?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
andryxa    232

Попробуйте после подачи питания на карту, сделать не большую паузу, перед инициализацией карты.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Aven    0
Только что, andryxa сказал:

Попробуйте после подачи питания на карту, сделать не большую паузу, перед инициализацией карты.

Пробовал, ставил 5 секунд, не получилось.

 

  digitalWrite(9, HIGH); //подача питания на карту
  delay(5000);

  while (!SD.begin(10)) errorSDcard();  //пытаемся инициализировать карту

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
andryxa    232

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
andryxa    232

это конечно многое проясняет :D.  В таких случаях хорошо помогает лог анализатор....

Изменено пользователем andryxa

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Aven    0
4 минуты назад, andryxa сказал:

это конечно многое проясняет :D.  В таких случаях хорошо помогает лог анализатор....

 

Гдеж его взять то:))))

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Ваша публикация должна быть проверена модератором

Гость
Вы не авторизованы. Если у вас есть аккаунт, пожалуйста, войдите.
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Восстановить форматирование

  Разрешено не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Загрузка...

  • Похожие публикации

    • Автор: Oleg Prokopev
      Здравствуйте! Делаю тестовую тепличку. Подскажите, пожалуйста, как и чем оптимальнее всего запитать следующие элементы от сети?

      Arduino Uno R3
      AM 2302 (датчик температуры и влажности )
      1.8 ST7735s TFT LCD дисплей
      DS1307 (датчик времени)
      Реле 

      Ленту Led SMD 5730 (10 диодов) 3,0-3,4V 20mA
      Нагреватель 5V 2A
      Кулер 12V 0,15A x 2 шт.
      Увлажнитель воздуха 24V 0,06-0,15A
       
      И будет ли работать только такой модуль для увлажнения?
       
      Спасибо!
    • Автор: Илья Усачёв
      Добрый день, помогите пожалуйста создать приборную панель на ардуино. Есть 2 шаговых двигателя от приборной панели и есть часть кода для того чтобы ими управлять. Помогите дописать для того что бы работали спидометр и тахометр. 
      #include <Stepper.h> #define STEPS 720 // steps per revolution (limited to 315°) #define COIL1 8 #define COIL2 9 #define COIL3 10 #define COIL4 11 #define PotIn 0 // create an instance of the stepper class: Stepper stepper(STEPS, COIL1, COIL2, COIL3, COIL4); void setup(){ stepper.setSpeed(30); // set the motor speed to 30 RPM (360 PPS aprox.). stepper.step(630); //Reset Position(630 steps counter-clockwise). // Serial.begin(9600); //for debuging. } int pos=0; //Position in steps(0-630)= (0°-315°) void loop(){ int val = analogRead(PotIn); //get the potentiometer value (range 0-1023) val= map(val,0,1023,0,630); // map pot range in the stepper range. if(abs(val - pos)> 2){ //if diference is greater than 2 steps. if((val - pos)> 0){ stepper.step(-1); // move one step to the left. pos++; } if((val - pos)< 0){ stepper.step(1); // move one step to the right. pos--; } } // Serial.println(pos); //for debuging... // Serial.println(val); // delay(100); }  
    • Автор: Jatixo
      Сделал измеритель коэффициента пульсаций на Arduino, но нет под рукой эталонного прибора, чтобы хотя бы приблизительно откалибровать.
      Просьба отписаться в теме, у кого есть (или может на время взять у кого-то) одновременно и Arduino+Фоторезистор(обычный, например GL5528), и эталонного заводского прибора, хотя бы недорогого, например Radex Lupin, Эколайт, ТКА-ПКМ и т.п.
      Так как фоторезистор всё-таки без фильтров, то думаю стоит пробовать только на разных имеющихся светодиодных лампах, но если есть и лампы накаливания, лишним не будет для статистики.
      Ардуино можно использовать любую (Nano, Uno, Pro Mini и т.п.),  приложил скетч и схему подключения, в терминале (мониторе порта), скорость 9600, будет каждую секунду выводиться измеренные показания, хотелось бы увидеть результаты тестов на разных лампах с одного расстояния, например 20 см: фоторезистора и прибора.
      Pulsometer.ino

    • Автор: Dmitry Romanenko
      У меня есть работающий на частоте 433 (разбирал, на таблетке внутри написано) ключ от гаража. При передаче светится диод.
      Купил такой набор:

       
      Пробовал с приемником (большая платка) библиотеки RadioHead (пин 11) и rc-switch (пин 2) - консоль чистая, но собирается/заливается/запускается нормально.
      Куда смотреть, чтобы определить ошибку?

    • Автор: AronIIStone
      Добрый день
      Возникла ситуация: имеется ноутбук IBM ThinkPad t20 с запароленым Bios. Пароль никто не помнит, но он зашит в 24rf08. Его можно прочитать програмкой для считывания данной микросхемы, но для этого нужен программатор. Можно ли использовать в качестве такого программатора Ардуино, чтобы он вопринимался этой программой как надо, и если можно, то как нужно подключить их и какой скетч залить в ардуинку? 
      Саму программу выложу чуть позже, если необходимо - с мобильника сижу. 
      Спасибо