سلام
کسی میدونه چطور میشه با زبان ++c برنامه ای نوشت که دیتایی از طریق کامپیوتر برای میکرو بفرسته ؟
کاربر شهرسختافزار
سلام
کسی میدونه چطور میشه با زبان ++c برنامه ای نوشت که دیتایی از طریق کامپیوتر برای میکرو بفرسته ؟
|
|
مدیر انجمن برنامه نویسی و رباتیک
با سلام!
عضويت شما رو در PCN تبريك مي گم.
نمي دونم سوال شما در مورد BT هست يا ارسال داده به ميكرو...؟
من فقط با نحوه ي انجام اين كار تو VC++.Net آشنايي دارم.
براي ارسال داده به ميكرو بايد اول كاري كنيد كه ميكرو از طريق يه پورت COM به ويندوز شناسونده بشه. بعد مي تونيد با استفاده از كامپوننت SerialPort به اون پورت كام وصل بشيد (دستور open) بعد با دستور write داده خود رو ارسال كنيد.
براي با كار با بلوتوث هم فكر كنم بايد بريم دنبال SDK هاي مخصوص اين كار.
چون با كدنويسي تحت زبان c آشنايي ندارم، زياد نمي تونم كمكتون كنم.
شايد دوستان ديگه اطلاعات كامل تري در اختيارتون بذارند.
آرمين
'چو ایران نباشد، تن من مباد
Dim Armin As Iranian
If Iran.Enabled = False Then Armin.Enabled = False
maram (10-08-10)
کاربر شهرسختافزار
خیلی ممنون بابت پاسخ
بله منظورم همونه. فرمایش شما کاملا درسته ماژول بلوتوث متصل به میکرو خودش رو به عنوان پورت مجازی یکی برای ورودی و یکی برای خروجی معرفی میکنه
میشه راهنمایی کنید چه طور میتونم در ++c برای پورت سریال برنامه بنویسم ؟
البته من رشتم الکترونیکه و در برنامه نویسی حرفه ای نیستم (خودمونیم این یعنی اینکه ناشیم)
مدیر انجمن برنامه نویسی و رباتیک
خواهش مي كنم...!
از اينكه با تاخير جوابتون رو ميدم، عذر مي خوام.
در Cpp تحت دات نت نكاتي مهم در مورد كنترل SerialPort وجود داره:
پس از اينكه SerialPort رو روي فرم برنامه قرار داديد به قسمت Properties اون بريد و BaudRate رو روي مقدار دلخواه تنظيم كنيد مثل 9600. خاصيت PortName هم مربوط به نام پورتي هست كه مي خواهيد به اون وصل بشويد مانند COM1
بعد با دستور open سريال پورت، پورت كام رو باز مي كنيد در ادامه با دستور Writeline مي تونيد فرمان ها رو ارسال كنيد. هر وقت داده دريافت شد رويداد DataReceived رخ ميده كه حكم اينتراپ رو داره. براي دريافت اين داده ها هم دستور Readline رو بايد اجرا كنيد.
اين فقط يه كليت بود. دو تا سورس C++ براتون پيدا كردم كه اميدوارم كمكتون كنه:
http://www.codeproject.com/KB/system/cserialport.aspx
http://www.codeproject.com/kb/system/serial.aspx
همچنين اين دو تا منبع هم مي تونه مفيد باشه:
'چو ایران نباشد، تن من مباد
Dim Armin As Iranian
If Iran.Enabled = False Then Armin.Enabled = False
M A H R A D (17-08-10)
کاربر شهرسختافزار
سلام آرمین جان بابت پاسخ ها ممنون
این کامپوننت رو تو ویژوال پیدا کردم ولی به پورت های مجازی error میده
مدیر انجمن برنامه نویسی و رباتیک
خواهش مي كنم!
من هم شنيده بودم سر پورت هاي مجازي مشكل داره.
اگه ويژوال استاديو 2010 با فريم ورك 4 داريد، با اون چك كنيد شايد اين مشكل رو نداشته باشه.
براي اطلاعات بيش تر:
http://msdn.microsoft.com/en-us/libr...erialport.aspx
همچنين يه پروژه ديگه هم پيدا كردم اين رو هم امتحان كنيد:
http://apachetechnology.net/KC/serialport.aspx
براي كامپكت فريم ورك يه شبيه ساز پورت كام وجود داره emulator هست كه پورت مجازي ايجاد مي كنه و ميشه باهاش راحت كاركرد. براي همين نكته كه پيش مياد اينه كه شايد شبيه ساز پورت شما مشكل داشته باشه. لطفا" با نرم افزار Hyper Terminal هم يه امتحان بكنيد.
در صورتي كه مشكل از هيچ كدوم از موارد فوق نبود چند تا SDK معرفي كنم كه با نصب اون ها شايد بتونيد تحت دات نت به پورت هاي مجازي وصل شيد:
http://www.virtualperipherals.com/Vi...escription.asp
http://www.serial-port-communication...rtual-activex/
اگه باز هم مشكل رفع نشد، ارور رو برام بفرستيد تا شايد بتونم راه حل ديگه اي پيدا كنم.
موفق باشيد
آرمين
'چو ایران نباشد، تن من مباد
Dim Armin As Iranian
If Iran.Enabled = False Then Armin.Enabled = False
maram (23-08-10)
|
|
کاربر شهرسختافزار
از دوستان كسي برنامه يا قطعه كدي برا كار با usb&بلوتوث با سي ياc++ داره؟
مدیر انجمن برنامه نویسی و رباتیک
دوست گرامي؛ عضويت شما در PCN رو تبريك مي گم.برای مشاهده این لینک/عکس می بایست عضو شوید ! برای عضویت اینجا کلیک کنیدبرای مشاهده این لینک/عکس می بایست عضو شوید ! برای عضویت اینجا کلیک کنید ارسالی توسط reza22222 برای مشاهده این لینک/عکس می بایست عضو شوید ! برای عضویت اینجا کلیک کنید
بحث شما به اين تاپيك انتقال داده شد تا از پراكندگي مطالب جلوگيري بشه.
همون طور كه قبلا" اشاره شد، اگه ارتباط USB يا Bluetooth براي شما پورت COM مجازي معرفي بكنه شما مي تونيد از كامپوننت هاي ارتباط سريال نظير SerialPort در C++/CLI استفاده كنيد.
همچنين براي كار با بلوتوث كامپوننت هايي وجود داره. نظير 32feet.NET يا Wireless Communication Library .
به علاوه مي تونيد چندين مثال و قطعه كد (C++) رو در اين زمينه از اين لينك دريافت كنيد.
موفق باشيد
آرمين
'چو ایران نباشد، تن من مباد
Dim Armin As Iranian
If Iran.Enabled = False Then Armin.Enabled = False
P A R H A M (16-12-11)
1 کاربر در حال مشاهده این موضوع. (0 عضو و 1 میهمان)
Bookmarks