помогите новичку!!!!!!!

pet
pet аватар
Offline
Зарегистрирован: 20.07.2014

уже мозг взрывается!!!! немогу написать это просто и коротенько! смысл в том чтобы озвучивать растояние, но как воспроизводить файл от полученного расстояния??? этот код занимает всю память и когда переваливает за 17 кб начинает тормозить, и перестаёт воспроизводить!


#include <util/delay.h>
#include <PlaySoundSD.h>
#include <SD.h>

    const int Trig = 8;
    const int Echo = 9;
    const int ledPin = 7;  // 13 – если будете использовать встроенный в Arduino светодиод
    const int chipSelect = 10;
    void setup()
    {
    pinMode(Trig, OUTPUT);
    pinMode(Echo, INPUT);
    pinMode(ledPin, OUTPUT);
     
    Serial.begin(9600);
    }

    unsigned int time_us=0;

    unsigned int distance_sm=0;
    
    int val=220;

    void loop()
    {
    digitalWrite(Trig, HIGH); // Подаем сигнал на выход микроконтроллера
    delayMicroseconds(10); // Удерживаем 10 микросекунд
    digitalWrite(Trig, LOW); // Затем убираем
    time_us=pulseIn(Echo, HIGH); // Замеряем длину импульса
    distance_sm=time_us/58; // Пересчитываем в сантиметры
    distance_sm=val-distance_sm; //  переводим  в рост от земли
    delay(50);
    while(distance_sm<val) // вводим  ростомер в рабочий цикл если в него кнонбудь зашол
    {
     
    Serial.println(distance_sm); // Выводим на порт
    
  /*    if (distance_sm<=val)
      {
      !SD.begin(chipSelect);  
      PlaySoundSD::startPlaybackSD("test.wav");
      PlaySoundSD::isPlay;
 }else*/ if(distance_sm==185) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("185.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==186) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("186.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==187) {
    !SD.begin(chipSelect);      
      PlaySoundSD::startPlaybackSD("187.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==188) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("188.wav");
      PlaySoundSD::isPlay;
    } else if(distance_sm==189) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("189.wav");
      PlaySoundSD::isPlay;
    } else if(distance_sm==190) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("190.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==191) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("191.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==192) {
    !SD.begin(chipSelect);      
      PlaySoundSD::startPlaybackSD("192.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==193) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("193.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==194) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("194.wav");
      PlaySoundSD::isPlay;
      
   } else if(distance_sm==195) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("195.wav");
      PlaySoundSD::isPlay;
      
    /* } else if(distance_sm==196) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("196.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==197) {
    !SD.begin(chipSelect);      
      PlaySoundSD::startPlaybackSD("197.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==198) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("198.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==199) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("199.wav");
      PlaySoundSD::isPlay;
    } else if(distance_sm==200) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("200.wav");
      PlaySoundSD::isPlay;
      
  /*  } else if(distance_sm==201) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("201.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==202) {
    !SD.begin(chipSelect);      
      PlaySoundSD::startPlaybackSD("202.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==203) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("203.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==204) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("204.wav");
      PlaySoundSD::isPlay;
    } else if(distance_sm==205) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("205.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==206) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("206.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==207) {
    !SD.begin(chipSelect);      
      PlaySoundSD::startPlaybackSD("207.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==208) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("208.wav");
      PlaySoundSD::isPlay;
    } else if(distance_sm==209) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("209.wav");
      PlaySoundSD::isPlay;
    } else if(distance_sm==210) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("210.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==211) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("211.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==212) {
    !SD.begin(chipSelect);      
      PlaySoundSD::startPlaybackSD("212.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==213) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("213.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==214) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("214.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==215) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("215.wav");
      PlaySoundSD::isPlay;
 */     
    } else if(distance_sm==184) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("184.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==183) {
    !SD.begin(chipSelect);      
      PlaySoundSD::startPlaybackSD("183.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==182) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("182.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==181) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("181.wav");
      PlaySoundSD::isPlay;
    } else if(distance_sm==180) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("180.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==179) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("179.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==178) {
    !SD.begin(chipSelect);      
      PlaySoundSD::startPlaybackSD("178.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==177) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("177.wav");
      PlaySoundSD::isPlay;
    } else if(distance_sm==176) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("176.wav");
      PlaySoundSD::isPlay;
    } else if(distance_sm==175) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("175.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==174) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("174.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==173) {
    !SD.begin(chipSelect);      
      PlaySoundSD::startPlaybackSD("173.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==172) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("172.wav");
      PlaySoundSD::isPlay;
    } else if(distance_sm==171) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("171.wav");
      PlaySoundSD::isPlay;
    } else if(distance_sm==170) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("170.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==169) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("169.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==168) {
    !SD.begin(chipSelect);      
      PlaySoundSD::startPlaybackSD("168.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==167) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("167.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==166) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("166.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==165) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("165.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==164) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("164.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==163) {
    !SD.begin(chipSelect);      
      PlaySoundSD::startPlaybackSD("163.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==162) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("162.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==161) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("161.wav");
      PlaySoundSD::isPlay;
    } else if(distance_sm==160) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("160.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==159){
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("159.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==158) {
    !SD.begin(chipSelect);      
      PlaySoundSD::startPlaybackSD("158.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==157) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("157.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==156) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("156.wav");
      PlaySoundSD::isPlay;
    } else if(distance_sm==155) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("155.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==154) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("154.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==153) {
    !SD.begin(chipSelect);      
      PlaySoundSD::startPlaybackSD("153.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==152) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("152.wav");
      PlaySoundSD::isPlay;
    } else if(distance_sm==151) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("151.wav");
      PlaySoundSD::isPlay;
    } else if(distance_sm==150) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("150.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==149) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("149.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==148) {
    !SD.begin(chipSelect);      
      PlaySoundSD::startPlaybackSD("148.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==147) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("147.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==146) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("146.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==145) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("145.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==144) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("144.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==143) {
    !SD.begin(chipSelect);      
      PlaySoundSD::startPlaybackSD("143.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==142) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("142.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==141) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("141.wav");
      PlaySoundSD::isPlay;
    } else if(distance_sm==140) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("140.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==139) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("139.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==138) {
    !SD.begin(chipSelect);      
      PlaySoundSD::startPlaybackSD("138.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==137) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("137.wav");
      PlaySoundSD::isPlay;
    } else if(distance_sm==136) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("136.wav");
      PlaySoundSD::isPlay;
    } else if(distance_sm==135) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("135.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==134) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("134.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==133) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("133.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==132) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("132.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==131) {
    !SD.begin(chipSelect);      
      PlaySoundSD::startPlaybackSD("131.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==130) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("130.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==129) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("129.wav");
      PlaySoundSD::isPlay;
    } else if(distance_sm==128) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("128.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==127) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("127.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==126) {
    !SD.begin(chipSelect);      
      PlaySoundSD::startPlaybackSD("126.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==125) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("125.wav");
      PlaySoundSD::isPlay;
    } else if(distance_sm==124) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("124.wav");
      PlaySoundSD::isPlay;
    } else if(distance_sm==123) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("123.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==122) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("122.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==121) {
    !SD.begin(chipSelect);      
      PlaySoundSD::startPlaybackSD("121.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==120) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("120.wav");
      PlaySoundSD::isPlay;
    } else if(distance_sm==119) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("119.wav");
      PlaySoundSD::isPlay;
    } else if(distance_sm==118) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("118.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==117) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("117.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==116) {
    !SD.begin(chipSelect);      
      PlaySoundSD::startPlaybackSD("116.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==115) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("115.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==114) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("114.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==113) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("113.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==112) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("112.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==111) {
    !SD.begin(chipSelect);      
      PlaySoundSD::startPlaybackSD("111.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==110) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("110.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==109) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("109.wav");
      PlaySoundSD::isPlay;
    } else if(distance_sm==108) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("108.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==107){
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("107.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==106) {
    !SD.begin(chipSelect);      
      PlaySoundSD::startPlaybackSD("106.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==105) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("105.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==104) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("104.wav");
      PlaySoundSD::isPlay;
    } else if(distance_sm==103) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("103.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==102) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("102.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==101) {
    !SD.begin(chipSelect);      
      PlaySoundSD::startPlaybackSD("101.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==100) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("100.wav");
      PlaySoundSD::isPlay;
    } else if(distance_sm==99) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("99.wav");
      PlaySoundSD::isPlay;
    } else if(distance_sm==98) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("98.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==97) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("97.wav");
      PlaySoundSD::isPlay;
      
    }/* else if(distance_sm==96) {
    !SD.begin(chipSelect);      
      PlaySoundSD::startPlaybackSD("96.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==95) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("95.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==94) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("94.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==93) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("93.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==92) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("92.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==91) {
    !SD.begin(chipSelect);      
      PlaySoundSD::startPlaybackSD("91.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==90) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("90.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==89) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("89.wav");
      PlaySoundSD::isPlay;
    } else if(distance_sm==88) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("88.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==87) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("87.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==86) {
    !SD.begin(chipSelect);      
      PlaySoundSD::startPlaybackSD("86.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==85) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("85.wav");
      PlaySoundSD::isPlay;
    } else if(distance_sm==84) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("84.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==83) {
    !SD.begin(chipSelect);      
      PlaySoundSD::startPlaybackSD("83.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==82) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("82.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==81) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("81.wav");
      PlaySoundSD::isPlay;
    } else if(distance_sm==80) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("80.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==79) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("79.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==78) {
    !SD.begin(chipSelect);      
      PlaySoundSD::startPlaybackSD("78.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==77) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("77.wav");
      PlaySoundSD::isPlay;
    } else if(distance_sm==76) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("76.wav");
      PlaySoundSD::isPlay;
    } else if(distance_sm==75) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("75.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==74) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("74.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==73) {
    !SD.begin(chipSelect);      
      PlaySoundSD::startPlaybackSD("73.wav");
      PlaySoundSD::isPlay;
      
    } else if(distance_sm==72) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("72.wav");
      PlaySoundSD::isPlay;
    } else if(distance_sm==71) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("71.wav");
      PlaySoundSD::isPlay;
    } else if(distance_sm==70) {
     
      !SD.begin(chipSelect);
      PlaySoundSD::startPlaybackSD("70.wav");
      PlaySoundSD::isPlay;
      
    } 

    /*if (distance_sm<50) // Если расстояние менее 50 сантиметром
    {
       digitalWrite(ledPin, 1); // Зажигаем светодиод
    }
    else
    {
       digitalWrite(ledPin, 0); // иначе тушим
    }*/
    
    delay(1000);
    break; //тушим цикл если ростомер пуст
    }
    }  
    

 

kisoft
kisoft аватар
Offline
Зарегистрирован: 13.11.2012

Не перепились ещё богатыри на Руси 

Как минимум почитайте что такое функция, посмотрите примеры

 

pet
pet аватар
Offline
Зарегистрирован: 20.07.2014

я понимаю что это смешно)))) 

