PDA

View Full Version : در خواست کتابخانه برای دسترسی به پورت سریال در کامپایلرهای سی تحت PC



AliBahar
دوشنبه 29 تیر 1394, 09:27 صبح
سلام
می خواهم در یک برنامه C نوشته شده در ویژوال استودیو به پورت سریال دسترسی داشته باشم یک کتابخانه خوب برای پورت سریال می خواهم که از خواندن و نوشتن پورت سریال پشتیبانی کند. در ضمن برنامه نوشته شده تحت ویندوز مورد استفاده قرار می گیرد و نه میکرو کنترلر.
با تشکر

rahnema1
دوشنبه 29 تیر 1394, 22:22 عصر
سلام
برای زبان c همون api ویندوز را می تونید استفاده کنید توی لینک زیر هم نحوه کار توضیح داده شده:
http://www.codeproject.com/Articles/3061/Creating-a-Serial-communication-on-Win
اما به زبان ++c هم کتابخانه CSerialPort وجود داره که رایگان هم هست:
http://www.naughter.com/serialport.html

AliBahar
سه شنبه 30 تیر 1394, 13:51 عصر
سلام
وقتی در فیلد portName در تابع CreateFile ، اسم پورت "COM1" را قرار می دم ارور می گیره دلیلش هم اینه که میگه portName پوینتر از char و نوع داده های که تابع می پذیره LPCWSTR هست خلاصه به خاطر نبود تطابق قبول نمیکنه.
راستی من مهندس مخابراتم تو کنسول نویسی خیلی وارد نیستم. نوع پروژه رو win32 console App گذاشتم. اشکال که نداره؟

rahnema1
سه شنبه 30 تیر 1394, 21:13 عصر
اکثر تابعها دو نسخه ANSI و Unicode دارند که ظاهرا برای شما به طور پیش فرض نسخه unicode انتخاب می شه به خاطز همین انتظار داره نوع داده ها به جای char از نوع WCHAR باشه
در ابتدای برنامه دستور زیر را بد=ذارید فکر کنم درست بشه

#ifdef UNICODE
#define UNICODE
#endif

#ifdef _UNICODE
#define _UNICODE
#endif

AliBahar
چهارشنبه 31 تیر 1394, 08:46 صبح
متاسفانه فرقی نکرد.
یک کار دیگه کردم. از طریق Project Properties - General - Project Defaults - Character Set رفتم و unicode رو غیر فعال کردم. مثل اینکه فعلا درست شد. ممنون از اینکه جواب دادین