<?xml version='1.0' encoding="utf-8"?>
      <rss version='2.0'>
      <channel>
      <title>Форум на Исходниках.RU</title>
      <link>https://forum.sources.ru</link>
      <description>Форум на Исходниках.RU</description>
      <generator>Форум на Исходниках.RU</generator>
  	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=461366&amp;view=findpost&amp;p=3923896</guid>
        <pubDate>Sun, 15 Jun 2025 14:50:42 +0000</pubDate>
        <title>Работа с COM портом АЦП USB-DA10 (QT)</title>
        <link>https://forum.sources.ru/index.php?showtopic=461366&amp;view=findpost&amp;p=3923896</link>
        <description><![CDATA[tumanovalex: <strong class='tag-b'>macomics</strong> Спасибо большое, теперь понятно.]]></description>
        <author>tumanovalex</author>
        <category>Кроссплатформенный C/C++: cl/gcc/Qt/Gtk+/WxWidgets</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=461366&amp;view=findpost&amp;p=3923895</guid>
        <pubDate>Sun, 15 Jun 2025 13:49:04 +0000</pubDate>
        <title>Работа с COM портом АЦП USB-DA10 (QT)</title>
        <link>https://forum.sources.ru/index.php?showtopic=461366&amp;view=findpost&amp;p=3923895</link>
        <description><![CDATA[macomics: Ну смотрите. res.resize(1); устанавливает длину res в 1 байт<br>
<div class="tag-spoiler spoiler closed"><div class="spoiler_header" onclick="openCloseParent(this)">Скрытый текст</div><div class="body"><div class='tag-quote'><span class='tag-quote-prefix'>Цитата</span> <span class='tag-quote__quote-info'><a class='tag&#045;url' href='https://doc.qt.io/qt&#045;6/qbytearray.html#resize' target='_blank'>https://doc.qt.io/qt&#045;6/qbytearray.html#resize</a></span><div class='quote '>If newSize is greater than the current size, the byte array is extended to make it newSize bytes with the extra bytes added to the end. The new bytes are initialized to c.</div></div></div></div><br>
т.е. после clear длина res = 0 и там пусто, а после resize длина res = 1 и там &quot;extra bytes added to the end&quot;. Это тот самый P в выводе перед вашим R]]></description>
        <author>macomics</author>
        <category>Кроссплатформенный C/C++: cl/gcc/Qt/Gtk+/WxWidgets</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=461366&amp;view=findpost&amp;p=3923894</guid>
        <pubDate>Sun, 15 Jun 2025 13:21:55 +0000</pubDate>
        <title>Работа с COM портом АЦП USB-DA10 (QT)</title>
        <link>https://forum.sources.ru/index.php?showtopic=461366&amp;view=findpost&amp;p=3923894</link>
        <description><![CDATA[tumanovalex: Снова появился вопрос. Мне нужно записать в порт один символ. Делал так:<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">QByteArray temp, res;</div><div class="code_line">temp.resize(1);</div><div class="code_line">temp.append(&#39;N&#39;)</div><div class="code_line">serial.waitForBytesWritten();</div><div class="code_line">serial.write(temp);</div></ol></div></div></div></div><script>preloadCodeButtons('1');</script>Потом решил проверить, как работает QByteArray в простой программе:<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">int main() {</div><div class="code_line">&nbsp;&nbsp;QByteArray res;</div><div class="code_line">&nbsp;&nbsp;for(int i = 0; i &#60; 10; i++)</div><div class="code_line">&nbsp;&nbsp;{</div><div class="code_line">&nbsp;&nbsp; &nbsp;res.clear();</div><div class="code_line">&nbsp;&nbsp; &nbsp;res.resize(1);</div><div class="code_line">&nbsp;&nbsp; &nbsp;res.append(&#39;R&#39;);</div><div class="code_line">&nbsp;&nbsp; &nbsp;qDebug() &#60;&#60; res;</div><div class="code_line">&nbsp;&nbsp;}</div><div class="code_line">&nbsp;&nbsp; &nbsp;return 0;</div><div class="code_line">}</div></ol></div></div></div></div>Получаю следующий результат:<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">&quot;PR&quot;</div><div class="code_line">&quot;PR&quot;</div><div class="code_line">&quot;PR&quot;</div><div class="code_line">&quot;PR&quot;</div><div class="code_line">&quot;PR&quot;</div><div class="code_line">&quot;PR&quot;</div><div class="code_line">&quot;PR&quot;</div><div class="code_line">&quot;PR&quot;</div><div class="code_line">&quot;PR&quot;</div><div class="code_line">&quot;\x00R&quot;</div></ol></div></div></div></div>Т.е. получается, что записываются в порт 2 значения. Кроме того, непонятно, откуда появляется &quot;P&quot; после resize(1) и последний вывод. Помогите, пожалуйста, разобраться]]></description>
        <author>tumanovalex</author>
        <category>Кроссплатформенный C/C++: cl/gcc/Qt/Gtk+/WxWidgets</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=461366&amp;view=findpost&amp;p=3922919</guid>
        <pubDate>Tue, 27 May 2025 08:37:21 +0000</pubDate>
        <title>Работа с COM портом АЦП USB-DA10 (QT)</title>
        <link>https://forum.sources.ru/index.php?showtopic=461366&amp;view=findpost&amp;p=3922919</link>
        <description><![CDATA[tumanovalex: Пришлось сюда опять прийти с вопросом. Консольная программа работы с АЦП<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">#include &#60;QCoreApplication&#62;</div><div class="code_line">#include &#60;QSerialPort&#62;</div><div class="code_line">#include &#60;QSerialPortInfo&#62;</div><div class="code_line">#include &#60;QDebug&#62;</div><div class="code_line">&nbsp;</div><div class="code_line">int main (int argc, char *argv[])</div><div class="code_line">{</div><div class="code_line">&nbsp;&nbsp;QCoreApplication a (argc, argv);</div><div class="code_line">&nbsp;&nbsp;QSerialPort serial;</div><div class="code_line">&nbsp;&nbsp;serial.setPortName(&quot;COM3&quot;);</div><div class="code_line">&nbsp;&nbsp;if (serial.isOpen())</div><div class="code_line">&nbsp;&nbsp; &nbsp;serial.close();</div><div class="code_line">&nbsp;&nbsp;if (!serial.open(QIODevice::ReadWrite))</div><div class="code_line">&nbsp;&nbsp;{</div><div class="code_line">&nbsp;&nbsp; &nbsp;qDebug() &#60;&#60; &quot;Не удалось отрыть COM-порт! Проверьте подключение АЦП!&quot;;</div><div class="code_line">&nbsp;&nbsp; &nbsp;return 1;</div><div class="code_line">&nbsp;&nbsp;}</div><div class="code_line">&nbsp;&nbsp;serial.setBaudRate(QSerialPort::Baud38400);</div><div class="code_line">&nbsp;&nbsp;serial.setDataBits(QSerialPort::Data8);</div><div class="code_line">&nbsp;&nbsp;serial.setParity(QSerialPort::NoParity);</div><div class="code_line">&nbsp;&nbsp;serial.setStopBits(QSerialPort::OneStop);</div><div class="code_line">&nbsp;&nbsp;serial.setFlowControl(QSerialPort::NoFlowControl);</div><div class="code_line">&nbsp;&nbsp;QByteArray temp, res;</div><div class="code_line">&nbsp;&nbsp;temp.resize(1);</div><div class="code_line">&nbsp;&nbsp;temp.append(&#39;N&#39;);</div><div class="code_line">&nbsp;&nbsp;res.resize(10);</div><div class="code_line">&nbsp;&nbsp;for(int i = 0; i &#60; 20; ++i)</div><div class="code_line">&nbsp;&nbsp;{</div><div class="code_line">&nbsp;&nbsp; &nbsp;serial.write(temp);</div><div class="code_line">&nbsp;&nbsp; &nbsp;serial.waitForBytesWritten();</div><div class="code_line">&nbsp;&nbsp; &nbsp;res.clear();</div><div class="code_line">&nbsp;&nbsp; &nbsp;res.append(serial.readAll());</div><div class="code_line">&nbsp;&nbsp; &nbsp;serial.waitForReadyRead();</div><div class="code_line">&nbsp;&nbsp; &nbsp;qDebug() &#60;&#60; res;</div><div class="code_line">&nbsp;&nbsp;}</div><div class="code_line">&nbsp;&nbsp;serial.close();</div><div class="code_line">&nbsp;&nbsp;return 0;}</div></ol></div></div></div></div>Вывод программы при одном из запусков:<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">&quot;&quot;</div><div class="code_line">&quot;1.32V\n\r&quot;</div><div class="code_line">&quot;1.3&quot;</div><div class="code_line">&quot;5V\n\r&quot;</div><div class="code_line">&quot;1.44V\n\r&quot;</div><div class="code_line">&quot;1.31V\n\r&quot;</div><div class="code_line">&quot;1.36V\n\r&quot;</div><div class="code_line">&quot;1.42V\n\r&quot;</div><div class="code_line">&quot;1.39V\n\r&quot;</div><div class="code_line">&quot;1.35V\n\r&quot;</div><div class="code_line">&quot;1.38V\n\r&quot;</div><div class="code_line">&quot;1.51V\n\r&quot;</div><div class="code_line">&quot;1.37V\n\r&quot;</div><div class="code_line">&quot;1.36V\n\r&quot;</div><div class="code_line">&quot;1.46V\n\r&quot;</div><div class="code_line">&quot;1.44V\n&quot;</div><div class="code_line">&quot;\r&quot;</div><div class="code_line">&quot;1.40V\n\r&quot;</div><div class="code_line">&quot;1.36V\n\r&quot;</div><div class="code_line">&quot;1.38V\n\r&quot;</div></ol></div></div></div></div>При других запусках неправильные выводы значений могут быть в других местах. Кроме того, непонятно, почему первое значение пустое. Помогите, пожалуйста, разобраться.]]></description>
        <author>tumanovalex</author>
        <category>Кроссплатформенный C/C++: cl/gcc/Qt/Gtk+/WxWidgets</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=461366&amp;view=findpost&amp;p=3922768</guid>
        <pubDate>Fri, 23 May 2025 13:13:19 +0000</pubDate>
        <title>Работа с COM портом АЦП USB-DA10 (QT)</title>
        <link>https://forum.sources.ru/index.php?showtopic=461366&amp;view=findpost&amp;p=3922768</link>
        <description><![CDATA[macomics: Через пару лет только теперь сюда не приходи с тем же вопросом.]]></description>
        <author>macomics</author>
        <category>Кроссплатформенный C/C++: cl/gcc/Qt/Gtk+/WxWidgets</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=461366&amp;view=findpost&amp;p=3922757</guid>
        <pubDate>Fri, 23 May 2025 11:36:05 +0000</pubDate>
        <title>Работа с COM портом АЦП USB-DA10 (QT)</title>
        <link>https://forum.sources.ru/index.php?showtopic=461366&amp;view=findpost&amp;p=3922757</link>
        <description><![CDATA[tumanovalex: Разобрался.]]></description>
        <author>tumanovalex</author>
        <category>Кроссплатформенный C/C++: cl/gcc/Qt/Gtk+/WxWidgets</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=461366&amp;view=findpost&amp;p=3922696</guid>
        <pubDate>Thu, 22 May 2025 14:20:43 +0000</pubDate>
        <title>Работа с COM портом АЦП USB-DA10 (QT)</title>
        <link>https://forum.sources.ru/index.php?showtopic=461366&amp;view=findpost&amp;p=3922696</link>
        <description><![CDATA[tumanovalex: Здравствуйте&#33;<br>
Пытаюсь получить данные с АЦП (<a class='tag-url' href='https://www.chipdip.ru/product/usb-da10' target='_blank'>https://www.chipdip.ru/product/usb-da10</a>, <a class='tag-url' href='https://www.titan.tw/product/usb-da10/' target='_blank'>https://www.titan.tw/product/usb-da10/</a>). К порту 6 подключил батарейку 1,5В. Результаты измерения программой для этого АЦП на первом скриншоте, на втором скриншоте команды для 5-7 контактов АЦП. В методе:<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">void MainWindow::Start()</div><div class="code_line">{</div><div class="code_line">&nbsp;&nbsp;char cmdAInp[10] = {&#39;Z&#39;, &#39;X&#39;, &#39;C&#39;, &#39;V&#39;, &#39;B&#39;, &#39;N&#39;, &#39;M&#39;, &#39;,&#39;, &#39;.&#39;, &#39;/&#39;};</div><div class="code_line">&nbsp;&nbsp;QSerialPort serial;</div><div class="code_line">&nbsp;&nbsp;QString portName = cmbComPort-&#62;currentText();</div><div class="code_line">&nbsp;&nbsp;serial.setPortName(portName);</div><div class="code_line">&nbsp;&nbsp;// Открытие порта</div><div class="code_line">&nbsp;&nbsp;if (!serial.open(QIODevice::ReadWrite))</div><div class="code_line">&nbsp;&nbsp;{</div><div class="code_line">&nbsp;&nbsp; &nbsp;// Обработка ошибки</div><div class="code_line">&nbsp;&nbsp; &nbsp;QMessageBox::critical(nullptr, &quot;Ошибка&quot;, &quot;Не удалось отрыть COM-порт! Проверьте подключение АЦП!&quot;);</div><div class="code_line">&nbsp;&nbsp; &nbsp;return;</div><div class="code_line">&nbsp;&nbsp;}</div><div class="code_line">&nbsp;&nbsp;// Установка параметров</div><div class="code_line">&nbsp;&nbsp;serial.setBaudRate(QSerialPort::Baud38400);</div><div class="code_line">&nbsp;&nbsp;serial.setDataBits(QSerialPort::Data8);</div><div class="code_line">&nbsp;&nbsp;serial.setParity(QSerialPort::NoParity);</div><div class="code_line">&nbsp;&nbsp;serial.setStopBits(QSerialPort::OneStop);</div><div class="code_line">&nbsp;&nbsp;serial.setFlowControl(QSerialPort::NoFlowControl);</div><div class="code_line">&nbsp;&nbsp;uint valIn = spbChannelInput-&#62;value();</div><div class="code_line">&nbsp;&nbsp;QString dataRead;</div><div class="code_line">&nbsp;&nbsp;char wr = cmdAInp[valIn - 1];</div><div class="code_line">&nbsp;&nbsp;uint nwr = serial.write(&amp;wr, 1);</div><div class="code_line">&nbsp;&nbsp;dataRead.append(serial.readAll());</div><div class="code_line">&nbsp;&nbsp;lblInfo-&#62;setText(dataRead);</div><div class="code_line">&nbsp;&nbsp;serial.close();</div><div class="code_line">}</div></ol></div></div></div></div> получить данные, аналогичные данным из программы для АЦП, мне не удалось. Пытался посмотреть portmon из Sysinternals Suite, что передается из программы для АЦП в АЦП - получил при административном запуске Error 2. Ранее с помощью PowerShell:<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">$port = New-Object System.IO.Ports.SerialPort &quot;COM3&quot;, 38400, None, 8, One</div><div class="code_line">$port.Open()</div><div class="code_line">$port.WriteLine(&quot;N&quot;)</div><div class="code_line">Write-Output $port.ReadLine()</div><div class="code_line">$port.Close()</div></ol></div></div></div></div>я получал результаты, близки к результатам программы для АЦП. Раньше с COM портом не работал. Помогите, пожалуйста.<br>
<span class="b-attach" data-size="24850" data-hits="244" data-attach-id="67054" data-attach-post-id="3922696">
			<span class="b-attach__title"></span><a class='b-attach-link' href='https://forum.sources.ru/index.php?act=Attach&amp;type=post&amp;id=3922696&amp;attach_id=67054' title='Скачать файл' target='_blank'>VProgram.png</a> (, : 244)
		</span><br>
<span class="b-attach" data-size="76651" data-hits="255" data-attach-id="67055" data-attach-post-id="3922696">
			<span class="b-attach__title"></span><a class='b-attach-link' href='https://forum.sources.ru/index.php?act=Attach&amp;type=post&amp;id=3922696&amp;attach_id=67055' title='Скачать файл' target='_blank'>Commands.png</a> (, : 255)
		</span>]]></description>
        <author>tumanovalex</author>
        <category>Кроссплатформенный C/C++: cl/gcc/Qt/Gtk+/WxWidgets</category>
      </item>
	
      </channel>
      </rss>
	