но я думаю о том как можно значение переменной distance_sm поставить именем файла! возможно ли это?

я пытался покавырять библиотеку, но чем дальше в лес тем больше дров)))))

нащёт функций, это глобально бы упростило задачу! проблема в том что я всего месяц в програмировании))))

подскажите что можно сделать!!!!!!???!!! 

leshak
Offline
Зарегистрирован: 29.09.2011

pet пишет:

я понимаю что это смешно)))) 

Конечно смешно. Человек который не дает себе труда подумать пару минут над тем как бы информативно назвать тему, над тем что-бы ознакомится с прикрепленными ветками (научится вставлять код) ничего кроме желания поглумится - не вызвает.
Ну и в коде, вместо того что-бы "человек должен думать, а машина работать" видим попытку "применить грубую силу" и толькогда когда силы стало не хватать - начали маковку чухать.

Вы считаете что "месяц в програмировании" и все сразу должны проникнутся сочувствием?  C какого-испуга? Если в спорт-зал приходит новичок и пытается сразу выжать лежа 300 кг то все не будут ржать c этого?

Вот почему если человек не держал паяльник в руках, то он вначале учится паять DIP корпуса, потом иногда через годы месяцы на SMD переходит (хотя IMHO их даже проще), и только потом пытается что-то типа LFCSP, потом уже BGA. До последних пунктов возможно и никогда не доходит.
Но никому, почему-то не приходит в голову начинать учится пайке с BGA корпусов. Потому что очевидно и глаз видит размер того что нужно паять? А в програминге - запросто. Беремся за что угодно, ведь можно же потом сказать "помогите новичку". Это в паянии все понимают что "вначале нужно руку набить", а тут....

