serialPort的简单使用

 阅读原文 http://www.sufeinet.com/thread-2196-1-1.html

private void btnGo_Click(object sender, EventArgs e)
        {

            try
            {
                serialPort1.PortName = "COM1";
                serialPort1.Open();
                byte[] data = Encoding.Unicode.GetBytes(textBox1.Text);
                string str = Convert.ToBase64String(data);
                serialPort1.WriteLine(str);
                serialPort1.Close();
                MessageBox.Show("数据发送成功!", "系统提示");
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message .ToString (),"提示信息");
            }
        }

        //当有数据到达里触发
        private void serialPort1_DataReceived(object sender, SerialDataReceivedEventArgs e)
        {
            serialPort1.PortName = "COM1";
            serialPort1.Open();

            byte[] data = Convert.FromBase64String(serialPort1.ReadLine());
            textBox2.Text = Encoding.Unicode.GetString(data);
            serialPort1.Close();
            MessageBox.Show("数据接收成功!", "系统提示");
        }

在Ubuntu系统中使用Qt 5.12版本的QtSerialPort模块,首先需要确保你已经正确安装了Qt开发环境以及相应的开发工具。下面是一个基本的介绍和使用QtSerialPort模块的步骤: 1. 安装Qt 5.12和QtSerialPort模块: 你可以通过Qt的在线安装器安装Qt 5.12版本,并确保在组件选择过程中包含了Qt SerialPort模块。如果你使用的是命令行方式安装,可以使用如下命令: ```bash sudo apt-get install libqt5serialport5 libqt5serialport5-dev ``` 这将安装QtSerialPort模块的库和开发文件。 2. 创建一个新的Qt项目: 在Qt Creator中创建一个新的项目,并在项目配置中确保勾选了Qt SerialPort模块。 3. 在项目中使用QtSerialPort模块: 在你的源代码文件中,首先需要包含QtSerialPort模块的头文件: ```cpp #include <QtSerialPort/QSerialPort> ``` 接着,你可以创建一个QSerialPort对象,并使用该对象与串行端口进行交互。以下是一个简单的示例,展示了如何打开一个串行端口,并尝试读取数据: ```cpp QSerialPort serial; // 设置串行端口参数 serial.setPortName("COM1"); // 串行端口名称,Windows下是"COM1",Linux下是"/dev/ttyS0"或"/dev/ttyUSB0"等 serial.setBaudRate(QSerialPort::Baud9600); serial.setDataBits(QSerialPort::Data8); serial.setParity(QSerialPort::NoParity); serial.setStopBits(QSerialPort::OneStop); serial.setFlowControl(QSerialPort::NoFlowControl); // 打开串行端口 if (serial.open(QIODevice::ReadOnly)) { // 连接信号槽处理数据读取 connect(&serial, &QSerialPort::readyRead, [&](){ QByteArray data = serial.readAll(); // 处理读取到的数据 qDebug() << "Data received:" << data; }); // 执行其他操作... } else { qDebug() << "Cannot open port"; } ``` 在上述代码中,我们配置了串行端口的一些基本参数,如端口名称、波特率、数据位、奇偶校验位、停止位和流控制。然后尝试打开串行端口进行读取。成功读取时,会触发readyRead信号,并连接到槽函数处理数据。 4. 编译并运行你的项目: 在Qt Creator中编译并运行你的应用程序,检查是否能够成功与串行端口进行通信。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值