Форум обсуждения систем  

Вернуться   Форум обсуждения систем "Умный дом", проектов Ардуино, OpenWRT и других DIY устройств > Форум умного дома > Сделай сам > OpenWRT/LEDE

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 05.01.2015, 14:56   #171
Sl1ng3R
Junior Member
 
Регистрация: 05.01.2015
Сообщений: 1
Вес репутации: 0
Sl1ng3R is an unknown quantity at this point
По умолчанию Re: Подключаем CarDuino Nano V.7 к USB порту роутера с OpenWrt

Всем привет.
Столкнулся с уже обсуждавшейся проблемой, но ни одно из решений не помогло
И так, есть TL-WR703N, openwrt на борту.
Есть китайская arduino nano, из опознавательных знаков есть надпись DCCduino nano. С компом прекрасно работает, после нескольких часов плясок удалось подключить и к openwrt, нужны были драйвера CH341.

Теперь проблема - в ардуинке стандартный скейтч для зажигания диода по получению "1" по serial интерфейсу. Не работает, диод только успевает мигнуть, через комп все работает.

Строка инициализации такая:
stty -F /dev/ttyUSB0 cs8 57600 ignbrk -brkint -icrnl -imaxbel -opost -onlcr -isig -icanon -iexten -echo -echoe -echok -echoctl -echoke noflsh -ixon -crtscts -hupcl

Между RST и GND ногами пробовал вешать кондер на 10мФ, толку ноль...

Что я делаю не так?
Sl1ng3R вне форума   Ответить с цитированием
Старый 06.01.2015, 10:06   #172
stD
Senior Member
 
Аватар для stD
 
Регистрация: 02.04.2012
Адрес: Питер
Сообщений: 1,125
Вес репутации: 1312
stD has a brilliant futurestD has a brilliant futurestD has a brilliant futurestD has a brilliant futurestD has a brilliant futurestD has a brilliant futurestD has a brilliant futurestD has a brilliant futurestD has a brilliant futurestD has a brilliant futurestD has a brilliant future
По умолчанию Re: Подключаем CarDuino Nano V.7 к USB порту роутера с OpenWrt

Почему банальную установку драйвера называют "пляской"?
opkg install *.* - это какая-то сверхзадача?
stD вне форума   Ответить с цитированием
Старый 19.03.2015, 22:07   #173
piglet-animas
Member
 
Регистрация: 14.04.2014
Сообщений: 48
Вес репутации: 0
piglet-animas is an unknown quantity at this point
По умолчанию Re: Подключаем CarDuino Nano V.7 к USB порту роутера с OpenWrt

Доброй ночи!
Есть некоторая проблема, uart роутера выведен на разъем, к нему подключена arduino Uno, она шлет данные о напряжении (трехзначное число без точки, то есть 125, в вольтах 125/100 = 1,25В)
в putty пишу cat /dev/ttyATH0 , данные приходят но наблюдается ошибки:
155
157
11146
153
157
157
150
151
156
152
157
152
152
151
150
15
5
56
152
157
150

Как быть с таким прилипанием?
piglet-animas вне форума   Ответить с цитированием
Старый 20.03.2015, 00:08   #174
Admin
Administrator
 
Аватар для Admin
 
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9824
Admin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant future
По умолчанию Re: Подключаем CarDuino Nano V.7 к USB порту роутера с OpenWrt

Нужно отправлять пакеты с префиксом
Admin вне форума   Ответить с цитированием
Старый 20.03.2015, 04:15   #175
stD
Senior Member
 
Аватар для stD
 
Регистрация: 02.04.2012
Адрес: Питер
Сообщений: 1,125
Вес репутации: 1312
stD has a brilliant futurestD has a brilliant futurestD has a brilliant futurestD has a brilliant futurestD has a brilliant futurestD has a brilliant futurestD has a brilliant futurestD has a brilliant futurestD has a brilliant futurestD has a brilliant futurestD has a brilliant future
По умолчанию Re: Подключаем CarDuino Nano V.7 к USB порту роутера с OpenWrt

Цитата:
Как быть с таким прилипанием?
Нужно делать запрос, а потом получать. В Вашем случае cat /dev/ttyATH0 выхватывает куски. Хотя могу и ошибаться...

Последний раз редактировалось stD; 20.03.2015 в 04:19.
stD вне форума   Ответить с цитированием
Старый 20.03.2015, 04:26   #176
piglet-animas
Member
 