Вообщем открывайте учебники по C. Разбирайте с фунциями. Разбирайтесь со строками. Читайте про стороки ВСЕ. Ознакомтесь со ВСЕМИ стандартными строковыми функциями. Среди них обязательно найдется та которая пригодится для вашей задачи. Желательно разобраться с ними до уровня когда вы сами можете написать любую строковую функцию, а "готовыми" пользуетесь только для экономии времени (толковые учебники справочники частно даже приводят код этих функций, что-бы было понятно "как это делается").
 

 

Puhlyaviy
Puhlyaviy аватар
Offline
Зарегистрирован: 22.05.2013

Хммм. Так вот ты какой северный пушной олень. Моя в шоке.

zhenious
Offline
Зарегистрирован: 03.07.2014

Ардуинку жалко.... только ради нее :

Конструктор объекта класса String. Конструктор может быть вызван с параметрами различных типов:

http://arduino.ru/Reference/StringConstructor

 

Puhlyaviy
Puhlyaviy аватар
Offline
Зарегистрирован: 22.05.2013

А может кто еще ему подскажет, что для воспроизведения чисел не нужно их все по порядку записывать и например от 1 до 999 это всего 36 звуковых файлов. А не 999 :)
Хотя щас он скажет что считать научился месяц назад.

NeiroN
NeiroN аватар
Offline
Зарегистрирован: 15.06.2013

