PPF نوشته شده توسط:آریا جان ... بعد از مدتی سری به ما زدی... دلمون برات تنگ شده بود...
Aria نوشته شده توسط:که بعد با یک شدن این پورت به میکرو کنترلر یک clock pulse اعمال بشه و میکرو وارد کار بشه و ولتاژها رو هماهنگ کنه و دستور بده به دستگاه شماره 1 و اون دستگاه رو روشن کنه
همین که چطوری من پورت سریال رو فعال کنم و اینکه آیا میتونم در یک پورت سریال همزمان چند تا از دستگاههای خروجی رو روشن یا خاموش و یا همه رو انجام بدم یا نه یا اینکه باید تک تک اعمال بشه
یعنی میشه روی این پورت هر خط آدرسش که فکر میکنم اگه اشتباه نکنم 25 خط اطلاعات داره این پورت بتونم همه دستگاهها یا تعداد دلخواهی از این 8 تا روشن و خاموش کنم و اگه میشه چه طوری
این کاری که می خوای انجام میشه... فقط نگو که میخوای کلاک پالس رو از خود پورت سریال دریافت کنی... بهتره کنترلرت رو طوری طراحی کنی که با یک(منطقی) شدن یک پایه، دستگاه مربوط به همون پایه روشن بشه(یعنی پالس یک منطقی روی پایه لحظه ای و فقط برای روشن کردن باشه)... و با دریافت صفر (منطقی) عمل خاموش شدن انجام بشه (به شرط اینکه حالت بدون دیتا، صفر (منطقی) به حساب نیاد).
برای قسمت نرم افزاریش هم احتیاج به کامپوننت دیگه ای نداری، توی VB و C# این عمل مشترکه(هر کدوم رو خواستی انتخاب کن):
1-از منوی Toolbox یک کنترل SerialPort به فرم اضافه کن... بقیه ی کارها مثل دکمه ها و کدهاشون هم اگه لازم داشتی بگو تا برات بذارم...
2- خاصیت PortName اون رو برابر عبارت ("COM1"مثلا) قرار بده...
3- هنگام نوشتن یا خوندن با متد Open() اون پورت رو باز کن...
4- با متدهای Read() و Write() میتونی بصورت بایت بایت اطلاعات رو با یک آرایه به همه پین های پورت سریال ارسال کنی یا از روی اون بخونی...
اگه اطلاعات بیشتری خواستی بگو ... توضیحاتم را با فرض آشنایی شما با برنامه نویسی ویژوال نوشتم...
ممنون PPF جان
والا کم سعادتی از ماست که نمی تونیم خدمت برسیم
عرض کنم به حضورتون که
برای اینکه وقتی دیتا نباشه میکرو اون رو صفر منطقی فرض نکنه
میام سطوح 1 رو +5 ولت و 0 رو -5 ولت میزارم که وقتی دیتا نباشه فرض بر صفر منطقی نکنه
همین که چه طوری کلاک پالس رو از خود پورت سریال بگیرم یه کم مشکل ساز شده
راهی داره یا نه و چه طوری ؟
یعنی بهتر میشه اگه از خود پورت سریال کلاک پالس بگیره
و خوب اگه این طوری نمیشه همون حالت دیگه که از پورت سریال کلاک نگیریم
این رو چه طوری انجام بدم ؟
اضافه کنم هیچ آشنایی با ویژوال بیسیک ندارم و خوب ممنون میشم که اگه واضح تر و کامل تر راهنمایی کنی و کاملتر متوجه شم
اگه مثالی بتونی بزنی که یک پورت رو مثلا با فشردن کلید در کامپیوتر یک منطقی و با دوباره زدن قطع بشه ممنون میشم
Admin نوشته شده توسط: در دلفی برای این کار کامپوننت های مختلفی وجود دارد که بسته به نوع کارتان باید ان را نصب و تنظیم کنی ، البته در سطح بالاتر میتوانید برای کارایی بهتر خودت هم کامپوننت را بنویسی و شخصی سازی کنی ولی ظاهرا طبق توضیحات دوست خوبمون در vb به صورت دیفالت ارتباط با پورت در بیسیک خود کامپایلر پیش بینی شده که خود این کلی از مراحل کارت رو ساده میکنه و اصلا درگیر این موضوع نخواهی شد
توضیحات مبسوط و کاملی در پست قبلی بود که بهره خوبی میتونی ازش ببری
ممنون جناب زارع
فکر میکنم دلفی از زبان های قوی و سخت باشه که خوب فعلا همونطوری که گفتید با ویژوال بیسیک چون این امکانات گویا وجود داره کار راحت تر هست
ممنون از راهنماییتون
stubbern نوشته شده توسط:داداش آریا اول بگم که این کار یعنی روشن و خاموش کردن دیود یا لامپ های نوری با AVR میکرو کنترولر خیلی راحت تره و بهتره بگم با VB اصلا فکر نکنم ممکن بشه...
ولی برای اینکه وقتی روی یکی کلیک می کنن object دیگه غیر فعال بشه باید از خاصیت visible اون استفاده کنی...
یعنی با مقادیر true or false مقدار دهی کنی...
ولی توصیه می کنم این کار رو با AVR انجام بدی چون خیلی سریعتر به جواب می رسی...
می تونم ساختار برنامه رو هم بگم اگه خواستی بگو عزیزم...
من هنوز واسه چیزایی که یادم دادی بهت مدیونم...

(یه داداشی که بیشتر نداریم
)
ممنون آبجی ستاره
اول اینکه من که چیز درست و حسابی و به درد بخوری بلد نبودم و نیستم که به شما یاد بدم
هیچ دینی هم شما به من نداری
لطف داری
در مورد برنامه هم
ببین آبجی من باید با کامپیوتر کنترل کنم دستگاه ها رو پس نیاز به یک رابط بین کامپیوتر و سخت افزار و میکرو خودم دارم
که این رابط ها زبان های برنامه نویسی و همون کامپایلر ها هستند
که ویژوال بیسیک یکی از این ها هست و هر کاری رو تا اونجایی که من میدونم میشه انجام داد
در مورد اینکه LED (همون لامپ نوری ) که شما گفتید یا دیود ها اول اینکه خوب ولتاژ و جریان کار یک LED با یک وسیله که با برق شهری کار کنه متفاوت هست و سطوح ولتاژ رو باید کم و زیاد بشه
در مورد میکرو کنترلر AVR هم کاملا مشخص هست این این میکرو کنترلر بسیار قوی تر و قدرتمند تر هست اما برای اینطور کار کوچیکی ارزش نداره یک میکرو AVR استفاده بشه
چون معمولا کارهای سنگین و بزرگ رو با این میکرو انجام میدن
در عین حال شرط این کار این هست که با میکرو 8051 نوشته بشه
وگر نه میشد از میکرو کنترلرهای AVR یا ARM یا PIC یا حتی 8086 و یا Z80 استفاده کرد
خودم به شخصه کار با AVR و ARM رو ترجیح میدادم اما خوب باید با 8051 کار بشه
ممنون میشم این true و false رو توضیح بدی بیشتر
و ساختار برنامه رو که گفتی بزاری ممنون میشم