<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[CANNY forum &mdash; 7.2 duo. Передача, прием данных VCP CAN]]></title>
	<link rel="self" href="https://forum.canny.ru/extern.php?action=feed&amp;tid=1338&amp;type=atom" />
	<updated>2025-02-10T08:06:02Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.canny.ru/viewtopic.php?id=1338</id>
		<entry>
			<title type="html"><![CDATA[Re: 7.2 duo. Передача, прием данных VCP CAN]]></title>
			<link rel="alternate" href="https://forum.canny.ru/viewtopic.php?pid=12050#p12050" />
			<content type="html"><![CDATA[<div class="quotebox"><blockquote><p>в Примечании ошибка</p></blockquote></div><p>Спасибо, опечатку поправим.<br />Сообщать об ошибках на сайте можно выделив на странице сайта текст с ошибкой и нажав Ctrl+Enter</p><div class="quotebox"><blockquote><p>..не работает...</p></blockquote></div><p>В вашей диаграмме &quot;<em>USB-CAN Examples1.cfd</em>&quot; отсутствует &quot;Регистр установки CAN0 ERL&quot;, поэтому все сообщения передаваемые диаграммой в этот интерфейс будут иметь длину данных =0</p><p>Кроме того, в файле &quot;<em>SerialPort.cpp</em>&quot; данные в массиве <em>sBuff</em> по всей видимости представлены в виде ноль-терминированной строки содержащей ASCII коды символов строкового представления вашего сообщения, в то время как ваша диаграмма &quot;<em>USB-CAN Examples1.cfd</em>&quot; ожидает от VCP бинарные данные.</p><p>Таким образом, результат работы <em>SerialPort.cpp</em> с диаграммой <em>USB-CAN Examples1.cfd</em> будет по всей видимости и будет выглядеть примерно так, как показано у вас в первой строке на скриншоте.</p>]]></content>
			<author>
				<name><![CDATA[Константин, CANNY]]></name>
				<uri>https://forum.canny.ru/profile.php?id=2</uri>
			</author>
			<updated>2025-02-10T08:06:02Z</updated>
			<id>https://forum.canny.ru/viewtopic.php?pid=12050#p12050</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: 7.2 duo. Передача, прием данных VCP CAN]]></title>
			<link rel="alternate" href="https://forum.canny.ru/viewtopic.php?pid=12049#p12049" />
			<content type="html"><![CDATA[<p>Вторая строка на скрине в трейсере шины, это то что уже с доработанной диаграммой.</p>]]></content>
			<author>
				<name><![CDATA[serand]]></name>
				<uri>https://forum.canny.ru/profile.php?id=308</uri>
			</author>
			<updated>2025-02-10T00:04:55Z</updated>
			<id>https://forum.canny.ru/viewtopic.php?pid=12049#p12049</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: 7.2 duo. Передача, прием данных VCP CAN]]></title>
			<link rel="alternate" href="https://forum.canny.ru/viewtopic.php?pid=12048#p12048" />
			<content type="html"><![CDATA[<p>Вот сам файл на с++</p>]]></content>
			<author>
				<name><![CDATA[serand]]></name>
				<uri>https://forum.canny.ru/profile.php?id=308</uri>
			</author>
			<updated>2025-02-10T00:03:23Z</updated>
			<id>https://forum.canny.ru/viewtopic.php?pid=12048#p12048</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: 7.2 duo. Передача, прием данных VCP CAN]]></title>
			<link rel="alternate" href="https://forum.canny.ru/viewtopic.php?pid=12047#p12047" />
			<content type="html"><![CDATA[<p>Простите за мое невежество, но ту картинку построения диаграммы uart can, даже если сделать аналогично с передачей через uart на can работать не будет. Я уже без выводов данных некоторых регистров переполнения уже такую диаграмму файл сюда скидывал. И он брался из этого форума. Не работает. И даже если написать программу на С++ С учетом API ссылку на который вы скидывали, тоже работать не будет. Не будет работать по диаграмм что выше и даже с учетом того что я в ПО на ПК заранее подготовлю привычный формат Can шины в числовые значения символов. Первая верхняя строка на скрине в трейсере шины это показывает. Вот тут выкладываю SerialPort.cpp файл, можете сами проверить. Пока Не доработать диаграмму что я выложил выше.</p>]]></content>
			<author>
				<name><![CDATA[serand]]></name>
				<uri>https://forum.canny.ru/profile.php?id=308</uri>
			</author>
			<updated>2025-02-10T00:01:29Z</updated>
			<id>https://forum.canny.ru/viewtopic.php?pid=12047#p12047</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: 7.2 duo. Передача, прием данных VCP CAN]]></title>
			<link rel="alternate" href="https://forum.canny.ru/viewtopic.php?pid=12045#p12045" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>Константин, CANNY пишет:</cite><blockquote><p>Для преобразования символьных представлений числа в различных системах счисления в числовые значения и обратно, можно использовать соответствующие функциональные блоки:<br /><a href="https://canny.ru/docs/fbd/converters/character_to_number_converter/" rel="noopener noreferrer" target="_blank">https://canny.ru/docs/fbd/converters/ch … converter/</a></p></blockquote></div><p>в Примечании ошибка</p>]]></content>
			<author>
				<name><![CDATA[serand]]></name>
				<uri>https://forum.canny.ru/profile.php?id=308</uri>
			</author>
			<updated>2025-02-09T20:12:59Z</updated>
			<id>https://forum.canny.ru/viewtopic.php?pid=12045#p12045</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: 7.2 duo. Передача, прием данных VCP CAN]]></title>
			<link rel="alternate" href="https://forum.canny.ru/viewtopic.php?pid=12044#p12044" />
			<content type="html"><![CDATA[<p>Если кому интересно. Прием и передача через Uart фреймов Can шины. На ПК в буфер передачи порта отдаем данные в can&nbsp; типа строки &quot;07e0021a900000000000&quot;. Принимаем на ПК тоже строку</p>]]></content>
			<author>
				<name><![CDATA[serand]]></name>
				<uri>https://forum.canny.ru/profile.php?id=308</uri>
			</author>
			<updated>2025-02-09T20:05:03Z</updated>
			<id>https://forum.canny.ru/viewtopic.php?pid=12044#p12044</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: 7.2 duo. Передача, прием данных VCP CAN]]></title>
			<link rel="alternate" href="https://forum.canny.ru/viewtopic.php?pid=12042#p12042" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>serand пишет:</cite><blockquote><p>И конкретно сам вопрос. как соединить выход регистра uart с входом конвертора</p></blockquote></div><p>Зависит от того, какая часть значения представлена ASCII символами находящимися в данный момент в <em>Регистре чтения сообщения UART2 D1:D0</em> - старший байт или младший. В примерах документации, ссылки на которые я давал выше, приведена исчерпывающая информация о работе данных ФБ, а используя симулятор, их работу можно исследовать самостоятельно.</p><div class="quotebox"><cite>serand пишет:</cite><blockquote><p>строка - число и число - строка, то на симуляторе видим на входах строки - число одни значения в десятичной форме, а на выходах число - строка другие. В чем подвох?</p></blockquote></div><p>В данном случае - в регистре буквенного представления символа &#039;<em>e</em>&#039; шестнадцатеричного числа, который впрочем не влияет на значение полученное в результате преобразования. Это станет более очевидно, если изменить формат значений в симуляторе: <a href="https://canny.ru/docs/cannylab/simulator/#sec--cannylab-simulator-izmenenie-sistemy-schisleniya-otobrazhaemyh-znachenij" rel="noopener noreferrer" target="_blank">https://canny.ru/docs/cannylab/simulato … -znachenij</a></p><p>Или внимательно прочесть описание ФБ, ссылку на которое я приводил выше, а именно:<br /><em>&quot;...Символы результирующего, выравненного по правому краю строкового представления заданного на входе числа, устанавливаются на соответствующих выходах в верхнем регистре, незадействованные старшие разряды заполняются символами «0»...&quot;</em></p><div class="quotebox"><cite>serand пишет:</cite><blockquote><p>Или есть какое API о котором не догадываюсь?</p></blockquote></div><p>Речь о Win32 API, функции которого и вызываются вышестоящими функциями библиотек/языков на данной платформе:</p><p><a href="https://learn.microsoft.com/ru-ru/windows/win32/api/fileapi/nf-fileapi-writefile" rel="noopener noreferrer" target="_blank">https://learn.microsoft.com/ru-ru/windo … -writefile</a></p><p><a href="https://www.unilim.fr/pages_perso/vahid.meghdadi-neyshabouri/port_serie.html" rel="noopener noreferrer" target="_blank">https://www.unilim.fr/pages_perso/vahid … serie.html</a></p>]]></content>
			<author>
				<name><![CDATA[Константин, CANNY]]></name>
				<uri>https://forum.canny.ru/profile.php?id=2</uri>
			</author>
			<updated>2025-02-08T14:10:16Z</updated>
			<id>https://forum.canny.ru/viewtopic.php?pid=12042#p12042</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: 7.2 duo. Передача, прием данных VCP CAN]]></title>
			<link rel="alternate" href="https://forum.canny.ru/viewtopic.php?pid=12041#p12041" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>serand пишет:</cite><blockquote><p> Я так понимаю строкой</p></blockquote></div><p>но и опять же строка это синтактический сахар. Все равно массив только символов. Или есть какое API о котором не догадываюсь?</p>]]></content>
			<author>
				<name><![CDATA[serand]]></name>
				<uri>https://forum.canny.ru/profile.php?id=308</uri>
			</author>
			<updated>2025-02-08T12:53:28Z</updated>
			<id>https://forum.canny.ru/viewtopic.php?pid=12041#p12041</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: 7.2 duo. Передача, прием данных VCP CAN]]></title>
			<link rel="alternate" href="https://forum.canny.ru/viewtopic.php?pid=12040#p12040" />
			<content type="html"><![CDATA[<p>Если заговорили за язык CFD, в частности конверторов строка - число и число - строка, то на симуляторе видим на входах строки - число одни значения в десятичной форме, а на выходах число - строка другие. В чем подвох?</p>]]></content>
			<author>
				<name><![CDATA[serand]]></name>
				<uri>https://forum.canny.ru/profile.php?id=308</uri>
			</author>
			<updated>2025-02-08T12:26:24Z</updated>
			<id>https://forum.canny.ru/viewtopic.php?pid=12040#p12040</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: 7.2 duo. Передача, прием данных VCP CAN]]></title>
			<link rel="alternate" href="https://forum.canny.ru/viewtopic.php?pid=12039#p12039" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>Константин, CANNY пишет:</cite><blockquote><p>Из ПО исполняющегося на ПК крайне важно отправлять в VCP весь предназначенный контроллеру пакет данных фиксированной длины одной посылкой (одним вызовом соответствующей функции API), а не побайтно. Если требуется передать несколько пакетов подряд, то разделять их передачу паузой, длиной, скажем 1-5мс.</p></blockquote></div><p> Я так понимаю строкой</p>]]></content>
			<author>
				<name><![CDATA[serand]]></name>
				<uri>https://forum.canny.ru/profile.php?id=308</uri>
			</author>
			<updated>2025-02-08T12:17:26Z</updated>
			<id>https://forum.canny.ru/viewtopic.php?pid=12039#p12039</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: 7.2 duo. Передача, прием данных VCP CAN]]></title>
			<link rel="alternate" href="https://forum.canny.ru/viewtopic.php?pid=12038#p12038" />
			<content type="html"><![CDATA[<p>И конкретно сам вопрос. как соединить выход регистра uart с входом конвертора</p>]]></content>
			<author>
				<name><![CDATA[serand]]></name>
				<uri>https://forum.canny.ru/profile.php?id=308</uri>
			</author>
			<updated>2025-02-08T12:16:20Z</updated>
			<id>https://forum.canny.ru/viewtopic.php?pid=12038#p12038</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: 7.2 duo. Передача, прием данных VCP CAN]]></title>
			<link rel="alternate" href="https://forum.canny.ru/viewtopic.php?pid=12037#p12037" />
			<content type="html"><![CDATA[<p>Я наверное не правильно задаю вопрос который касается&nbsp; именно диаграммы. Давайте я попытаюсь сформулировать его по другому. И сходя из ссылки на пример конвертора из строки в число, то все понятно. В примере константные значения символов. на скрине мы видим все ОК</p>]]></content>
			<author>
				<name><![CDATA[serand]]></name>
				<uri>https://forum.canny.ru/profile.php?id=308</uri>
			</author>
			<updated>2025-02-08T12:15:08Z</updated>
			<id>https://forum.canny.ru/viewtopic.php?pid=12037#p12037</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: 7.2 duo. Передача, прием данных VCP CAN]]></title>
			<link rel="alternate" href="https://forum.canny.ru/viewtopic.php?pid=12036#p12036" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>serand пишет:</cite><blockquote><p>Но все таки хотелось понять как полученные данные в диаграмме по uart , правильно их подать на конвертор строка- число</p></blockquote></div><p>В документации, ссылки на которую я привел выше, есть примеры.</p><br /><div class="quotebox"><cite>serand пишет:</cite><blockquote><p>По аналогии если мы из буфера порта читаем байты на ПК и получаем из шины правильные значения, то и передавая в порт массив байт мы уже через канни не получаем то что передали.</p></blockquote></div><p>Из ПО исполняющегося на ПК крайне важно отправлять в VCP весь предназначенный контроллеру пакет данных фиксированной длины одной посылкой (одним вызовом соответствующей функции API), а не побайтно. Если требуется передать несколько пакетов подряд, то разделять их передачу паузой, длиной, скажем 1-5мс.</p>]]></content>
			<author>
				<name><![CDATA[Константин, CANNY]]></name>
				<uri>https://forum.canny.ru/profile.php?id=2</uri>
			</author>
			<updated>2025-02-08T10:26:00Z</updated>
			<id>https://forum.canny.ru/viewtopic.php?pid=12036#p12036</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: 7.2 duo. Передача, прием данных VCP CAN]]></title>
			<link rel="alternate" href="https://forum.canny.ru/viewtopic.php?pid=12035#p12035" />
			<content type="html"><![CDATA[<p>Но все таки хотелось понять как полученные данные в диаграмме по uart , правильно их подать на конвертор строка- число.&nbsp; &nbsp;В той части где привели диаграмму в приеме на пк по uart вопросы возникают только если буфер порта будем читать как строка. если читать байтами то все хорошо. По аналогии если мы из буфера порта читаем байты на ПК и получаем из шины правильные значения, то и передавая в порт массив байт мы уже через канни не получаем то что передали.</p>]]></content>
			<author>
				<name><![CDATA[serand]]></name>
				<uri>https://forum.canny.ru/profile.php?id=308</uri>
			</author>
			<updated>2025-02-08T09:43:45Z</updated>
			<id>https://forum.canny.ru/viewtopic.php?pid=12035#p12035</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: 7.2 duo. Передача, прием данных VCP CAN]]></title>
			<link rel="alternate" href="https://forum.canny.ru/viewtopic.php?pid=12034#p12034" />
			<content type="html"><![CDATA[<p>спасибо буду пробовать</p>]]></content>
			<author>
				<name><![CDATA[serand]]></name>
				<uri>https://forum.canny.ru/profile.php?id=308</uri>
			</author>
			<updated>2025-02-08T09:20:06Z</updated>
			<id>https://forum.canny.ru/viewtopic.php?pid=12034#p12034</id>
		</entry>
</feed>