Код надо переделать по нормальному.

Puhlyaviy
Puhlyaviy аватар
Offline
Зарегистрирован: 22.05.2013

NeiroN пишет:

Код надо переделать по нормальному.


Да сбежал он уже. RIP

pet
pet аватар
Offline
Зарегистрирован: 20.07.2014

мммда! спасибо всем за внимание! а отдельным персонажам родившимся Великими Програмистами с набитыми и накачаными руками и мозгами, за помощь!!!!))))

 

 

NeiroN
NeiroN аватар
Offline
Зарегистрирован: 15.06.2013

начать надо с того что 100500 файлов чтобы посчитать до 100500 это не гуд. Во всех навигаторах(и прочих говорилках) есть файлы 1,2 ... 11,12 ... 19,20,30, .... 90,100,200,300 ... 900, 1000, 2000 ....

И чтобы сказало 145 воспроизводят 100, 40, 5

Во вторых у вас программа не ждет когда закончится воспроизводиться файл. Вот и получается что все в кучу - открыта куча файлов, памяти нет.

pet
pet аватар
Offline
Зарегистрирован: 20.07.2014

да!!! так  скорее всего и придётся съделать!

 я думал об этом варианте, но тут я столкнулся с другой проблемой. как разложить число в програмном коде по десятым, сотым, и целым долям?  может я неправильно смотрю на этот вариант. еслиб пример был-бы гненибудь, перерыл пол интернета и нашол только звуковую библиотеку)(  

pet
pet аватар
Offline
Зарегистрирован: 20.07.2014

как вы это видите?

хотябы маленький примерчик плиз...!

NeiroN
NeiroN аватар
Offline
Зарегистрирован: 15.06.2013

145/100 = 1

145%100 = 45

45/10 = 4
 
45%10 = 5
 
в цикле loop() 
 
проверяем воспроизводится ли файл и нужно ли начать воспроизведение.
если чило больше или равно100 то находим его цифру сотен, отнимаем от числа его сотни тоесть из 235 вычитаем 200 (var*100), формируем имя файла функцией sprintf(buf, "%d00.wav", var); 
если число больше или равно 20 то находим его цифру десятков, вычитаем десятки из 35 надо вычесть 30(var*10) ,формируем имя файла sprintf(buf, "%d0.wav", var); 
иначе (от 0 до 19) - формируем имя файла sprintf(buf, "%d.wav", var); 
Запускаем воспроизведение и идем далее по циклу loop()
 
в итоге постепенно уменьшая число мы знаем что еще осталось воспроизвести.
pet
pet аватар
Offline
Зарегистрирован: 20.07.2014

спасибо большое, за подсказку! с функцией sprintf я ещё не знаком, буду изучать!

сделал как смог)))  

а так проект получился и всё работает))))))

Puhlyaviy
Puhlyaviy аватар
Offline
Зарегистрирован: 22.05.2013

Ну все, математику можно не изучать. Не мог выделить сотни и десятки из числа. Дальше видимо будет хуже.

leshak
Offline
Зарегистрирован: 29.09.2011

pet пишет:

спасибо большое, за подсказку! с функцией sprintf я ещё не знаком, буду изучать!

leshak пишет:

Вообщем открывайте учебники по C. Разбирайте с фунциями. Разбирайтесь со строками. Читайте про стороки ВСЕ. Ознакомтесь со ВСЕМИ стандартными строковыми функциями. Среди них обязательно найдется та которая пригодится для вашей задачи. 

sprintf - это одна из строковых функций. а есть еще с десяток других полезных... бум ждать пока их кто-то тоже подскажет.

leshak
Offline
Зарегистрирован: 29.09.2011

Puhlyaviy пишет:
Ну все, математику можно не изучать. Не мог выделить сотни и десятки из числа. Дальше видимо будет хуже.

Было бы смешно если бы не грустно. Думаю больше 80% оканчивающих нынче школу будут иметь с этим проблемы. И окончивших ВУЗ - тоже думаю не мало набереться.
Лично видел, лет 8-мь назад, как бился головой о стол мастер по установки сигнализаций охранных, которому дали "новичка", месяц назад окончившего радио-технический(!!!) техникум. Который в течении 40-ка минут не мог расчитать какое будет итоговое сопротивление у двух резисторов подключенных паралельно и последовательно.

Смешно пока не подучаешь, что потом эти люди отвечают за нашу жизнь, скажем в метро :( И далеко не всегда можно сказать что "они в этом виноваты".

Кстати с этим "новичком" все разрешилось довольно быстро. По нормам, когда сработала сигнализация, должна приехать "группа". И сидеть под дверью пока офис обратно снова не поставят на охрану (то есть - до утра как правило). После того как они пару раз так посидели и выяснили что это все из-за "высокого образовательного уровня нового мастера". Они просто, после сработки сигналки на его объекте, посылали другую группу, которая вытягивала его из постели, привозила на объект и садила на табуретку до утра (а утром ему - на работу). А ребята там хмурые... :) За недельку чтения учебников по ночам (... а попробуй не почитай...) все у него наладилось. И все стало работать как часы.

 

 

Viral
Offline
Зарегистрирован: 05.08.2014

люди нужна помощь

мне нужно научить ардуино взаимодействовать с папками на ПК в формате exel. Я хочу что бы при нажатии кнопки число в конкретной ячейке в exel прибавлялось на значение указанное мной.

я пробовал использовать PLX-DAC но ничего не получилось

JollyBiber
JollyBiber аватар
Offline
Зарегистрирован: 08.05.2012

Попробуйте виагру. Ну или чеснока поешьте.

Puhlyaviy
Puhlyaviy аватар
Offline
Зарегистрирован: 22.05.2013

Ну мне кажется нужно пробовать кнут и пряник. Но если ардуино начнет постанывать от кнута то видимо садомазохисткая версия попалась.

Andrey_Y_Ostanovsky
Offline
Зарегистрирован: 03.12.2012

Puhlyaviy пишет:
Но если ардуино начнет постанывать от кнута то видимо садомазохисткая версия попалась.

Вряд ли процессор ардуины такой алгоритм потянет, нужно брать что-то более теплое и 32-х битное...

svizist1
Offline
Зарегистрирован: 28.01.2012

Так есть клавиатура)))) и набор команд для екселя)) типа TAB  и прочее))) либо строить надстройку. Я использую gobetwino. Есть примеры с ардуино. 

trembo
trembo аватар
Offline
Зарегистрирован: 08.04.2011

Viral пишет:

.....мне нужно научить ардуино взаимодействовать с папками на ПК в формате exel....

Где-то пару-тройку лет назад был готовый проект:

Ардуина ждала нажатия кнопки звонка, по нажатию что-то отправляла на гуглевский экселЬ, тот запрашивал картинку с вебакмеры стоящей около звонка и отсылал её на мобильник мэйлом.

Где было- не помню.... hackaday? habrahabr? easyelectronics?.....

Viral
Offline
Зарегистрирован: 05.08.2014

а если без шуток, это всё что вы можете мне посоветовать?

Viral
Offline
Зарегистрирован: 05.08.2014

ну ок попробую поискать. уже 3 часа ищу -_-

Puhlyaviy
Puhlyaviy аватар
Offline
Зарегистрирован: 22.05.2013

Viral пишет:

а если без шуток, это всё что вы можете мне посоветовать?


Без шуток могу вам посоветовать. Начать читать книги. Изучать работы других людей. Тогда та штука куда вы шапку одеваете начнет работать.
Еще можете почитать на форуме тему как правильно задавать вопросы.

Viral
Offline
Зарегистрирован: 05.08.2014

приму к сведению.