⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 aaadlg.cpp

📁 本人调试通过的串口通信程序,对初学者有一定的参考价值
💻 CPP
📖 第 1 页 / 共 4 页
字号:
								if(count%2==0)
									countR=1;
								else
									countR=0;
								if(countR==data1[32])
								{
									k++;
									BYTE TxData[5]={0X55,0x55,0X00,0x00,0X41};// 准备需要发送的命令,放在TxData[]中
									CByteArray array;
									array.RemoveAll();
									array.SetSize(5);
									for(m=0;m<5;m++)
									array.SetAt(m, TxData[m]);
									m_Comm.SetOutput(COleVariant(array)); // 发送数据
								
								
								  }
								else
								{
							
									
									BYTE TxData[5]={0X55,0x55,0X00,0x00,0X41};// 准备需要发送的命令,放在TxData[]中
									CByteArray array;
									array.RemoveAll();
									array.SetSize(5);
									for(m=0;m<5;m++)
										array.SetAt(m, TxData[m]);
									m_Comm.SetOutput(COleVariant(array)); // 发送数据
								}
							
							}

						}
						else
						{
							if(a==0x41)
								flag=1;
								j=0;
						}
						
					
						
						break;
					case 2:	
						if(flag==1)
						{	
							data2[j++] = a;
								
							if(j==33)
							{	
							 //if(j==18)/////////////CRC校验
								j=0;
								flag=0;
								count=0;
								for(m=0;m<32;m++)
									even(data2[m]);
								if(count%2==0)
									countR=1;
								else
									countR=0;
								if(countR==data2[32])
								{	
									k++;
									BYTE TxData[5]={0X55,0x55,0X00,0x00,0X41};// 准备需要发送的命令,放在TxData[]中
									CByteArray array;
									array.RemoveAll();
									array.SetSize(5);
									for(m=0;m<5;m++)
									array.SetAt(m, TxData[m]);
									m_Comm.SetOutput(COleVariant(array)); // 发送数据
								
								 }

								else
								{
							
									
									BYTE TxData[5]={0X55,0x55,0X00,0x00,0X41};// 准备需要发送的命令,放在TxData[]中
									CByteArray array;
									array.RemoveAll();
									array.SetSize(5);
									for(m=0;m<5;m++)
										array.SetAt(m, TxData[m]);
									m_Comm.SetOutput(COleVariant(array)); // 发送数据
								
								  }
							
							}

						}
						else
						{
							if(a==0x41)
								flag=1;
								j=0;
						}
						
					
						
						break;
					case 3:	
						if(flag==1)
						{	
							data3[j++] = a;
								
							if(j==33)
							{	
							 //if(j==33)/////////////CRC校验
								j=0;
								flag=0;
								count=0;
								for(m=0;m<32;m++)
									even(data3[m]);
								if(count%2==0)
									countR=1;
								else
									countR=0;
								if(countR==data3[32])
								{
									k++;
									BYTE TxData[5]={0X55,0x55,0X00,0x00,0X41};// 准备需要发送的命令,放在TxData[]中
									CByteArray array;
									array.RemoveAll();
									array.SetSize(5);
									for(m=0;m<5;m++)
									array.SetAt(m, TxData[m]);
									m_Comm.SetOutput(COleVariant(array)); // 发送数据
								
								 }
								else
								{
							
																	
									BYTE TxData[5]={0X55,0x55,0X00,0x00,0X41};// 准备需要发送的命令,放在TxData[]中
									CByteArray array;
									array.RemoveAll();
									array.SetSize(5);
									for(m=0;m<5;m++)
										array.SetAt(m, TxData[m]);
									m_Comm.SetOutput(COleVariant(array)); // 发送数据
								
								  }
							
							}

						}
						else
						{
							if(a==0x41)
								flag=1;
								j=0;
						}
						
					
						
						break;
					case 4:	
						if(flag==1)
						{	
							data4[j++] = a;
								
							if(j==33)
							{	
							 //if(j==18)/////////////CRC校验
								j=0;
								flag=0;
								count=0;
								for(m=0;m<32;m++)
									even(data4[m]);
								if(count%2==0)
									countR=1;
								else
									countR=0;
								if(countR==data4[32])
								{
									k++;
									BYTE TxData[5]={0X55,0x55,0X00,0x00,0X41};// 准备需要发送的命令,放在TxData[]中
									CByteArray array;
									array.RemoveAll();
									array.SetSize(5);
									for(m=0;m<5;m++)
									array.SetAt(m, TxData[m]);
									m_Comm.SetOutput(COleVariant(array)); // 发送数据
								}
								else
								{
							
								
									BYTE TxData[5]={0X55,0x55,0X00,0x00,0X42};// 准备需要发送的命令,放在TxData[]中
									CByteArray array;
									array.RemoveAll();
									array.SetSize(5);
									for(m=0;m<5;m++)
										array.SetAt(m, TxData[m]);
									m_Comm.SetOutput(COleVariant(array)); // 发送数据
								}
							
							}

						}
						else
						{
							if(a==0x41)
								flag=1;
								j=0;
						}
						
					
						
						break;
					case 5:	
						if(flag==1)
						{	
							data5[j++] = a;
								
							if(j==33)
							{	
							 //if(j==18)/////////////CRC校验
								j=0;
								flag=0;
								count=0;
								for(m=0;m<32;m++)
									even(data5[m]);
								if(count%2==0)
									countR=1;
								else
									countR=0;
								if(countR==data5[32])
								{
									k++;
									BYTE TxData[5]={0X55,0x55,0X00,0x00,0X41};// 准备需要发送的命令,放在TxData[]中
									CByteArray array;
									array.RemoveAll();
									array.SetSize(5);
									for(m=0;m<5;m++)
									array.SetAt(m, TxData[m]);
									m_Comm.SetOutput(COleVariant(array)); // 发送数据
								}
								else
								{
							
								
									BYTE TxData[5]={0X55,0x55,0X00,0x00,0X42};// 准备需要发送的命令,放在TxData[]中
									CByteArray array;
									array.RemoveAll();
									array.SetSize(5);
									for(m=0;m<5;m++)
										array.SetAt(m, TxData[m]);
									m_Comm.SetOutput(COleVariant(array)); // 发送数据
								}
							
							}

						}
						else
						{
							if(a==0x41)
								flag=1;
								j=0;
						}
						
					
						
						break;
					case 6:	
						if(flag==1)
						{	
							data6[j++] = a;
								
							if(j==33)
							{	
							 //if(j==18)/////////////CRC校验
								j=0;
								flag=0;
								count=0;
								for(m=0;m<32;m++)
									even(data6[m]);
								if(count%2==0)
									countR=1;
								else
									countR=0;
								if(countR==data6[32])
								{
									k++;
									BYTE TxData[5]={0X55,0x55,0X00,0x00,0X41};// 准备需要发送的命令,放在TxData[]中
									CByteArray array;
									array.RemoveAll();
									array.SetSize(5);
									for(m=0;m<5;m++)
									array.SetAt(m, TxData[m]);
									m_Comm.SetOutput(COleVariant(array)); // 发送数据
								}
								else
								{
							
								
									BYTE TxData[5]={0X55,0x55,0X00,0x00,0X42};// 准备需要发送的命令,放在TxData[]中
									CByteArray array;
									array.RemoveAll();
									array.SetSize(5);
									for(m=0;m<5;m++)
										array.SetAt(m, TxData[m]);
									m_Comm.SetOutput(COleVariant(array)); // 发送数据
								}
							
							}

						}
						else
						{
							if(a==0x41)
								flag=1;
								j=0;
						}
						
					
						
						break;
					case 7:	
						if(flag==1)
						{	
							data7[j++] = a;
								
							if(j==33)
							{	
							 //if(j==18)/////////////CRC校验
								j=0;
								flag=0;
								count=0;
								for(m=0;m<32;m++)
									even(data7[m]);
								if(count%2==0)
									countR=1;
								else
									countR=0;
								if(countR==data7[32])
								{
									k++;
									BYTE TxData[5]={0X55,0x55,0X00,0x00,0X41};// 准备需要发送的命令,放在TxData[]中

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -