اطلاعیه

Collapse
No announcement yet.

مشکل با دریافت اطلاعات پورت سریال در VISUAL Csharp

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    مشکل با دریافت اطلاعات پورت سریال در VISUAL Csharp

    سلام
    من با نرم افزار ویژوال سی شارپ اومدم برنامه ای نوشتم که در پورت سریال دیتا بفرسته همه چی خوب کار می کنه می می تونم دیتا بفرستم به پورت سریال

    اما دریافت نمی تونم بکنم چرا؟

    اینم از کد

    [code=c]

    serialPort1.PortName = "COM2";
    serialPort1.BaudRate = 9600;
    serialPort1.Parity = Parity.None;
    serialPort1.StopBits = StopBits.One;
    serialPort1.DataBits = 8;
    serialPort1.Handshake = Handshake.None;

    serialPort1.Open();
    serialPort1.WriteLine("ready"
    serialPort1.Close();
    serialPort1.Open();

    humidity.Text = serialPort1.ReadLine();



    [/code]

    #2
    پاسخ : مشکل با دریافت اطلاعات پورت سریال در VISUAL Csharp

    oo:
    انتظار نداری وقتی به خط humidity.Text = serialPort1.ReadLine(); رسید برنامه صبر کنه که یه خط براش بیاد؟! oo:
    ارسال درسته ، ولی برای دریافت باید event دریافت رو فعال کنی و از طریق اون دیتات رو دریافت کنی.(کلا تو C# دریافت سریال درد سری داره واسه خودش ، چون داخل اونت سریال به مثلا تکست باکس و... دسترسی نداری و باید هندلر بزنی (ما میگیم هندل ) )
    اینو ببین:

    http://stackoverflow.com/questions/16215741/c-sharp-read-only-serial-port-when-data-comes

    دیدگاه


      #3
      پاسخ : مشکل با دریافت اطلاعات پورت سریال در VISUAL Csharp

      ما بعد از یه عالمه سرچ اخر نفهمیدم :rolleyes:

      دیدگاه


        #4
        پاسخ : مشکل با دریافت اطلاعات پورت سریال در VISUAL Csharp

        روشی که من دیدم بیشتر برنامه نویس ها باهاش کار میکنن و خودم هم انجام میدم اینه که یک تایمر با تیک مثلاً 100 میلی ثانیه تعریف میشه و در هر تیک، اطلاعات ورودی پورت سریال از بافر خونده میشه. در رویداد تیک تایمر با استفاده از BytesToRead میتونی تعداد بایت دریافتی رو متوجه بشی و بر اساس اون عمل کنی.
        اطلاعات بیشتر در سایت مایکروسافت
        لطفاً برای انجام پروژه های دانشجویی پیام خصوصی نفرستید.
        لطفاً سؤالاتی که در انجمن قابل طرح شدن هستند پیام خصوصی نکنید.
        با تمام وجود گناه کرديم اما نه نعمتش را از ما گرفت نه گناهان ما را فاش کرد اطاعتش کنيم چه مي کند؟"دکتر شريعتي"
        اگر جايي که ايستاده ايد را نمي پسنديد، عوضش کنيد شما درخت نيستيد!! "پاسكال"
        يا به اندازه ي آرزوهايت تلاش کن يا به اندازه تلاشت آرزو کن. "شکسپير"

        دیدگاه

        لطفا صبر کنید...
        X