大学生网站制作作业免费下载,商丘建网站,另类投资公司网站建设规定,游戏推广平台怎么赚钱1.功能描述
上位机与下位机进行通讯时需要用到波特率设置功能#xff0c;以及尝试与下位机实体进行通讯。
2.代码部分
步骤1#xff1a;串口开启按钮事件中添加代码
serialPort1.BaudRate Convert.ToInt32(comboBox14.Text, 10);//将十进制的文本转换为32位整型赋值给串…1.功能描述
上位机与下位机进行通讯时需要用到波特率设置功能以及尝试与下位机实体进行通讯。
2.代码部分
步骤1串口开启按钮事件中添加代码
serialPort1.BaudRate Convert.ToInt32(comboBox14.Text, 10);//将十进制的文本转换为32位整型赋值给串口1的波特率
步骤2波特率参数设置复选框事件中添加代码
//波特率设置复选框事件private void comboBox14_SelectedIndexChanged(object sender, EventArgs e){serialPort1.BaudRate Convert.ToInt32(comboBox14.Text, 10);//将十进制的文本转换为32位整型赋值给串口1的波特率}}
3.完整代码
功能关联有以下两处地方
//打开串口按钮事件private void button2_Click(object sender, EventArgs e){if (button2.Tag.ToString() ON){//关闭串口try{serialPort1.Close();button2.BackgroundImage Properties.Resources.Image_CloseSerial;button2.Tag OFF;textBox1.AppendText([ DateTime.Now.ToString(HH:mm:ss) ] -);textBox1.AppendText(手动关闭串口!\r\n);timer1.Stop();//串口关闭情况下关闭串口有效检测功能}catch{}}else //串口已关闭{//打开串口try{serialPort1.PortName comboBox1.Text; //端口号serialPort1.BaudRate Convert.ToInt32(comboBox14.Text, 10);//将十进制的文本转换为32位整型赋值给串口1的波特率serialPort1.Open(); //打开端口button2.BackgroundImage Properties.Resources.Image_OpenSerial;button2.Tag ON;textBox1.AppendText([ DateTime.Now.ToString(HH:mm:ss) ] -);textBox1.AppendText(串口打开成功!\r\n);//WritePrivateProfileString(串口1, 端口号, comboBox1.Text, FileName);timer1.Start();}catch{serialPort1.Close();button2.BackgroundImage Properties.Resources.Image_CloseSerial;button2.Tag OFF;textBox1.AppendText([ DateTime.Now.ToString(HH:mm:ss) ] -);textBox1.AppendText(串口打开失败!\r\n);timer1.Stop();//串口关闭情况下关闭串口有效检测功能}}}
//波特率设置复选框事件private void comboBox14_SelectedIndexChanged(object sender, EventArgs e){serialPort1.BaudRate Convert.ToInt32(comboBox14.Text, 10);//将十进制的文本转换为32位整型赋值给串口1的波特率}}
4.测试结果
测试时注意不要用Configure Virtual Serial Port Driver虚拟串口虚拟串口中默认两路com通讯连接修改波特率并不影响两com之间的数据收发故无法验证此功能。
正确方式找到两个TTL转串口模块TXRX通讯线交换连接上位机使用sscom与自己开发的上位机进行串口端口绑定进行波特率参数设置测试不同波特率下数据收发情况测试结果正常此功能开发成功。 参考自B站硬件家园