کانال حل تمرین ریز پردازنده - نیمسال دوم 98-97
64 subscribers
8 photos
52 files
2 links
Download Telegram
کانال حل تمرین ریز پردازنده - نیمسال دوم 98-97
GPIO+key.c
در صورتی که کامنت های فارسی نمایش داده نمیشود
از منوی بالای صفحه مراحل زیر را دنبال کنید .
Edit->Configuration->Editor->Encoding
گزینه Encode in UTF-8 را انتخاب کنید
کانال حل تمرین ریز پردازنده - نیمسال دوم 98-97
Timer_.c
نمونه سوال اولیه از تایمر

مشکلی که در کلاس وجود داشت مقدار دهی ابتدایی بیت EM0 در رجیستر EMR بود .
بیت EM0:3 صرفا نمایش وضعیتی هستند که توسط بیت های EMC0:3 در رجیستر EMR این وضعیت ها انتخاب میشوند
بیت های نمایش وضعیت EM0:3 میتوانند به عنوان خروجی میکرو ظاهر شوند .
که به اشتباه توضیح دیگری داده شد.
کانال حل تمرین ریز پردازنده - نیمسال دوم 98-97
Timer_2_EMR.c
این مثال با استفاده از رجیستر EMR خروجی را در MAT0.0 نشان میدهد که شکل بالا را بصورت پریودیک تولید خواهد شد.
کانال حل تمرین ریز پردازنده - نیمسال دوم 98-97
Timer_2_GPIO.c
نتیجه نهایی مانند مثال قبل است با این تفاوت که برای دستیابی به خروجی از EMR استفاده نکرده و از Port0.pin0 بخش GPIO به عنوان خروجی استفاده میشود.
Abolfazl
Photo
برای تمرین PWM میتوانید این سوال را با PWM نیز حل کنید .
نکات مهم استفاده از ADC در حالت BURST
1- بیت ADGINTEN در رجیستر ADINTEN حتما باید صفر شود .
2- بیت 24:26 رجیستر ADCR حتما باید صفر باشد .
کانال حل تمرین ریز پردازنده - نیمسال دوم 98-97
سوال طرح شده در جلسه امروز سایت
pwm+ADC.txt
1.6 KB
سوال حل شده امروز با اندکی تغییر

این سوال با BURST حل شده اما عملا در هر لبه بالارونده یا پایین رونده کانال هایی که قرار است تبدیل شوند دوباره انتخاب میشوند . سپس بعد از اماده شدن نتیجه کانال ،وقفه آمده و نتیجه را در پورت های GPIO قرار میدهد .
دلیل استفاده از وقفه ی ADC هم برای این بود که در یک لبه بالا یا پایین رونده هر دو کانال پشت سر هم و بدون وقفه تبدیل شده و زمان مناسب برای غیر فعال کردن PDN هم موجود نبود

اگر از دوستان کسی این سوال رو جور دیگه حل کرد اطلاع بده تا اون رو تو کانال قرار بدم
کانال حل تمرین ریز پردازنده - نیمسال دوم 98-97
ADC_P2_BURST.c
برنامه ای بنویسید که هر 100ms کانال 2و3و5 را پشت سر هم تبدیل کرده و نتیجه ی هر کانال را در یک خانه ی آرایه ای قرار دهد .
کانال حل تمرین ریز پردازنده - نیمسال دوم 98-97
ADC_P1_START.c
برنامه ای بنویسید که هر یک چهارم ثانیه ،کانال 3 را تبدیل کرده و نتیجه آن را در بیت های پایین پورت0 قرار دهد .
Forwarded from Abbas Laki
سلام تمرینات درس ریزپردازنده:
۱. برنامه ای بنویسید که سه ورودی ۲و۴و۶ آنالوگ را به طور پشت سر هم تبدیل به دیجیتال کند. فرکانس a2d را روی 2MHz تنظیم کنید.
Forwarded from Abbas Laki
۲. برنامه بالا را بگونه‌ای تغییر دهید، که ۳ کانال را هر ۱ ثانیه پشت سر هم به دیجیتال تبدیل کند. یعنی هر یک ثانیه که گذشت، هر سه کانال را به صورت burst تبدیل نماید.
Forwarded from Abbas Laki
۳. برنامه ای بنویسید که یک موج سینوسی با فرکانس یک کیلو هرتز در خروجی d2a داشته باشیم. تعداد نمونه ها ۳۶ عدد در هر سیکل باشد.