2013年6月6日 星期四

DIY - 智能小車:用 Microsoft Visual C++/CLI 編寫 TCP Socket 程式碼 (三十二):

DIY - 智能小車:用 Microsoft Visual C++/CLI 編寫 TCP Socket 程式碼 (十二)

這是一個簡單的 TCP Socket 主控制器測試程式,用 Microsoft Visual C++/CLI 編寫,首先是要建立 TCP Socket 連接,按 Connect 鍵,程式便會通過 WiFi 網絡建立 TCP Socket 連接,然後鍵入字符,按 TX 鍵將字符傳送到 TP-Link TL-WR703N 無線路由器,PIC 16F877A 處理器板將字符解碼後,用 1602 LCD 屏顯示接收字符。

主控制器 TCP Socket 測試程式
Microsoft Visual C++/CLI 編寫主控制器程式
主控制器 TCP Socket測試程式:
#pragma once

namespace My06_CLI_tcpsocket_rw_car {

    using namespace System;
    using namespace System::ComponentModel;
    using namespace System::Collections;
    using namespace System::Windows::Forms;
    using namespace System::Data;
    using namespace System::Drawing;

    using namespace System::Text;
    using namespace System::Net;
    using namespace System::Net::Sockets;

Socket
    public ref class Form1 : public System::Windows::Forms::Form
    {
     public:
     static Socket^ ClientSocket;

Connect Button Click
private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e)
      {
         try
              {
//create a new client socket ...
ClientSocket = gcnew Socket(AddressFamily::InterNetwork, SocketType::Stream, ProtocolType::Tcp);
String^ szIPSelected  = textBox1->Text;
String^ szPort        = textBox2->Text;
int  alPort = System::Convert::ToInt16 (szPort,10);
System::Net::IPAddress^ remoteIPAddress = System::Net::IPAddress::Parse(szIPSelected);
System::Net::IPEndPoint^ remoteEndPoint = gcnew System::Net::IPEndPoint(remoteIPAddress, alPort);
ClientSocket->Connect(remoteEndPoint);
textBox3->Text = "Socket Connected";
              }
            catch (SocketException^)
              {
            textBox3->Text="Failed to Connect";
              }
               } // End button1_Click

TX Button Click
private: System::Void button2_Click(System::Object^  sender, System::EventArgs^  e)
         {
            try
            {
Object^ objData = textBox4->Text;
                array< Byte >^ byData = Encoding::ASCII->GetBytes(objData->ToString ());
ClientSocket->Send (byData);
            }
            catch(SocketException^)
            {
                textBox3->Text = "Write Failed";
            }
         }// End button2_Click


相關網址: 
DIY - 智能小車:用 Microsoft Visual C++/CLI 編寫 TCP Socket 程式步驟 (三十一):
DIY - 智能小車:用 Microsoft Visual C++/CLI 編寫 TCP Socket 程式碼 (三十二):

201366 天氣報告
氣溫:28.3 @ 22:00
相對濕度:百分之87%
天氣:大致多雲

1 則留言: