-
- "если перевести в режим консоли, можно почитать и поменять установки" - если такой режим есть, то какие проблемы? =AlexD=(218 знак., 14.03.2012 16:56)
- А как сейчас то просматриваются данные и логи? Текстовым редактором в виде CSV? - Гудвин(13.03.2012 16:51)
- Ну прямо в терминале и смотрятся или копируются в любой редактор и высылаются мне с просьбой пояснить. Типа такого Vladimir Ljaschko(6717 знак., 13.03.2012 17:41)
- гы. про CSV Mahagam(426 знак., 13.03.2012 17:09)
- А почему сразу в браузере не строить графики? Нафига Excel-то? - FDA(14.03.2012 09:14)
- как? чем их формировать? Mahagam(51 знак., 14.03.2012 10:34)
- JavaScript пока никто не отменял. В современном мире браузер сейчас у всех есть. Сейчас уже многие проекты делаются как Web-приложения. Очень удобно! Не нужно пользователю никаких программ ставить. Обновлений тоже устанавливать не надо. Красота! - FDA(14.03.2012 10:42)
- чую, что 5 мегабайт текста жабой будут парсится ого-го! - Mahagam(14.03.2012 15:22)
- Да ладно, не дольше 1 сек. - FDA(14.03.2012 17:15)
- мне бы по этим данным график построить... - Mahagam(14.03.2012 19:15)
- Да не вопрос. С графикой работать там не очень сложно. Примеров в сети много. Сейчас HTML 5 уже всеми браузерами поддерживается, а такм есть отличный объект Canvas, при помощи которого можно с графикой работать. - FDA(14.03.2012 22:03)
- хм. а пример есть какой простецкий? - Mahagam(15.03.2012 12:24)
- Я вот по этой учил. POV(15.03.2012 15:05)
- Купите любую книжку по HTML 5, там везде больше половины книги посвящено как раз графике. Ну и просто JavaScript поизучать надо и библиотеку jQuery. - FDA(15.03.2012 14:09)
- Точно-точно. Я только у умею чтобы на канве рисовать.. это показатель простоты инструмента :) - POV(14.03.2012 22:20)
- хм. а пример есть какой простецкий? - Mahagam(15.03.2012 12:24)
- Да не вопрос. С графикой работать там не очень сложно. Примеров в сети много. Сейчас HTML 5 уже всеми браузерами поддерживается, а такм есть отличный объект Canvas, при помощи которого можно с графикой работать. - FDA(14.03.2012 22:03)
- мне бы по этим данным график построить... - Mahagam(14.03.2012 19:15)
- Да ладно, не дольше 1 сек. - FDA(14.03.2012 17:15)
- чую, что 5 мегабайт текста жабой будут парсится ого-го! - Mahagam(14.03.2012 15:22)
- Про 80 тыщ точек и эксель интересно. Там вроде бы лимит на 65536 строк. - SciFi(14.03.2012 10:41)
- В 2010 лимит примерно на 1 млн. с чем-т острок. - FDA(14.03.2012 10:43)
- JavaScript пока никто не отменял. В современном мире браузер сейчас у всех есть. Сейчас уже многие проекты делаются как Web-приложения. Очень удобно! Не нужно пользователю никаких программ ставить. Обновлений тоже устанавливать не надо. Красота! - FDA(14.03.2012 10:42)
- как? чем их формировать? Mahagam(51 знак., 14.03.2012 10:34)
- А почему сразу в браузере не строить графики? Нафига Excel-то? - FDA(14.03.2012 09:14)
- А куда сохранять файлы -- есть? А то 10-15к ПЗУ не весело (один файл с комментариями). Можно сделать какой-либо протокол передачи (Z-modem, или что там ещё поддерживает Hyper-Terminal) с автоматическим стартом. И прямо так и посылать. На ходу fk0(382 знак., 13.03.2012 10:44)
- Спасибо за идеи. Каменты. Поскольку в Win7 гипер-терминала нет, то обязательной привязки к терминалу нет. 1) Может глянуть шире и какую другую прогу, протокольную заюзать? 2) Варианты использования встроенных помехо-защищенных протоколов передачи Vladimir Ljaschko(397 знак., 13.03.2012 15:23)
- Я бы сделал х-модем в обе стороны. Запуск х-модема по команде с компьютера (специальной последовательностью символов, не мешающей другому протоколу, если есть, или в его рамках отдельными командами). А для Х-модема отдельную программу под виндовс, fk0(79 знак., 13.03.2012 16:32)
- Все украдено до нас - Codavr(13.03.2012 16:03, ссылка)
- у нас при вводе в том контроллере производится проверка допусков и ежели чего он ругается. бывает полезно почитать лог. правда это давно через USB-VirtualCOM. по UART-ам пускаем Modbus-RTU - Vit(13.03.2012 15:58)
- Гоняйте файлы каким набудь X-модемом(ну или Y). Простой как грабли, с нуля за полдня напишите. - Хитрый Китаец(13.03.2012 15:32)
- Ну да, загрузчики на писишной стороне пишу же. - Vladimir Ljaschko(13.03.2012 17:46)
- Я х-модем писал 5 лет (исправляя косяки, то тут, то там...) протоколы дело хитрое. А вот тут kermit нахаляву дают: fk0(88 знак., 13.03.2012 16:30)
- Да, и собственно как Vit пишет ниже. По началу приёма (если Z-modem) или по нажатию спецкнопки в терминале должно выдавать настройки обратно, в виде шаблона, с комментариями. И Z-modem тут лучше автоматическим началом приёма у HyperTerminal. Если fk0(242 знак., 13.03.2012 10:46)
- Спасибо за идеи. Каменты. Поскольку в Win7 гипер-терминала нет, то обязательной привязки к терминалу нет. 1) Может глянуть шире и какую другую прогу, протокольную заюзать? 2) Варианты использования встроенных помехо-защищенных протоколов передачи Vladimir Ljaschko(397 знак., 13.03.2012 15:23)
- Коллега делал формирователь дерева параметров с сохранением в XML-файл (читает из контроллера буквы и создаёт дерево), естественно с возможностью загрузки XML-файла для редактирования, ну и с отправкой этого дела одной кнопой в порт. При отправке Vit(700 знак., 13.03.2012 09:55 - 10:01)
- JSON получше будет. - MegaJohn(13.03.2012 10:48)
- Припомнился протокол "Пирамида" - Vit(13.03.2012 09:40)
- А мне припоминаются модем и звонки по BBS'кам. :) - vmp(13.03.2012 09:55)
- Закачать файл в устройство несложно: в терминале есть ф-ция send file. В файле делаем маркеры begin, end для парсера. - SciFi(13.03.2012 09:37)
- Если нет контроля потока, а прибор не слишком реактивный может плохо кончиться. Ведь файл на ходу разбирать ещё (а то хранить негде). Надо предусмотреть либо XON/XOFF, либо RTS/CTS. Причём первое чревато хитрыми глюками в ряде случаев, fk0(222 знак., 13.03.2012 10:49)
- Если есть 10кб лишней флеши то 200байт рамы завсегда найти можно.Не все так ужасно. - PlainUser(13.03.2012 21:35)
- Файл с конфигом, например, 20кб. Какие 200 байт? 200 байт нужно только на fifo буфер, чтоб X-modem работал надёжно (ну не 200, а десятка три, но не суть). - fk0(13.03.2012 21:49)
- В принципе можно вообще конфиг наговаримать в микрофон а потом WAV передавать в прибор и там декодировать. - PlainUser(14.03.2012 00:09)
- Или через ютуб еще можно ... - PlainUser(14.03.2012 00:10)
- Setup в виде ini: 100 значений * ( имя 16 + значение 4 ) = 20 кБ. Имена уже лежат в массиве в константной памяти. То есть передается строка файла, прибор находит индекс в массиве имен и пишет в массив значений. Текстовую строку обрамить стандартно Vladimir Ljaschko(64 знак., 13.03.2012 22:01)
- Сам файл конфига 20кб. И прикинь, он одномоментно вольётся через UART. Разобрать и записать куда надо не успеешь. Вот я о чём. А для одного алгоритма разбора строк 200 байт, например нужно (там может комментариев стольько, в строке, на 200 fk0(225 знак., 13.03.2012 22:44)
- Ну что за чушь, конфиг разбирается на лету посимвольно, в экстремальном случае нужен буфер только на 1 (один) символ. Машина состояний рулит. - =AlexD=(14.03.2012 07:57)
- Дадада, вообще весь компьютер можно представить в виде конечного автомата. Только памяти для хранения состояния нужно не меньше, чем было памяти у ЭВМ. Также и тут. Число состояний будет измеряться переменной на несколько порядков более fk0(1002 знак., 14.03.2012 11:39)
- Символы тупо разбираются на лету синтаксическим анализатором с выкидыванием всего лишнего - один автомат, поиск ключевых слов - второй автомат, поиск имён параметров - третий, разбор значений параметров - четвёртый (это если правила сложные, а =AlexD=(214 знак., 14.03.2012 13:00)
- Уже 4 автомата, замечательно. А им что, состояние хранить не надо? А там, случайно, автомат не со стеком состояний получается? Одни вопросы. Я в отличии от, хотя бы несколько парсеров за жизнь написал. Работающих. И в отличии от fk0(916 знак., 14.03.2012 14:48)
- Ну не стоит собачиться. Истина посередине. Некоторые автоматы вырождаются в простейшие функции. Есть здравый смысл у AlexD. - Vladimir Ljaschko(14.03.2012 15:07)
- Я всё не пойму, ты правда даун, или прикидываешься? Всё сказанное мной из моей реальной практики. Четыре автомата - четыре байта хранения состояний. Плюс накладных расходов пару указателей. Сущие копейки. Короче завязывай с куревом. - =AlexD=(14.03.2012 15:01)
- За такую манеру разговора за пределами интернета ты давно бы в табло получил. А если по существу: изначальное утверждение (отматываем тред на 3 сообщение выше) мол "вообще не требует памяти, нужен один символ" -- ЛОЖНО (память автомата -- fk0(1597 знак., 14.03.2012 15:52)
- Чтож ты так нервничаешь, успокойся. AlexD говорил про 1 байт для приема, а не для работы всего парсера. А четыре автомата это не очень то сложно, AlexD прав. А 4 байта состояний автоматов этот вовсе не 2^32 состояний, используется всего несколько Михаил Е.(50 знак., 14.03.2012 16:30)
- Попробуй дать оценку минимально возможному количеству состояний. Во-первых речь уже не о так называемом "недетерминированном конечном автомате" (Структуры данных и алгоритмы - Ахо, Хопкрофт, Ульман -- для справки). Потому, что он должен же как-то fk0(1968 знак., 14.03.2012 17:09 - 17:13)
- Есть такой проект -- re2c. Генерирует из заданного описания прямой C-код ДКА (без таблиц) для разбора регулярных выражений с высокой скоростью. Я ему ради интереса задал регулярное выражение требующее разбора одного из 28 токенов. На выходе fk0(8517 знак., 14.03.2012 18:46 - 18:48)
- Извини, сейчас статьи некогда читать, работы много:)) В прикрепленном файле (самый маленький нашел) пример моего автомата. Состояние определяется переменной step. Никаких таблиц, всего 4 состояния. Статьи потом погляжу. Михаил Е.(14.03.2012 18:09)
- Я здесь парсера не вижу в упор. - fk0(14.03.2012 18:49)
- На тебе парсер, если делать нехрена. Я тебе про автоматы, а ты про космические корабли. Михаил Е.(14.03.2012 22:57)
- Я здесь парсера не вижу в упор. - fk0(14.03.2012 18:49)
- Попробуй дать оценку минимально возможному количеству состояний. Во-первых речь уже не о так называемом "недетерминированном конечном автомате" (Структуры данных и алгоритмы - Ахо, Хопкрофт, Ульман -- для справки). Потому, что он должен же как-то fk0(1968 знак., 14.03.2012 17:09 - 17:13)
- Если ты не в состоянии придумать алгоритм, который ищет совпадение в таблице отсортированных слов посимвольно, сохраняя только указатель и счётчик, то это характеризует исключительно только твои умственные способности. =AlexD=(225 знак., 14.03.2012 16:29)
- Свои способности ты сам уже охрактеризовал. Указатель КУДА? На единственный байт памяти? Не надо юлить и заниматься словоблудием. В этих автоматах есть память в "неявном виде". - fk0(14.03.2012 16:46)
- Да, на "единственный байт" :-)) - =AlexD=(14.03.2012 16:52)
- Свои способности ты сам уже охрактеризовал. Указатель КУДА? На единственный байт памяти? Не надо юлить и заниматься словоблудием. В этих автоматах есть память в "неявном виде". - fk0(14.03.2012 16:46)
- Чтож ты так нервничаешь, успокойся. AlexD говорил про 1 байт для приема, а не для работы всего парсера. А четыре автомата это не очень то сложно, AlexD прав. А 4 байта состояний автоматов этот вовсе не 2^32 состояний, используется всего несколько Михаил Е.(50 знак., 14.03.2012 16:30)
- За такую манеру разговора за пределами интернета ты давно бы в табло получил. А если по существу: изначальное утверждение (отматываем тред на 3 сообщение выше) мол "вообще не требует памяти, нужен один символ" -- ЛОЖНО (память автомата -- fk0(1597 знак., 14.03.2012 15:52)
- Уже 4 автомата, замечательно. А им что, состояние хранить не надо? А там, случайно, автомат не со стеком состояний получается? Одни вопросы. Я в отличии от, хотя бы несколько парсеров за жизнь написал. Работающих. И в отличии от fk0(916 знак., 14.03.2012 14:48)
- Забыл сказать. Если у него там тупо ИМЯ = значение, то далее всё просто. А если сложная грамматика, то после разбивки на токены и начинается автомат. Его лучше бы записать в виде EBNF и руками на бумажке записать все переходы, потом кодировать. fk0(54 знак., 14.03.2012 11:45)
- Символы тупо разбираются на лету синтаксическим анализатором с выкидыванием всего лишнего - один автомат, поиск ключевых слов - второй автомат, поиск имён параметров - третий, разбор значений параметров - четвёртый (это если правила сложные, а =AlexD=(214 знак., 14.03.2012 13:00)
- Дадада, вообще весь компьютер можно представить в виде конечного автомата. Только памяти для хранения состояния нужно не меньше, чем было памяти у ЭВМ. Также и тут. Число состояний будет измеряться переменной на несколько порядков более fk0(1002 знак., 14.03.2012 11:39)
- Не, это понятно, я построчно буду передавать, с ACK на каждую строку. - Vladimir Ljaschko(13.03.2012 22:50)
- Кто мешает файл конфига разбить на три-пять-десять? - Shura(13.03.2012 22:45)
- На миллибиты. - fk0(14.03.2012 00:12)
- Ну что за чушь, конфиг разбирается на лету посимвольно, в экстремальном случае нужен буфер только на 1 (один) символ. Машина состояний рулит. - =AlexD=(14.03.2012 07:57)
- Сам файл конфига 20кб. И прикинь, он одномоментно вольётся через UART. Разобрать и записать куда надо не успеешь. Вот я о чём. А для одного алгоритма разбора строк 200 байт, например нужно (там может комментариев стольько, в строке, на 200 fk0(225 знак., 13.03.2012 22:44)
- В принципе можно вообще конфиг наговаримать в микрофон а потом WAV передавать в прибор и там декодировать. - PlainUser(14.03.2012 00:09)
- Файл с конфигом, например, 20кб. Какие 200 байт? 200 байт нужно только на fifo буфер, чтоб X-modem работал надёжно (ну не 200, а десятка три, но не суть). - fk0(13.03.2012 21:49)
- Если есть 10кб лишней флеши то 200байт рамы завсегда найти можно.Не все так ужасно. - PlainUser(13.03.2012 21:35)
- Если нет контроля потока, а прибор не слишком реактивный может плохо кончиться. Ведь файл на ходу разбирать ещё (а то хранить негде). Надо предусмотреть либо XON/XOFF, либо RTS/CTS. Причём первое чревато хитрыми глюками в ряде случаев, fk0(222 знак., 13.03.2012 10:49)