Регистрация: 14.04.2014
Сообщений: 48
Вес репутации: 0
piglet-animas is an unknown quantity at this point
По умолчанию Re: Подключаем CarDuino Nano V.7 к USB порту роутера с OpenWrt

Цитата:
Сообщение от Admin Посмотреть сообщение
Нужно отправлять пакеты с префиксом
А чуть-чуть подробнее, или где прочесть об этих "зверях"?

Цитата:
Сообщение от Admin Посмотреть сообщение
Нужно делать запрос, а потом получать.
Да, действительно arduino шлет постоянно, но если бы это было проблемой! А то такая картина наблюдается и при запросах с роутера.

Спасибо за ответы!
piglet-animas вне форума   Ответить с цитированием
Старый 20.03.2015, 07:59   #177
piglet-animas
Member
 
Регистрация: 14.04.2014
Сообщений: 48
Вес репутации: 0
piglet-animas is an unknown quantity at this point
По умолчанию Re: Подключаем CarDuino Nano V.7 к USB порту роутера с OpenWrt

Сделал как описано здесь http://cyber-place.ru/showthread.php?page=2&t=1060
не помогло
Ситуация такова:
В arduino залит код
PHP код:
int var1;
int var2;
boolean pinLedState_1 false;
 
void setup() {
  
Serial.begin(9600); 
  
pinMode(13,OUTPUT);
}
 
void loop () 
 {
  if (
Serial.available()>0)
    {
     
byte inByte Serial.read();
     switch (
inByte){
     
//============пришла 1============
     
case 49:
     
var1=random(27,99);
     
delay(5);
     if (
pinLedState_1 == false){pinLedState_1 true;}
     else {
pinLedState_1 false;}
     
Serial.print("#F3FDC2E87552");
     
Serial.print("\n");
     
Serial.print("#T1#");
     
Serial.print(0.11*var1);
     
Serial.print("\n");
     
Serial.print("#H1#");
     
Serial.print(var1);
     
Serial.print("\n");
     
Serial.flush();
     break;
     
     
//============пришла 2============
     
case 50:
     
var2=random(-10,12);
     
delay(5);
     
Serial.print(var2);
     
Serial.print("\n");
     
Serial.flush();
     break;
     }
   }
 
     if (
pinLedState_1 == false){digitalWrite(13,LOW);}
     else {
digitalWrite(13,HIGH);}  
 } 
Открываю два окна putty, в одном cat в другом команды echo,
самое интересное что светодиод загорается/гаснет всегда, а вот данные приходят со странным периодом, либо просто в putty так отображаются!

Последний раз редактировалось piglet-animas; 20.03.2015 в 08:09. Причина: 1
piglet-animas вне форума   Ответить с цитированием
Старый 20.03.2015, 10:21   #178
stD
Senior Member
 
Аватар для stD
 
Регистрация: 02.04.2012
Адрес: Питер
Сообщений: 1,125
Вес репутации: 1312
stD has a brilliant futurestD has a brilliant futurestD has a brilliant futurestD has a brilliant futurestD has a brilliant futurestD has a brilliant futurestD has a brilliant futurestD has a brilliant futurestD has a brilliant futurestD has a brilliant futurestD has a brilliant future
По умолчанию Re: Подключаем CarDuino Nano V.7 к USB порту роутера с OpenWrt

Попробуйте так:

PHP код:
if(Serial.available()>4)
   {
    if(
Serial.read()=='Y')
      {
        for (
uint8_t i=05i++)
         {
           
server[i] = Serial.read();    
         } 
 
     if((
server[0] =='+') && (server[1] =='=') && (server[2] =='Z')) // deskriptor
       
{   
         switch (
server[3]) // simvol
          
{
            case 
'O':  // obnovlenie
            
glavnaia();
            break; 
       
            case 
'A'// vkl D13
            
D13_High;
           
// R1 = 1;
           // glavnaia();
            
Serial.println("VKL 13");
            break;
      
            case 
'a'// otkl D13
            
D13_Low;
            
//R1 = 0;
            //glavnaia();
            
Serial.println("OTKL 13");
            break;
       
            
         }
       }
     else
       {
            for (
uint8_t i=0255i++)
              {
                 
server[i] = Serial.read();    
              }
       }  
     }
   }

 
