رفتن به مطلب
مرورگر پیشنهادی آرساکیا گیم مرورگر های تحت موتور کرومیوم می‌باشد، برای دانلود روی مرورگر انتخابی خود کلیک کنید
Google Chrome Microsoft Edge Ungoogled Chromium Brave Opera GX Opera

C# COM


ammar

ارسال‌های توصیه شده

 

سلام
یه برنامه برای دریافت ورودی از پورت COM  نوشته ام، برنامه رو با C# تقریبا نوشته ام و مشکلی نداره، از طرفی یک برنامه (ارسال اطلاعات) با C# دارم که با کلیلک اجرا می شود. میخواهم زمانی که از پورت COM ورودی را دریافت کردم ( یعنی وقتی یک پنج ولت به پورت com اعمال می کنم)    برنامه ارسال اتواتیک اجرا شود.
یعنی به جای کلیلک کردن با گرفتن اطلاعات از پورت com اجرا شود.
البته خودم یه فکرهایی کردم ولی نمیدونم چه جوری اجراش کنم، خودم فکر کردم اگه یکif یا WHile بذارم و با if اگر پورت com وردوی گرفت اجرا شود  و تا زمانی که ورودی نگرفتن اجرا نشود یا اینکه با While بگم تا زمانی یک ورودی نگرفتی پورت com اجرا نشود.
اگر خواستید کدها رو ارسال کنم.
از راهنمایی تون ممنون می شوم.

لینک به دیدگاه
به اشتراک گذاری در سایت های دیگر

  • 2 هفته بعد...
در در ۱۳۹۷/۱۲/۱۲ در 01:54، ammar گفته است:

 

سلام
یه برنامه برای دریافت ورودی از پورت COM  نوشته ام، برنامه رو با C# تقریبا نوشته ام و مشکلی نداره، از طرفی یک برنامه (ارسال اطلاعات) با C# دارم که با کلیلک اجرا می شود. میخواهم زمانی که از پورت COM ورودی را دریافت کردم ( یعنی وقتی یک پنج ولت به پورت com اعمال می کنم)    برنامه ارسال اتواتیک اجرا شود.
یعنی به جای کلیلک کردن با گرفتن اطلاعات از پورت com اجرا شود.
البته خودم یه فکرهایی کردم ولی نمیدونم چه جوری اجراش کنم، خودم فکر کردم اگه یکif یا WHile بذارم و با if اگر پورت com وردوی گرفت اجرا شود  و تا زمانی که ورودی نگرفتن اجرا نشود یا اینکه با While بگم تا زمانی یک ورودی نگرفتی پورت com اجرا نشود.
اگر خواستید کدها رو ارسال کنم.
از راهنمایی تون ممنون می شوم.

بهترین راه همون if و else هستش دادا

لینک به دیدگاه
به اشتراک گذاری در سایت های دیگر

https://docs.microsoft.com/en-us/dotnet/api/system.io.ports.serialport.datareceived?view=netframework-4.7.2


using System;
using System.IO.Ports;

class PortDataReceived
{
    public static void Main()
    {
        SerialPort mySerialPort = new SerialPort("COM1");

        mySerialPort.BaudRate = 9600;
        mySerialPort.Parity = Parity.None;
        mySerialPort.StopBits = StopBits.One;
        mySerialPort.DataBits = 8;
        mySerialPort.Handshake = Handshake.None;
        mySerialPort.RtsEnable = true;

        mySerialPort.DataReceived += new SerialDataReceivedEventHandler(DataReceivedHandler);

        mySerialPort.Open();

        Console.WriteLine("Press any key to continue...");
        Console.WriteLine();
        Console.ReadKey();
        mySerialPort.Close();
    }

    private static void DataReceivedHandler(
                        object sender,
                        SerialDataReceivedEventArgs e)
    {
        SerialPort sp = (SerialPort)sender;
        string indata = sp.ReadExisting();
        Console.WriteLine("Data Received:");
        Console.Write(indata);
    }
}

...We can know only that we know nothing

لینک به دیدگاه
به اشتراک گذاری در سایت های دیگر

به گفتگو بپیوندید

هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید.
توجه: مطلب ارسالی شما پس از تایید مدیریت برای همه قابل رویت خواهد بود.

مهمان
ارسال پاسخ به این موضوع...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   بازگردانی قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به صورت لینک

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.

×
  • اضافه کردن...