Страница 15 из 31 ПерваяПервая ... 5910111213141516171819202125 ... ПоследняяПоследняя
Показано с 141 по 150 из 307
  1. #141
    Продвинутый
    Регистрация
    03.06.2012
    Возраст
    38
    Сообщений
    210
    Вес репутации
    196

    По умолчанию Re: Запуск автомобиля с голоса

    тоесть ка то так

    PHP код:
    interrupt [EXT_INT1void ext_int1_isr(void

    tick++; //сигналы датчика 
        
    if (tick==2){       // если 2 - проехали 1 м., сбрасываем на 0 
                    
    tick=0
                  
                    
    period=0
                    } 
    }

    interrupt [TIM0_OVFvoid timer0_ovf_isr(void

    period++; 
    if(
    period>3000){  //если долго не прерывается пишем 0 
            
    period--; 
            } 


  2. #142
    Продвинутый
    Регистрация
    15.12.2008
    Возраст
    38
    Сообщений
    229
    Вес репутации
    400

    По умолчанию Re: Запуск автомобиля с голоса

    PHP код:
    void blink() //прерывание
    {
      
    tick++; //импульсы
    }
    void flash() //таймер
    {
      if(
    tick<2){stopflag=true;} //если меньше 2 - поднимаем флаг
      
    else {stopflag=false;} //если больше - сбрасываем
      
    tick=0//обнуляем

    Как-то так вроде. переменные только объяви в начале

  3. #143
    Продвинутый
    Регистрация
    03.06.2012
    Возраст
    38
    Сообщений
    210
    Вес репутации
    196

    По умолчанию Re: Запуск автомобиля с голоса

    чип сегодня совместными усилиями с manu_245 добили код на условие прерывания с датчика скорости


    PHP код:
    #include <MsTimer2.h>
    int  Mute 19;  // Pin 19 - Mute   
    int  Start 18;  // Pin 18 - Start    
    int  Stopi 17;  // Pin 17 - Stop    
    int  Opening 15;  // Pin 15 - Open   
    int  Light 16;  // Pin 16 - Light   
    int  Lampbattery 4
    int  Stopisignal 2
    int  Speedisensor 3
    int  tick ;
    byte com 0//reply from voice recognition   



    boolean running false;   
    boolean flag=false
    boolean stopflag=false;


    void Time() 

      
    tick++; 

    void flash() 

      if(
    tick<2){stopflag=true;} 
      else {
    stopflag=false;} 
      
    tick=0;  
    }  

    void setup() {   

      
    // initialize the digital pins as output   
      
    pinMode(MuteOUTPUT);   
      
    pinMode(StartOUTPUT);   
      
    pinMode(StopiOUTPUT);   
      
    pinMode(OpeningOUTPUT);   
      
    pinMode(LightOUTPUT); 
       
    pinMode(LampbatteryINPUT); 
      
    digitalWrite(LampbatteryHIGH); 
      
    pinMode(StopisignalINPUT); 
      
    digitalWrite(StopisignalHIGH); 
      
    pinMode(SpeedisensorINPUT); 
     
    digitalWrite (SpeedisensorHIGH); 
      
    attachInterrupt(1TimeFALLING); 
     
    MsTimer2::set(500flash); 
      
    MsTimer2::start(); 


      
    Serial.begin(9600);     // Start serial communication at 9600bps  
     
    delay(2000);   
     
    Serial.write(0xAA);  
    Serial.write(0x37);   
    delay(1000);   
    Serial.write(0xAA);   
    Serial.write(0x21);   
    }   


    void loop()    // run over and over again   
    {    

    if(
    Serial.available())    
    {    
      
    com Serial.read();  
      if(
    com==0x13 && !flag)  
      {  
         
    flag=true;   
         
    digitalWrite(MuteHIGH);  
         
    com=0
      }  
      
      if(
    flag)  
      {  
         switch(
    com)  
         {  
            case 
    0x15:  
              
    running = !running;    
              
    digitalWrite(Lightrunning);  
              
    flag=false;  
              
    digitalWrite(MuteLOW);  
              
    com=0;  
            break;  
             
             
            case 
    0x11
            if(
    digitalRead(2)==LOW && digitalRead(4)==LOW 
            
    && stopflag=false
            { 
            
    digitalWrite(StartHIGH);  
      
    delay(1000);  
     
    digitalWrite(StartLOW); 
     
    flag=false;  
              
    digitalWrite(MuteLOW);  
              
    com=0
            }  
            break;  
             
           case 
    0x12
           if(
    digitalRead(2)==LOW && digitalRead(4)==HIGH 
           
    && stopflag=false
           { 
          
    digitalWrite(StopiHIGH);  
      
    delay(1000);  
     
    digitalWrite(StopiLOW);  
     
    flag=false;  
              
    digitalWrite(MuteLOW);  
              
    com=0;  
           } 
            break; 
            
           case 
    0x14:
          if (
    stopflag=false
          
    digitalWrite(OpeningHIGH);  
      
    delay(1000);  
      
    digitalWrite(OpeningLOW);  
      
    flag=false;  
              
    digitalWrite(MuteLOW);  
              
    com=0;  
            break; 
             
            case 
    0x13
              
    flag=false
              
    digitalWrite(MuteLOW); 
              
    com=0
           break; 
      
         }  
      }  
    }   

    возник вопрос по поводу библиотеки короче я копирую архив открываю его в новую папку потом содержимое копирую в папку
    с программой на ардуино в папку libraries (которую я предворительно создал) в папке hardware вот но вот эти 3 строчки все равно остаются черными

    #include <MsTimer2.h>

    MsTimer2::set(500, flash);

    MsTimer2::start();

    а должны быть первая оранжевой а вторая и третья синими если все хорошо, что я сделал не так???
    Последний раз редактировалось Omigovolt; 26.12.2012 в 01:58.

  4. #144
    Администратор Аватар для Chip
    Регистрация
    08.06.2007
    Возраст
    55
    Сообщений
    13,382
    Вес репутации
    10

    По умолчанию Re: Запуск автомобиля с голоса

    Нужно библиотеку положить в папку .../Arduino-0023/libraries/MsTimer2

  5. #145
    Продвинутый
    Регистрация
    03.06.2012
    Возраст
    38
    Сообщений
    210
    Вес репутации
    196

    По умолчанию Re: Запуск автомобиля с голоса

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

  6. #146
    Администратор Аватар для Chip
    Регистрация
    08.06.2007
    Возраст
    55
    Сообщений
    13,382
    Вес репутации
    10

    По умолчанию Re: Запуск автомобиля с голоса

    Я не понимаю о чем речь, может лучше скриншот приложить?

  7. #147
    Продвинутый
    Регистрация
    03.06.2012
    Возраст
    38
    Сообщений
    210
    Вес репутации
    196

    По умолчанию Re: Запуск автомобиля с голоса

    Нажмите на изображение для увеличения. 

Название:	Snap 2012-12-26 at 20.33.23.jpg 
Просмотров:	920 
Размер:	146.5 Кб 
ID:	15811
    вот где лежат файлы библиотеки и соответственно
    каким цветом при этом выделяется строка
    #include <MsTimer2.h>
    и здесь вот тоже
    Нажмите на изображение для увеличения. 

Название:	Snap 2012-12-26 at 20.37.43.jpg 
Просмотров:	878 
Размер:	88.0 Кб 
ID:	15812

  8. #148
    Продвинутый
    Регистрация
    03.06.2012
    Возраст
    38
    Сообщений
    210
    Вес репутации
    196

    По умолчанию Re: Запуск автомобиля с голоса

    все кажется понял оказывается библиотека и должна быть прописанна черным шрифтом т. к. при удалении этой строчки появляются ошибки в

    MsTimer2::set(500, flash);
    MsTimer2::start();

    этих строчках все проверил скетч больше ошибок нет)))) теперь проверка

  9. #149
    Продвинутый
    Регистрация
    03.06.2012
    Возраст
    38
    Сообщений
    210
    Вес репутации
    196

    По умолчанию Re: Запуск автомобиля с голоса

    manu_245 что то не то
    вот весь скетч

    PHP код:
    #include <MsTimer2.h>

    int  Mute 19;  // Pin 19 - Mute   
    int  Start 18;  // Pin 18 - Start    
    int  Stopi 17;  // Pin 17 - Stop    
    int  Opening 15;  // Pin 15 - Open   
    int  Light 16;  // Pin 16 - Light   
    int  Lampbattery 4
    int  Stopisignal 2
    int  Speedisensor 3
    int  tick ;
    byte com 0//reply from voice recognition   



    boolean running false;   
    boolean flag=false
    boolean stopflag=false;


    void Time() 

      
    tick++; 

    void flash() 

      if(
    tick<2){stopflag=true;} 
      else {
    stopflag=false;} 
      
    tick=0;  
    }  

    void setup() {   

      
    // initialize the digital pins as output   
      
    pinMode(MuteOUTPUT);   
      
    pinMode(StartOUTPUT);   
      
    pinMode(StopiOUTPUT);   
      
    pinMode(OpeningOUTPUT);   
      
    pinMode(LightOUTPUT); 
       
    pinMode(LampbatteryINPUT); 
      
    digitalWrite(LampbatteryHIGH); 
      
    pinMode(StopisignalINPUT); 
      
    digitalWrite(StopisignalHIGH); 
      
    pinMode(SpeedisensorINPUT); 
     
    digitalWrite (SpeedisensorHIGH); 
      
    attachInterrupt(1TimeFALLING); 
     
    MsTimer2::set(500flash); 
      
    MsTimer2::start(); 


      
    Serial.begin(9600);     // Start serial communication at 9600bps  
     
    delay(2000);   
     
    Serial.write(0xAA);  
    Serial.write(0x37);   
    delay(1000);   
    Serial.write(0xAA);   
    Serial.write(0x21);   
    }   


    void loop()    // run over and over again   
    {    

    if(
    Serial.available())    
    {    
      
    com Serial.read();  
      if(
    com==0x13 && !flag)  
      {  
         
    flag=true;   
         
    digitalWrite(MuteHIGH);  
         
    com=0
      }  
      
      if(
    flag)  
      {  
         switch(
    com)  
         {  
            case 
    0x15:  
              
    running = !running;    
              
    digitalWrite(Lightrunning);  
              
    flag=false;  
              
    digitalWrite(MuteLOW);  
              
    com=0;  
            break;  
             
             
            case 
    0x11
            if(
    stopflag=false && digitalRead(2)==LOW && digitalRead(4)==LOW 
             

            { 
            
    digitalWrite(StartHIGH);  
      
    delay(1000);  
     
    digitalWrite(StartLOW); 
     
    flag=false;  
              
    digitalWrite(MuteLOW);  
              
    com=0
            }  
            break;  
             
           case 
    0x12
           if(
    stopflag=false && digitalRead(2)==LOW && digitalRead(4)==HIGH 
            

           { 
          
    digitalWrite(StopiHIGH);  
      
    delay(1000);  
     
    digitalWrite(StopiLOW);  
     
    flag=false;  
              
    digitalWrite(MuteLOW);  
              
    com=0;  
           } 
            break; 
            
           case 
    0x14:
          if (
    stopflag=false
          
    digitalWrite(OpeningHIGH);  
      
    delay(1000);  
      
    digitalWrite(OpeningLOW);  
      
    flag=false;  
              
    digitalWrite(MuteLOW);  
              
    com=0;  
            break; 
             
            case 
    0x13
              
    flag=false
              
    digitalWrite(MuteLOW); 
              
    com=0
           break; 
      
         }  
      }  
    }   

    ошибок нет а при командах и отсутствии сигнала на датчике скорости не происходит ни каких действий(((
    Последний раз редактировалось Omigovolt; 29.12.2012 в 10:24.

  10. #150
    Продвинутый
    Регистрация
    15.12.2008
    Возраст
    38
    Сообщений
    229
    Вес репутации
    400

    По умолчанию Re: Запуск автомобиля с голоса

    ну правильно)) у тебя условие, чтобы было движение, тогда будет и багажник открываться, и двигатель глохнуть))
    if(stopflag && digitalRead(2)==LOW && digitalRead(4)==HIGH) так должно работать по идее.

    и еще в начале замени boolean stopflag=true; хотя можно и подождать секунду после включения.

Страница 15 из 31 ПерваяПервая ... 5910111213141516171819202125 ... ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 6 (пользователей: 0 , гостей: 6)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •