سلام و خسته نباشید دوستان .من یک کاربر مبتدی هستم و میخواستم یک پروژه ای رو درست کنم که به مشکل برخوردم .. من میخوام سطح ولتاژ 5 دستگاه را به طور مداوم بررسی کنم و درصورت تغییر سطح منطقی آن ، میکرو واکنش مورد نظر را نشان بدهد . و میدانم در این خصوص به ADC برای سنس کردن تغییرات ولتاژ و از timer counter برای دستور چک کردن ژایه ها باید استفاده کنم . ولی مشکل اینجاست که نمی دانم چطور باید به میکرو دستور بدم که مثلا در این خط از برنامه ADCW پایه 40 رو چک کنه و در جای دیگه ADCW پایه 39 . یعنی میخوام بدونم چطور باید مشخص کنم که در یک لحظه تغییرات یک پایه مشخص چک شود. ممنون میشم کمکم کنید...در ضمن برنامه رو بازبان c++ نوشتم.
اطلاعیه
Collapse
No announcement yet.
استفاده ار ADC
Collapse
X
-
پاسخ : استفاده ار ADC
شما هر 5 تا ورودیتو با یک مقاومت سری کن و بده به 5 تا پایه میکرو. بعد 5 دیود مثلا 4148 بردار و کاتدشونو وصل کن به همه ورودیات. سر آند رو هم وصل کن به پایه وقفه میکرو.
حالا هر وقت سطح منطقی توی یکی از ورودیات بشه صفر، دیود روشن میشه و یک وقفه خارجی خواهید داشت. توی تابع وقفه هم بیا چک کن ببین کدوم پایه صفره. اینطوری نیازی به دائم چک کردن پایه های میکرو نیست.
---------
.
.
...........
-
پاسخ : استفاده ار ADC
نوشته اصلی توسط pars_payaاز چه میکرویی استفاده میکنین؟
راهی که دوستمون گفت راه بدی نیست ولی راه قشنگتری هم هست ....
اصلا اجازه بدید سوالم رو یک جور دیگه بگم
،میخواستم بدونم تو زبان C++ وقتی چند پایه ADC رو مورد استفاده قرار دادم.چطوری باید به میکرو بگم که در لحظه مورد نظر پایه 1 ADC و در لحظه دیگه پایه ی دیگه ای رو بخونه و بهم بگه،در اصل من نمیدونم چطور باید به میکرو دستور بدم که کدوم پایه ی ADC رو چک کنه ....امیدوارم تونسته باشم منظورم رو خوب برسونم
دیدگاه
-
پاسخ : استفاده ار ADC
سلام
این جوری که من متوجه شدم نیازی به مبدل آنالگ به دیجیتال نیست. نیازی هم به وقفه نیست.
چون گفتی منطقی پس کافیه اون سطح ولتاژهارو به میکروت وصل کنی و پین هاشو به صورت ورودی تعریف کنی و اونارو توی حلقه ی while بخوهنی و هر کدوم که یک نبود رو یک پایه ی دیگه که به عنوان خروجی تعریف شده نشون بده :nice:(=*_^=)
دیدگاه
-
پاسخ : استفاده ار ADC
راستش انقدر زمان خورده بود به این تاپیک که کلا یادم رفته بود داستان چیه :icon_razz:
تغییرات شما در چه حدیه؟؟
مثلا بین 2.5 تا 5 ولت میگنجه؟
اگه آره که حرف دوستمون قبوله ..
اگه نه باید با همون ADC بخونیش...
برنامه ش هم ساده س..
نمیدونم الان بحث سر چیه دقیقا ؟؟؟؟؟؟
من بیسیک کد میزنم ، اگه بدردتون میخوره بگین بذارم....تیم کاوش در مسابقات بین المللی ایران اپن 2016.نمایشی.مین یاب.
علم را باید در آزمایشگاه یاد گرفت نه در دانشگاه!
دیدگاه
-
پاسخ : استفاده ار ADC
نوشته اصلی توسط patriotrnj
اصلا اجازه بدید سوالم رو یک جور دیگه بگم
،میخواستم بدونم تو زبان C++ وقتی چند پایه ADC رو مورد استفاده قرار دادم.چطوری باید به میکرو بگم که در لحظه مورد نظر پایه 1 ADC و در لحظه دیگه پایه ی دیگه ای رو بخونه و بهم بگه،در اصل من نمیدونم چطور باید به میکرو دستور بدم که کدوم پایه ی ADC رو چک کنه ....امیدوارم تونسته باشم منظورم رو خوب برسونم
کد:int a=0; a=read_adc(1);
کد:int b=0; b=read_adc(6);
موفق باشید.
- تو همانی که می اندیشی، هرگاه به این اندیشیدی که تو یک عقابی؟ پس به دنبال رویاهایت برو و به یاوه های مرغ و خروس های اطرافت فکر نکن.
- یک تصمیم می تواند دریچه های زندگی ما را به روی اندوه یا شادی ، سعادت یا تنگدستی ، مصاحبت یا تنهایی ، و عمری طولانی یا مرگی زودرس باز کند
دیدگاه
دیدگاه