<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Форум freeduino.ru &mdash; Serial.Read для строки]]></title>
		<link>http://freeduino.ru/forum/viewtopic.php?id=23</link>
		<atom:link href="http://freeduino.ru/forum/extern.php?action=feed&amp;tid=23&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «Serial.Read для строки».]]></description>
		<lastBuildDate>Tue, 25 Aug 2009 07:29:56 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: Serial.Read для строки]]></title>
			<link>http://freeduino.ru/forum/viewtopic.php?pid=113#p113</link>
			<description><![CDATA[<p>круто. то что нужно!<br />большое спасибо.</p>]]></description>
			<author><![CDATA[null@example.com (realist)]]></author>
			<pubDate>Tue, 25 Aug 2009 07:29:56 +0000</pubDate>
			<guid>http://freeduino.ru/forum/viewtopic.php?pid=113#p113</guid>
		</item>
		<item>
			<title><![CDATA[Re: Serial.Read для строки]]></title>
			<link>http://freeduino.ru/forum/viewtopic.php?pid=111#p111</link>
			<description><![CDATA[<div class="quotebox"><cite>realist пишет:</cite><blockquote><p>Я программирую на c#, переходить на более низкий уровень пока не хочется,<br />...skipped...<br />Напрашивается разделение(string.Split(&quot; &quot;)) входящей строки на команду и аргументы,</p></blockquote></div><p>Все-таки у нас микроконтроллер, и работать в стиле C# не всегда получится. Немного пониже опуститься придется, а то Вам может скоро 2Гб виртуальной памяти захочется :)<br />Всякими разборами, на мой взгляд, лучше всего заниматься с помощью конечных автоматов.<br />Универсальных решений не посоветую - обычно под конкретную задачу на месте парсер и пишу.<br />Вот здесь: <a href="http://habrahabr.ru/blogs/arduino/55401/">http://habrahabr.ru/blogs/arduino/55401/</a> у меня есть пример библиотеки для Arduino&nbsp; - в ней как раз сделан ввод чисел с последовательного порта.</p><div class="quotebox"><cite>realist пишет:</cite><blockquote><p>Программка совсем простая, но как на языке Arduino работать со строками не ясно.</p></blockquote></div><p>А зачем делать сложный протокол? Ну, с переменной длиной команд?<br />Пусть посылается первые к примеру 4 символа - код команды, пусть даже буквами, а потом еще сколько-то символов - значение.<br />И не надо со строками заморачиваться - сами байты и сравнивай.</p><p>...пока писал вспомнил - я по весне делал немного похожую штуку - там правда ответа от Arduino не требовалось. Глянь если интересно: <a href="http://arduino-ru.blogspot.com/2009/02/arduino.html">http://arduino-ru.blogspot.com/2009/02/arduino.html</a>. Исходники прилагаются.</p><p>...и еще вспомнил - на офф. сайте видел библиотеку под твои требования сильно похожую. Вот: <a href="http://www.arduino.cc/playground/Code/Messenger">http://www.arduino.cc/playground/Code/Messenger</a>. Как раз она читает строку (до CRLF) и потом вроде даже парсит ее (пробел - разделитель), если я верно из описания понял.</p>]]></description>
			<author><![CDATA[null@example.com (Джордано Бруно)]]></author>
			<pubDate>Tue, 25 Aug 2009 05:52:24 +0000</pubDate>
			<guid>http://freeduino.ru/forum/viewtopic.php?pid=111#p111</guid>
		</item>
		<item>
			<title><![CDATA[Re: Serial.Read для строки]]></title>
			<link>http://freeduino.ru/forum/viewtopic.php?pid=110#p110</link>
			<description><![CDATA[<p>Я программирую на c#, переходить на более низкий уровень пока не хочется, да и потребности к freeduino небольшие.</p><p>Поэтому придумал залить на модуль такой скетч, который бы отвечал на мои запросы с компа.</p><p>Например:<br />Программа посылает команду: GetAnalog 3\r\n<br />Freeduino отвечает: 993\r\n</p><p>Напрашивается разделение(string.Split(&quot; &quot;)) входящей строки на команду и аргументы,<br />затем switch-case по имени команды и исполнение нужной команды.</p><p>Программка совсем простая, но как на языке Arduino работать со строками не ясно.</p>]]></description>
			<author><![CDATA[null@example.com (realist)]]></author>
			<pubDate>Mon, 24 Aug 2009 11:59:37 +0000</pubDate>
			<guid>http://freeduino.ru/forum/viewtopic.php?pid=110#p110</guid>
		</item>
		<item>
			<title><![CDATA[Re: Serial.Read для строки]]></title>
			<link>http://freeduino.ru/forum/viewtopic.php?pid=109#p109</link>
			<description><![CDATA[<div class="quotebox"><cite>realist пишет:</cite><blockquote><p>Как прочитать строку, отправленную модулю с компа?</p></blockquote></div><p>Смотря как Вы ее отправляете. В общем случае все-равно посимвольно, но вопрос стоит в том, что будет являться признаком конца строки. Либо какой-то особый символ (вроде 0, как в C/C++ принято, или &quot;\r\n&quot; как вариант), либо посылать всегда только фиксированное число символов. Можно выдумать такой вариант, что по прошествии time-out&#039;а строка считается прочитанной. Вариантов много.<br />Может немного подробнее задачу опишите? Я тогда могу какой-нибудь пример кода привести.</p>]]></description>
			<author><![CDATA[null@example.com (Admin)]]></author>
			<pubDate>Mon, 24 Aug 2009 11:04:08 +0000</pubDate>
			<guid>http://freeduino.ru/forum/viewtopic.php?pid=109#p109</guid>
		</item>
		<item>
			<title><![CDATA[Serial.Read для строки]]></title>
			<link>http://freeduino.ru/forum/viewtopic.php?pid=107#p107</link>
			<description><![CDATA[<p>Как прочитать строку, отправленную модулю с компа?</p><p>В туториалах везде читают либо int, либо byte, а вот со строками не нашел.</p>]]></description>
			<author><![CDATA[null@example.com (realist)]]></author>
			<pubDate>Sun, 23 Aug 2009 21:40:05 +0000</pubDate>
			<guid>http://freeduino.ru/forum/viewtopic.php?pid=107#p107</guid>
		</item>
	</channel>
</rss>
