ورود

View Full Version : ارتباط سریال در MFC ؟



orkideh07
شنبه 30 بهمن 1389, 10:30 صبح
یه برنامه میخوام که در محیط visual C++6 با MFC بتونه ارتباط غیرسنکرونی با پورت سریال داشته باشه مثلا در برنامه در حالت عادی پردازش مجزا انجام میده و هر وقت که مثلا 20 بایت داده از پورت دریافت شد رشته دریافت شده رو روی صفحه نمایش بده (شبیه وقفه نویسی که با C میشه انجام داد)
توی نت خیلی گشتم سورسهایی هم پیدا کردم ولی عمدتا محدود هستن مثلا تا یه کلید رو فشار میدی داده ها رو نمایش میده ولی من میخوام خودکار باشه...راستش زیاد هم از کد هاش سر در نیاوردم که بتونم طبق نیاز خودم تغییرش بدم..لطفا اگه کسی تجربه ای داره دریغ نکنه، خیلی بهش گیرم

mehdi.mousavi
شنبه 30 بهمن 1389, 12:41 عصر
یه برنامه میخوام که در محیط visual C++6 با MFC بتونه ارتباط غیرسنکرونی با پورت سریال داشته باشه مثلا در برنامه در حالت عادی پردازش مجزا انجام میده و هر وقت که مثلا 20 بایت داده از پورت دریافت شد رشته دریافت شده رو روی صفحه نمایش بده (شبیه وقفه نویسی که با C میشه انجام داد) توی نت خیلی گشتم سورسهایی هم پیدا کردم ولی عمدتا محدود هستن مثلا تا یه کلید رو فشار میدی داده ها رو نمایش میده ولی من میخوام خودکار باشه...راستش زیاد هم از کد هاش سر در نیاوردم که بتونم طبق نیاز خودم تغییرش بدم..لطفا اگه کسی تجربه ای داره دریغ نکنه، خیلی بهش گیرم

سلام.
برای ارتباط Async با Serial Port می تونید از کلاس CSerial معرفی شده در این مقاله (http://www.codeproject.com/KB/system/serial.aspx) استفاده کنید.
کلاس مزبور عملیات رو در یک Worker Thread انجام میده، در نتیجه Main Thread شما دچار وقفه نخواهد شد.

موفق باشید.

orkideh07
یک شنبه 01 اسفند 1389, 07:53 صبح
سلام.
برای ارتباط Async با Serial Port می تونید از کلاس CSerial معرفی شده در این مقاله (http://www.codeproject.com/KB/system/serial.aspx) استفاده کنید.
کلاس مزبور عملیات رو در یک Worker Thread انجام میده، در نتیجه Main Thread شما دچار وقفه نخواهد شد.

موفق باشید.
ممنون...توی سرچ هام اینو دیده بودم ولی از قسمت اصلیش که دریافت از پورته چیزی نفهمیدم در واقع اون برنامه ای که من میخوام بنویسم توی دسته بندی چهارم همین مقالست و خیلی سختمه...مخصوصا که کلا با محیط MFC اشنایی زیادی ندارم وگرنه همین برنامه رو 2-3 روزه توی C# نوشتم و جواب گرفتم
مجددا ممنون
و همچنان اگه کسی تجربه ای داره دریغ نکنه