![]() |
|
|
#1 |
|
Member
Регистрация: 08.04.2013
Адрес: Томск
Сообщений: 64
Вес репутации: 0 ![]() |
Всем доброго времени суток!
Собственно перейду сразу к делу! Есть роутер tp-link mr3020 Есть ардуино. Цель: 1)Написать на C++ Программу определяющую комбинацию клавиш. 2)В зависимости от комбинации клавиш формировать массив из 4 чисел 3)Установить на роутер. 4)при подключении по ssh к роутеру запустить программу нажимать клавиши или комбинации клавиш. 5)Передавать этот массив в ардуино. Вообще вот в кратце! Проблемы с которыми я столкнулся 1)С помощью C++ Отслеживать комбинацию клавиш 2)С помощью C++ передавать значения в порт ttyUSB Вот код которым я отслеживаю нажатие клавиш Код:
#include <iostream>
#include <stdio.h>
#include <termios.h>
#include <unistd.h>
using namespace std;
int main()
{
while(1)
{
struct termios oldt,
newt;
int ch;
tcgetattr( STDIN_FILENO, &oldt );
newt = oldt;
newt.c_lflag &= ~( ICANON | ECHO );
tcsetattr( STDIN_FILENO, TCSANOW, &newt );
ch = getchar();
tcsetattr( STDIN_FILENO, TCSANOW, &oldt );
cout<<ch;
}
}
|
|
|
|
|
|
#2 |
|
Administrator
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9824 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
По первому вопросу не подскажу, а по второму: нужно открыть фаил /dev/ttyUSB0 и сохранять в него любые значения
|
|
|
|
|
|
#3 |
|
Member
Регистрация: 08.04.2013
Адрес: Томск
Сообщений: 64
Вес репутации: 0 ![]() |
|
|
|
|
|
|
#4 | |
|
Administrator
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9824 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
У меня нет готового примера, можно посмотреть на примере GPIO
Цитата:
|
|
|
|
|
|
|
#5 |
|
Member
Регистрация: 08.04.2013
Адрес: Томск
Сообщений: 64
Вес репутации: 0 ![]() |
|
|
|
|
|
|
#6 |
|
Administrator
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9824 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Читай комментарии в коде
|
|
|
|
|
|
#7 |
|
Junior Member
Регистрация: 07.04.2013
Сообщений: 14
Вес репутации: 0 ![]() |
void Export_GPIO(string gpio)//это функция с именем Export_GPIO
{ int exportfd; // exportfd целое знаковое (32 бит наверное ) exportfd = open("/sys/class/gpio/export",O_WRON//exportfd //присвоить значение попытки открыть файл в каиалоге/sys/class/gpio/export export if (exportfd < 0) // если не смогли открыть то пишем { printf("Cannot open GPIO to export it %d\n", errno); //если ошибка, то сообщить exit -1; } else { write(exportfd, gpio, 3); //записать в открытый фаил 3 байта значение gpo close(exportfd); //закрыть фаил } return 0; } |
|
|
|
|
|
#8 |
|
Junior Member
Регистрация: 07.04.2013
Сообщений: 14
Вес репутации: 0 ![]() |
тоже хочется писать на сях
есть много вопросов.. хотелось бы видеть специалиста кто может подсказать 1 как компилировать 2 как читать с ком порта 3 как открыть порт 4 как читать из порта 5 как поднять соединение чз tcp/ip 6 как отправить данные по IP да многое.. не пинайте сильно с linux познакомился после покупки wr703 так что в винде я ответы на эти вопросы знаю.. возожно большая часть вопросов лишняя и делать все это не надо.. а задача такова роутер должен поднять соединение с интернетом через usb модем .далее законектица по IP к OPC серверу ... OPC сервер опрашивать роутер по протоколу модбас или модбас через эзернет . данные берет роутер через usb сщь переходник с прибора по своему протоколу.. вот..... http://www.cyber-place.ru/showpost.p...8&postcount=79 http://cyber-place.ru/showthread.php?t=506 многое стало проясняться Последний раз редактировалось CrazyPit; 21.09.2013 в 00:39. |
|
|
|
|
|
#9 |
|
Administrator
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9824 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
1-Кросс компиляция
2-Так же как и любой фаил, смотри пример, только вместо файла будет порт ttyUSBxx 3-смотри ответ 2 4-смотри ответ 2 5-Я с этим еще разбирался 6-Я с этим еще разбирался Литература по программированию в линукс |
|
|
|
|
|
#10 |
|
Senior Member
Регистрация: 16.09.2012
Адрес: Irkutsk
Сообщений: 555
Вес репутации: 1606 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Пример опроса hid устройства
PHP код:
Код:
opkg install kmod-usb-hid |
|
|
|
![]() |
| Здесь присутствуют: 1 (пользователей: 0 , гостей: 1) | |
|
|