آموزش ارتباط با سخت افزار
ارتباط بین نرم افزار و سخت افزار یکی از کارهای بسیار دوست داشتی و پر کاربرد در صنعت امروز دنیاست. ولی این کار از یک مهندس نرم افزار یا یک مهندس سخت افزار و الکترونیک به تنهایی ساخته نیست بلکه مجموعه ای از هر دو تخصص رو طلب میکنه. ولی این مطلب فقط در مورد کار های صنعتی و بزرگ صدق میکنه نه درباره کارهای کوچیک و تجربه های شخصی (البته همین کارهای کوچیک هستن که پایه گذار یک تخصص میشن). پس تکلیف کسانی که دوست دارن تو خونه برای تجربه خودشون یه برنامه جمع و جور بنویسن چی میشه. باید چی کار کنن؟
سوالات زیر تیتر خیلی از تاپیک هایی هست که تو این چند سالی که سایت داره فعالیت میکنه زده شدن.
چطوری میشه با کامپیوتر یک LED رو روشن کرد؟
کنترل سخت افزار به کمک کامپیوتر
چگونگی برقراری ارتباط بین کامپیوتر و دستگاه های جانبی
بعضی ها به نتیجه رسیده و بعضی ها هم نه بعضی هم از نظر نرم افزار به نیجه رسیده ولی به خاطر عدم آشنایی کامل با پورت و سخت افزار باعث صدمه دیدن پورت یا دستگاه جانبی شده.
مطالب بالا دلیل این بود که من به این نتیجه برسم که شاید بد نباشه یه بخش آموزش ارتباط با سخت افزار هر چند مختصر تو سایت داشته باشیم.
میدونم مطالب کامل نیست و خیلی جاها شاید مشکل داره ولی این بخش حاصل تجربیات شخصی خود من هست و سعی میکنم در حد امکان و توانایی خودم مطالب مهم تو برنامه نویسی، ساخت بخش سخت افزاری و نکات مهم پورتی که برای اون برنامه مینویسیم رو در اختیار دوستان قرار بدم امیدوارم دوستان و اساتید مشکلات و کمبود های کار بنده رو به من تذکر بدن.
یه خواهشی هم دارم اینه که اگر درباره هرکدوم از برنامه ها یا مدارات سوالی داشتید به من پیغام خصوصی بدید تا جواب اون رو در بخش پرسش و پاسخ مربوط به همون برنامه قرار بدم و این طوری از به هم ریختگی تاپیک جلوگیری بشه و دوستان هم راحت تر از مطالب استفاده کنن.
برای شروع و انجام این برنامه ها به امکانات زیر نیاز داریم
1- کامپیوتر شخصی
2- کامپایلر C++ (خودم از borland استفاده میکنم ولی برنامه ها محدودیتی تو کامپایلر ندارن)
3-PortTalk
4- تعدادی مقاومت
5- منبع تغذیه 5 ولتی یا باطری
موارد ذکر شده قسمت های اصلی و مورد نیاز بود ولی برای ادامه پروژه ها یک سری امکانات دیگه هم هست که برای راحتی کار و بعضی جاها محافظت از خودتون و کامپیوتر نیاز دارید ولی بدون اون ها هم میشه کار رو انجام داد. یک سری امکانات هم هست که برای دیدن نتایج کار لازم و ضروری هست ولی نه برای کل پروژه ها بلکه برای یک یا چند پروژه خاص که اون ها رو هم در زیر نوشتم:
1- کابل پرینتر
2- بردبورد
3- مقداری سیم نازک
4- ترانزیستور
5- گیره سوسماری
مواردی که برای تست برنامه نیاز داریم:
1- LED
2- LCD
3- StepMotor
متشکرم.
موفق باشید.
نقل قول: آموزش ارتباط با سخت افزار
با سلام
مي شه توضيح بديد در C++ به وسيله پورت USB چطور با يه پرينتر مي شه ارتباط برقرار كرد و مثلاْ وضعيت اون رو خوند؟يا بهش رشته رو براي چاپ فرستاد؟
اصلاْ اين كار شدني هست؟راحته يا سخته؟
نقل قول: آموزش ارتباط با سخت افزار
پیشنهاد میکنم به بچها که برای کار با سخت افزار اول برن میکرو کنترلر یاد بگیرن .
میکرو کنترلر یه ای سی کوچیکه که پایه های اونو به صورت 8 تایی به اسم پورت می شناسیم
میکرو داخل خودش یک پروسسور و چند نوع حافظه مختلف داره که شما می تونین برنامتون رو به زبان های
پاسکال - C و بیسیک بنویسید و بعد از کامپایل داخل میکرو کپی کنید و بعد با اتصال میکرو به کامپیوتر می تونین با فرمان هایی که خودتون براش تعریف کردین وسائل مختلف رو باهاش کنترل کنین .
البته میکرو حتما نیازی به کامپیوتر نداره و خودش هم میتونه کلی کارا رو انجام بده.
در مورد پورتها هم باید بگم بین سریال و پارالل ، سریال برای کار بهتره چون خطر اسیب رسوندن به مادربورد کمتر میشه ولی در کل هردوی اینها دیگه قدیمی شدن و تو مادربورد های جدید اثری ازشون نیست پس بهتره برای ارتباط با سخت افزارهایی که خودمون میسازیم از USB استفاده کنیم که کلی برتری نسبت به هردو پورت قبلی داره .
من تا بحال 9 تا روبوت ساختم که 7 تا از اونا با میکرو کنترل می شد ( به تنهایی ).
تو روبات 8 چون از تکنیک های پردازش تصویر استفاده کردم یک ارتباط با کامپیوتر هم به صورت wireless درست کردم که به پورت سریال متصل می شد.
تو روبات آخری هم که ساختم از پورت USB برای اتصال به کامپیوتر استفاده کردم در ضمن این آخریه قابلیت اتصال و کنترل از طریق اینترنت هم داره
اگه چیز دیگه ای برای سوال دارین من با اطلاعات اندک خود میتونم راهنمایی تون بکنم
نقل قول: آموزش ارتباط با سخت افزار
نقل قول:
نوشته شده توسط
rabbitwatcher
با سلام
مي شه توضيح بديد در C++ به وسيله پورت USB چطور با يه پرينتر مي شه ارتباط برقرار كرد و مثلاْ وضعيت اون رو خوند؟يا بهش رشته رو براي چاپ فرستاد؟
اصلاْ اين كار شدني هست؟راحته يا سخته؟
در مورد سوال شما باید بگم ارتباط با سخت افزار با ارتباط با پرینتر تفاوت داره ، چون هر سخت افزاری که میسازیم طبق نیاز و نوع طراحی خودمون درایورش رو می سازیم و با اون ارتباط بر قرار می کنیم و این یک مسئاله شخصی برای خودمان است ، اما پرینتر ! تصور کنید شما که برنامه نویس هستید میخواهید در برنامه تان یک صفحه گزارش را پرینت بگیرید ، پس شما مجبورید که با پرینتر خود با استفاده از پورت ارتباط بر قرار کنید بنابر این لازم است تا با دستورات داخلی پرینتر خود ارتباط بر قرار کنید و هدها و موتورها و .... ر ا کنترل کنید . اما اینجا یک مشکل وجود دارد و آن اینکه تعداد بسیار زیادی شرکت در دنیا مشغول ساخت پرینتر می باشند و هر کدام از این دستگاهها معماری سخت افزاری خاص خود را دارند ! ایا شما به عنوان برنامه نویس باید کار با تمام پرینترهای دنیا را بلد باشید ؟
قطعا اینطور نیست!
در واقع امکان چاپ و ارتباط با انواع چاگر یک امکان در سیستم عامل میباشد و شما تنها به استفاده از این امکانات می پردازید ، و بقیه ماجرا و ارتباط سیستم با پرینتر به عهده سیستم عامل می باشد!
نقل قول: آموزش ارتباط با سخت افزار
با سلام
از تایپیکی که زدید خیلی متشکرم ...
انشاءالله ادامه داشته باشد ما که استفاده کردیم.
نقل قول: آموزش ارتباط با سخت افزار
سلام
این تاپیک چرا غیر فعال است.
من میخواستم بدانم که چگونه میتوانم پورت com را در c راه اندازی کنم و از آن استفاده کنم.