首页 / UBUNTU / Ubuntu下访问串口
Ubuntu下访问串口
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Ubuntu下访问串口,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2339字,纯文字阅读大概需要4分钟。
内容图文
Ubuntu下访问串口
1、首先查看串口列表
dmesg | grep ttyS*
2、增加规则文件
在/etc/udev/rules.d目录下创建tty.rules文件,增加以下内容
KERNEL=="ttyS[0-9]*",MODE:="0777",GROUP:="dialout"
3、保存并重启电脑
4、编写代码,QT代码如下
void Init(const char *szCom, int nBaud, int oeCheck, int nDatabit, int nStopbit)
{
strcpy(m_szCom, szCom);
m_nBaud = m_nBaud;
m_oeCheck = oeCheck;
m_nDatabit = nDatabit;
m_nStopbit = nStopbit;
serial_port_t = new QSerialPort();
switch (nBaud)
{
case 1200:
serial_port_t->setBaudRate(QSerialPort::Baud1200);
break;
case 2400:
serial_port_t->setBaudRate(QSerialPort::Baud2400);
break;
case 9600:
serial_port_t->setBaudRate(QSerialPort::Baud9600);
break;
case 38400:
serial_port_t->setBaudRate(QSerialPort::Baud38400);
break;
case 115200:
serial_port_t->setBaudRate(QSerialPort::Baud115200);
break;
case 192000:
serial_port_t->setBaudRate(QSerialPort::Baud19200);
break;
default:
serial_port_t->setBaudRate(QSerialPort::Baud9600);
break;
}
switch (oeCheck)
{
case 0:
serial_port_t->setParity(QSerialPort::OddParity);
break;
case 1:
serial_port_t->setParity(QSerialPort::EvenParity);
break;
case 2:
serial_port_t->setParity(QSerialPort::NoParity);
break;
default:
serial_port_t->setParity(QSerialPort::NoParity);
break;
}
switch (nDatabit)
{
case 5:
serial_port_t->setDataBits(QSerialPort::Data5);
break;
case 6:
serial_port_t->setDataBits(QSerialPort::Data6);
break;
case 7:
serial_port_t->setDataBits(QSerialPort::Data7);
break;
case 8:
serial_port_t->setDataBits(QSerialPort::Data8);
break;
default:
serial_port_t->setDataBits(QSerialPort::Data8);
break;
}
switch (nStopbit)
{
case 1:
serial_port_t->setStopBits(QSerialPort::OneStop);
break;
case 2:
serial_port_t->setStopBits(QSerialPort::TwoStop);
break;
default:
serial_port_t->setStopBits(QSerialPort::OneStop);
break;
}
serial_port_t->setFlowControl(QSerialPort::NoFlowControl);
if (!serial_port_t->open(QIODevice::ReadWrite))
{
CLogWrite::LogWriteEX(LOG_ERROR, __FUNCTION__, __LINE__, 999999, "Open COM: %s Failed %d %d %d %d",
szCom, nBaud, oeCheck, nDatabit, nStopbit);
return;
}
else
{
CLogWrite::LogWriteEX(LOG_ERROR, __FUNCTION__, __LINE__, 999999, "Open COM: %s Succeed %d %d %d %d",
szCom, nBaud, oeCheck, nDatabit, nStopbit);
}
connect(serial_port_t, &QSerialPort::readyRead, this, &CLasairManage::read_date);
}
2、minicom工具
内容总结
以上是互联网集市为您收集整理的Ubuntu下访问串口全部内容,希望文章能够帮你解决Ubuntu下访问串口所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。