void glavnaia()
    {
       
Serial.println(тут переменная с вашими данными); 
    } 

Отправка:

echo 'Y+=ZA' > /dev/ttyATH0 //включит Д13
echo 'Y+=Za' > /dev/ttyATH0 //отключит Д13
echo 'Y+=ZO' > /dev/ttyATH0 //пришлёт Ваши данные
stD вне форума   Ответить с цитированием
Старый 22.03.2015, 22:39   #179
cyberbot
Member
 
Регистрация: 10.03.2015
Сообщений: 40
Вес репутации: 0
cyberbot is an unknown quantity at this point
По умолчанию Re: Подключаем CarDuino Nano V.7 к USB порту роутера с OpenWrt

Мой первый тестовый скетч:
PHP код:
int Din 0;
int blink_en 1;

void setup() {
  
pinMode(13OUTPUT);
  
Serial.begin(57600);
}

void loop() {
  if (
Serial.available() != 0) {
    
Din Serial.read();

    switch (
Din) {
      case 
int(char('0')):
        
blink_en 0;
        
digitalWrite(13LOW);
        
Serial.println("OFF");
        break;
        
      case 
int(char('1')):
        
blink_en 0;
        
digitalWrite(13HIGH);
        
Serial.println("ON");
        break;

      case 
int(char('2')):
        
blink_en 1;
        
Serial.println("BLINK ON");
        break;
        
      default:
        
blink_en 0;
        
Serial.print("BAD COMMAND: ");
        
Serial.println(DinDEC);
        break;
    }
  }
  
delay(10);
  
_blink();
}

void _blink() {
  if (
blink_en == 1) {
    
digitalWrite(13LOW);
    
delay(1000);
    
digitalWrite(13HIGH);
    
delay(1000);   
  }

Работоспособность проверил с помощью терминальной программки из Arduido IDE. 0 - выкл, 1 - вкл, 2 - начинает мигать. Телеметрия в консоль возвращается - все работает как нужно и ожидаемо.

Теперь то же самое хоче сделать через роутер MR3020. Включаю все, загружаюсь, светодиод мигает после загрузки - так и должно быть.
В терминале выполняю:
echo 1 > /dev/ttyUSB0 - светодиод перестает мигать и горит постоянно
echo 0 > /dev/ttyUSB0 - светодиод гаснет
echo 2 > /dev/ttyUSB0 - светодиод зажигается и не мигает, зараза!
cat /dev/ttyUSB0 - в браузере секунд 20 крутится типа обновление страничики, потом ничего не происходит - не вижу в терминале ничего, аналогично и вывод в файл - файл создается, но в него ничего не пишется, но ведь мой скетч посылает данные, по идее они должны попасть в буфер, а потом из буфера вывестись в терминал?

Помогите понять, что я не понимаю )

Создается такое впечатление, что вспомогательная функция _blink() выполняется только 1 раз. Так как если светодиод горит, то при задании режима 2 он сначала гаснет, потом через 1 сек загорается и потом почему-то упорно продолжает гореть =)

Последний раз редактировалось cyberbot; 23.03.2015 в 00:50.
cyberbot вне форума   Ответить с цитированием
Старый 23.03.2015, 09:36   #180
stD
Senior Member
 
Аватар для stD
 
Регистрация: 02.04.2012
Адрес: Питер
Сообщений: 1,125
Вес репутации: 1312
stD has a brilliant futurestD has a brilliant futurestD has a brilliant futurestD has a brilliant futurestD has a brilliant futurestD has a brilliant futurestD has a brilliant futurestD has a brilliant futurestD has a brilliant futurestD has a brilliant futurestD has a brilliant future
По умолчанию Re: Подключаем CarDuino Nano V.7 к USB порту роутера с OpenWrt

Попробуйте убрать это:

PHP код:
 default:
        
blink_en 0;
        
Serial.print("BAD COMMAND: ");
        
Serial.println(DinDEC);
        break; 
...
И что это за огород?
Цитата:
int(char('1')):
Достаточно этого:
byte
...
if (blink_en == 1) то Ваша ардуина висит 99% времени.


Да и вроде я написал как надо делать...

Последний раз редактировалось stD; 23.03.2015 в 09:43.
stD вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 19 (пользователей: 0 , гостей: 19)
 

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 09:42. Часовой пояс GMT +3.


Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd. Перевод: zCarot
Яндекс.Метрика