◄◄ تاپيك ويژه ميكرو كنترلر AVR [سوالات در اين تاپيك]


◄◄ تاپيك ويژه ميكرو كنترلر AVR [سوالات در اين تاپيك]



سلام دوستان
تو اين تاپيك مي خوايم در مورد ميكرو كنترلر avrبا هم بحث و گفتگو كنيم
پس منتظر شما دوستان هستم
ممنون



نمایش اعداد روی سون سگمنت

1:

تنها جان خودت شروع كن دوستان هم كمكت خواهند كرد ...


درخواست مقاله جامعدر مورد سنسورهای دما


رادار نفوذ کننده در زمین

2:

سلام
لطف كنين هر كي در مورد Avr اطلاعات داره يا مايله اين تاپيك شروع به كار كنه بگه تا بدونيم و تاپيك بي فايده نباشه
ممنون


کمک برای الگوریتم ساده کردن یه عبارت جبری(درس مدار منطقی)

3:

در ابتدا من مي گم خيلي دوست دارم تو اين سايت از اين ميكرو بيشتر فرموده بشه
ممنون


درخواست یک مقاله در مورد برق

4:

خيلي خوبه
اون كتاب قهوه اي رو بگو
يعني من تازه دارم ميخونم و خيلي هم علاقه دارم


تبديله كامپيوتر به يك اسيلوسكوپ ديجيتال

5:

سلام

پس کی شروع می کنید ؟؟؟؟

با سپاس


توليد الكتريسيته از مواد دفعي

6:

دوست عزيز من فكر مي كنم اين تاپيك شروع نشه
چون مدت زيادي هست كه اينطوريه
به هر حال كساني كه پيشنهاد دادن و چيزي بلدن بايد اقدام كنن
ولي من بعيد مي دونم كه شروع بشه.


مقاله در مورد برق صنعتي

7:

شرکت Atmel 5 میکروکنترلر 8 بیتی AVR جدید با توان مصرفی بسیار پایین برای هستفاده در مدارات با تعداد کدهای بالا و اینترفیسینگ زیاد عرضه نموده هست.



این میکروکنترلر ها با نام های ATmega640، ATmega1280، ATmega2560، ATmega1281، ATmega2561 عرضه شده هست و دارای 64 تا 256 کیلو بایت flash و 8 کیلو بایت RAM به صورت داخلی می باشد.

این میکروهای جدید مدارات جانبی میکروها را با توجه به مدارات داخلی خود کاهش داده هست که از اون جمله می توان به وجود یک اسیلاتور RC 8 مگا هرتزی در داخل خود که باعث حذف اسیلاتور خارجی گشته هست را نام برد؛ از دیگر قابلیت های جالب این میکرو مصرف بسیار پایین اون می باشد این میکرو که با 1.5 ولت کار می کند در حالت power down تنها 100 نانو آمپر مصرف می کند که باعث افزایش عمر باتری خواهد شد.

مدل 100 پین این میکرو ها داراری 4 کانال UART و 16 عدد A/D می باشد.

قیمت این میکرو ها برای 10000 عدد برای ATmega640، 4.75$ ؛ ATmega1281، 6.00$؛ ATmega1280، 6.40$؛ ATmega2561، 7.50$ و ATmega2560، 7.80$ می باشد.


برای اطلاعات بیشتر به سایت زیر مراجعه نمایید:


[ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]

منبع : [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]

8:

آره شروع نمي شه
چون كسي مايل به شروعش نيست
من كه رمقي واسه گذاشتن آموزشها ندارم
ممنون

9:

ترجيح مي دم اگه پستي دارم تو تاپيك هاي ديگه بزارم
ببخشيد

10:


11:

با سلام
كي در مورد ارتباط avr با graphical lcd اطلاعاتي داره؟
لطفا من رو هم در جريان بذاره
ممنون

12:

سلام
لطفا
درمورد دستور dtmfout در bascom توضيح كامل مي خواهم؟

13:

با سلام
من دنبال كيت avr به مدل stk 500 ميگردم لطفا اگر كسي در مورد نحوه خريد يا محل فروش اون اطلاعاتي داره توضيح بده.


با تشكر

14:

سلام
به نظر من avr خیلی قشنگتر و کامل تر از 8051 هست و نکات آموزشی در مورد اون زیاد
پس سریعتر شروع کنید
مطمئن باشید مخالفین هم موافق می شوند

15:

سلام 2243839
اول از همه خوش آمدید
در ثانی برای این خرید ، من مغازه ی جوان در بازار عباسیان ، واقع در خیابان جمهوری ، سپس بازار امجد را پیشنهاد می کنم
فروشنده ی آگاهی دارد.
موفق باشید

16:

سلام عزیزم 2243839 حالت خوبه .

میخواستم بگم نیازی به خرید stk 500 نیست چون اونو به راحتی میتونی از روی نقشش درس کنی و حتی انو روی بردی که روش هست پیاده کنی در ضمن چراstk500? میتونی از stk 200 هم هستفاده کنی خیلی ساده ترهم هست .


17:

سلام

دوستان به راهنمايي شما نياز دارم شديدا

اصلا چرا كسي كه اين تاپيك رو ايجاد چرا ديگه ادامه نداد ....



خيلي ها مثل من اصلا وقت كتاب خوندن و كلاس رفتن ندارن و در عين حال خيلي به تجربه و اطلاعات ديگران هم محتاجند...



تو وبلاگ ها خيلي در مورد اين ميكرو كنترلر فرموده شده ولي كلا هم همشون مثل هم نوشتم ...

يعني هيچ جا يه مطلب جامع پيدا نميشه ......

اي كاش اين دوستمون برگردن اين تاپيك رو دوباره راه اندازي كنند.

و حالا مشكل من!!!

ببينيد من تا حالا با avr كار نكردم ولي ميخوام شروع كنم و چون هميشه قدم اول آشنايي هست ، مطالبي رو هم در اين رابطه خوندم ( فقط خوندم...) .والان مثلا فهميدم ميكرو كنترلر چي هست ؟ يا مثلا چه انواعي داره ؟ چه كامپايلرايي داره؟ ولي چيزي كه زياد متوجه نشدم اينه هر كردوم پايه ها چي كار ميكنن كه اگر اين دوستمون تجربياتشون رو در اين تاپيك و كلا راجع به اين ميكرو در اين تاپيك برنامه ميدادن مطمئنا راه گشاي خيلي از مشكلات بودن و ميخوام بدونم كه يك ميكرو چه طوري تصايشانر رو پردازش ميكنه ....

اينم فعلا در حد تئوري

18:

این هم مقدمه ای در مورد میکروهای AVR
http://www.divshare.com/download/2176562-805
منتظر برنامه هایی برای AVR باشید

19:

ميشه يه سري برنامه كاربردي با BASCOM بذارين.
منم سعي مي كنم اين كارو بكنم
ممنون

20:

سلام
کسی هست که برنامه نویسی avrبازبان cرابلد باشه یا مرجعی رامعرفی کنه.


21:

با سلام
دوستانی که میخوان برنامه نویسی به زبان C یاد بگیرند اول باید خود برنامه C را یاد بگیرند .
برای این کار کافی کتاب برنامه نویسی C نوشته جعفرنژاد قومی را بخونند
بعد برای برای نوشتن برنامه برای میکر کنترولر Avr میتونند در موحیط کدوویژن کتاب میکرو کنترولر های Avr نوشته امیر ره افروز یا پرتوفر ...

را مطالعه نمايند

22:

من با اسمبلی بیشتر حال می کنم.

کل کدهاش یه صفحه a4 بیشتر نیست.

اصلا if و while هم نداره !!!!!! نیازی هم نیست قبلش اسمبلی بلد باشی.

من با avr studio برنامه مو می نویسم و کنترل می کنم و با خودش اسمبل می کنم و با bascom هم atmega 16 مو write می کنم .

پروگرامر رو هم خودم ساختم stk200/300 بدون لچ.

برقش هم از usb می گیره.

کمکی از دستم بر بیاد در خدمتم.


23:

میکروکنترولرهای avr به سه گروه tiny mega و با پسوندهای at90 تقسیم می شوند

24:

سلام

دوستانی که تجربه دارند به من تازه کاربگیدبرنامه نویسی میکروبا سی بهتره یا اسمبلی؟

25:

به اين سايت سري بزنين.
نظري داشتين ممنون مي شم.
کد:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

26:

بدون شك سي !!! اصلا قابليتاي سي با اسمبلي قابل مقايسه نيست

27:

اگه اسمبلی کار کنی با ساختار و نحوه کار میکرو آشنا میشید.

اما اگه بخواهید برنامه و پروژه بنویسید کار با اسمبیلی خیلی سخت میشه.

بیشتر سختی اون به خاطر مدیریت رم و پشته هست.


زبانهای برنامه نویسی برای avr فراوون شده.
سی
پاسکال
بیسیک
یک سری سیستم عامل هم برای avr های قدرتمند (دارای رم و حافظه برنامه بالا) طراحی شده که برای ساخت پروژه های بزرگتر عالیه.


28:

میکروکنترلر چیست: میکروکنترلر رو درواقع می توان یه کامپیوتر کوچولو در قالب یه چیپ برای کنترل وسایل الکترونیکی (در اینجا ربات) تلقی کرد.

تفاوت میکروکنترلر با میکروپروسسور در اینه که میکروکنترلر دارای یک CPU ٫مقدار محدودی RAM ٬ ROM ٬ پورت های I/O و تایمر در درون خود می باشد در صورتی که میکروپروسسور فقط یه CPU هست و شما باید RAM, ROM ,...

رو به صورت اجزای جانبی به اون متصل کنید (درست مثل CPU کامپیوتر).

برای همین میکروکنترلرها تک منظوره ولی میکروپروسسورها همه منظوره هستند.

با این تفاسیر میکروکنترلرها دارای کارایی های خاص خودشون مثلا در ماشین لباسشویی٬ ماکروویو٬ تلفن و البته ربات هاو...

هستند یعنی جایی که هستفاده از میکروپروسسور نه از نظر کارایی و نه از نظر اقتصادی عقلانیه!

29:


30:

این یه توضیح کوچک برای میکروکنترلر بود شاید به درد بخوره

31:


32:

دوستان خواهشا نزارید اینجا خاک بخوره! من تازه دارم avr یاد میگیرم و امیدم به شماست! من با سی کار میکنم و برنامه های کدویژن و avr studio رو دارم.


33:

اگر کسی با avr_studio کار می کنه و میخواد با زبان c برنامه نویسی کنه می تونه WINAVR رو سیستمش نصب کنه.
به وسیله این برنامه به راحتی میشه به زبان c برنامه نویسی کرد و در همون محیط avr_stdio شبیه سازیش کرد..
این برنامه رایگانه و برنامه نویسی اون تحت هستاندارد avr-gcc هست.
اغلب نمونه کد های زبان c که در اینترنت یافت میشه به این هستاندارد هست.
تنها برتری codevision نسبت به WINAVR در library های آماده اون و قسمت WIZARD اون هست.

برای دریافت این برنامه 24 مگابایتی به این سایت مراجعه کنید.

کد:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

34:


35:

تاپیک بیخودیه
کسی اطلاعات درست حسابی نمیزاره فقط مقدمات و تاریخچه
اونیم که ایجادش کرد فکر میکرد بقیه می یان براش کاری انجام بدن که وقتی دید خبری نیست گذاشت و رفت

36:

كتاب مرجع كامل ميكروكنترلرهاي AVR انتشارات نص
بهتربن كامپايلر c هم codevision هستش
اگه اطاعاتي راجبش خواستي درخدمتم .


37:

تایید میشه!
امروز برای اولین بار این تاپیک رو دیدم(چون Sticky نشده بود!) و به عمق فاجعه پی بردم!
ابتدا اینو بگم ؛ واقعا متاسفم که تاپیک 8051 تاحالا 265 تا پست داشته ولی تاپیک مثلا تخصصی!!!!! avr فقط 32 تا پست!(درصورتی که avr خیلی سریعتر،قویتر و با امکانات بیشتر از 8051 هست)
لطفا دوستانی که تازه با میکرو کنترل اشنا شدن یا قراره بشن! الکی پست ندن که :
میکروکنترولرهای avr به سه گروه tiny mega و با پسوندهای at90 تقسیم می شوند
چون باعث میشه کسی که میاد تاپیک رو بخونه کلا بیخیال قضیه شه.
اما برای اینکه فقط انتقاد نکرده باشم ، در مورد زبان برنامه نویسی اینو بگم که اصلا avr برای زبان c بهینه شده،یعنی نوشتن برنامه با اسمبلی علاوه بر سختی و طولانی شدن برنامه ، دیرتر هم تو avr اجرا میشه و از این لحاظ یه کم بهتر از بیسیک هست.پس بهترین زبان برای avr همون c هست، شک نکنید(میتونید تو سایت خود atmel هم پیگیری کنید)
امیدوارم یکی از دوستان یه تاپیک جدید (و البته درست حسابی) برای avr درست کنه چون هرکی بیاد 3 صفحه اول این تاپیک رو بخونه فکر میکنه avr دیگه چه میکروکنترلر درپیتیه

38:


39:

راستی درمورد زدن تاپیک جدید نظر بدید چون این تاپیک دیگه مرده و از 4000 تا بازدید فقط 30 تا پست زده شده در ضمن فاصله پستها هم حداقل 1 هفته اس!!!.

خود من هم تمایلی ندارم تو این تاپیک پست بدم.

پس یکی از دوستان یه تاپیک جدید درست کنه(شایدم خودم!) ، منم تا اونجایی که بلدم(یه کم!) کمک می کنم .اگه مدیرمحترم هم لطف کنن تاپیک جدید رو مهم کنن که دیگه خیلی خوب میشه.
چون واقعا زشته که تو p30world که در مورد همه چیز تاپیک داره ، در مورد avr (پر هستفاده ترین میکرو ،حداقل در ایران) یه تا پیک درست حسابی نداشته باشه.



40:

به به ، چه هستقبالی!!!
حرفمو پس گرفتم .اشکال از تاپیک نیست ، اشکال جای دیگه ای هست!
امیدوارم بقیه مثل من از این اشتبا ها نکنن

41:

خب بذارید یه توضیح راجع به زبانهای برنامه نویسی بدم تا مطلب جا بیفته
زبان مورد هستفاده در میکرو کنترلر ها اسمبلی هست و هر نوع میکرو کنترلر از اسمبلی مخصوص به خود هستفاده میکنه که تفاوتهایی با همدیگه دارند.
از اونجایی که برنامه نویسی با اسمبلی بسیار پیچیده و نیاز مند داشتن آشنایی زیاد با میکروی مورد هستفاده داره از برنامه های دیگه ای مثل سی یا بیسیک هستفاده میشه.برای کسانیکه اطلاعات برنامه نویسی زیادی ندارند زبان بیسیک راحت تره چون به زبان محاوره ای نزدیکتره
کسانیکه با زبان سی آشنایی داشته باشند میدونن که این زبان قابلیتهای بسیار بالایی رو داره و میتونن خیلی راحت دستوراتی رو که میخوان پیاده سازی کنن.
برای اینکه بتونین برنامه ها رو بنویسین نیاز به برنامه های ویرایشگر دارین که بسته به زبان برنامه نویسی فرق میکنه
برای زبان سی از برنامه های code vision یا avr studio و غیره هستفاده میشه
و برای بیسیک هم از Bascom
هر کدوم از این برنامه ها رو که هستفاده کنین در وقت انتقال برنامه به میکرو کنترلر ، اون رو به زبان اسمبلی که تنها زبان فابل فهم برای اون هست تبدیل میکنه
برای اینکه برنامه های خودتون رو به حافظه میکرو انتقال بدین نیاز به پروگرامر دارین تا بتونین برنامه ها از کامپیوتر بر روی حافظه میکرو بنویسین که برای avr چند نوع مختلف وجود داره که ساده ترین اون stk 200/300 هست که میتونین اون رو به راحتی بسازین!
نقشه اون رو توی کتابها میشه پیدا کرد.
تا اینجای کار رو داشته باشین از این به بعد رو باید از روی کتاب رفت جلو
اگر دوستان دیگه هم بیان جلو و اون چیزهایی رو که بلدن رو آموزش بدن فکر کنم بد نباشه
بزرگان بد نمیگن که: زکات علم آموزش اون به دیگران هست

42:


43:

سلام من تازه می خواهم برنامه نویسی برای Avr رو شروع کنم حالا موندم با bascom بنویسم یا با C؟اگر دوستانی که تجربه ای در این زمینه دارند به من کمک نمايند ممنون میشم.

با تشکر

44:

سلام.

من یه مقاله در مورد مقایسه AVRstudio و Codevision لازم دارم...

ممنون....


45:

يكي مي تونه به من بگه چطور مي‌تونم 2 تا ميكروavr رو به صورت سريال به هم وصل كنم؟
مي‌خواهم فايل بفرستم.


46:

سلام
من 1 سوال دارم.
میخواستم ببینم برای نوشتن برنامه در میکروکنترلر چه وسایلی به جز کامپیوتر احتیاج هست؟
چون میخواستم 1 ساعت دیجیتال درست کنم با میکرو کنترلر.
نمیدونم با چه وسیله ای باید برنامه رو منتقل کنم به اون میکرو؟
بایدم خودم بسازم اون وسیله رو یا میبایست خرید؟
ممنون

47:

من خیلی وارد نیستم اما تا اونجایی که میدونم راهنماییت میکنم
اولاً باید ببینی با کدوم IC میخوای کار کنی (AVR از بقیه پیشرفته تره) بعد اگه میتونی باید یه پروگرامر برای IC درست کنی که با کامپیوتر بتونی پروگرام بهش بدی.

اگه هم نمیتونی پروگرامر درست کنی تو گوگل سرچ کن کلی تبلیغ میاره که پروگرامر های AVR از 12000تومن برات درست میکنن تا...


کد:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
من خودم مثل تو تازه کارم، پیشنهاد میکنم کتاب میکرو کنترلرهای AVR و کاربردهای اون از امیر افروز انتشارات نص رو بگیر، از ابتدا بهت یاد میده که خودت یه پروگرامر بسازی و...


48:

سلام به همه دوستان
من چند سوال در نوشتن برنامه در کد ویژن دارم .
1- ورودی رو از گیت نند هشت ورودی یا از دیپسوئیچ چه جوری می گیریم؟
من با زبان سی آشنایی دارم در اونجا برای گرفتن ورودی به تعداد بیشتر از 2 از حلقه هستفاده می کردیم خوب حالا اینجا هم باید از حلقه هستفاده کنیم یادستورات خاصی برای گرفتن ورودی هست.
2- منظور از مکمل کردن چیست ؟ یعنی اگه صفر باید یک بشه و اگه یک هست باید صفر بشه؟
آیا این دستور خاصی داره یا باید تک تک ورودی ها رو گرفت و مکمل کرد؟

ممنون میشم اگه یه جزوه یا کتاب معرفی کنید که دستورات کدویژن در اون نوشته شده باشه
اونوقت دیگه مزاحم شما نمی شم(در مورد بس کم این دستورات رو پیدا کردم اما در مورد کد ویژن چیزی پیدا نکردم)
من جزوه آقای امیر ره افروز رو دارم اما چیزی که من می خوام تو اون نیست.

وقت بخیر

49:

سلام.مي خواستم ببينم سايتي هست كه توش پروژه هاي avr با codevision باش.
مرسي

50:

سلام دوست من

واسه نوشتن برنامه ، انتقال به ميكرو ، و طراحي مدار به صورت عملي ، ابتدا نياز داري زبان برنامه نايشانسي رو بلد باشي .



مثلا شما زبان كدايشانژيون رو بلدي .

برنامه ي ساعت ديجيتال زياد سخت نيست .

نمونه ي آمادش رو اگه پيدا كنم ميتونم واست بزارم ، يه خودم بنايشانسم

وقتي برنامه رو نوشتي ، لازمه كه فايل كامپايل شده ( تبديل زبان كامپيوتر به زبان ماشين و آي سي ) رو به وسيله ي دستگاهي به نام پروگرامر به آي سي منتقل كني

پروگرامر ، شامل يه برد هستش كه آي سي رو روش برنامه ميدي ، با يه پورت متصل ميكني به ورودي كامپيوترت ، و بعد عمل پروگرام كردن رو انجام ميدي !

و بعدش هم آي سي رو تو مدار عملي برنامه ميدي .



البته خوب نوع پروگرامر بستگي به نوع آي سي به كار رفته شده هم داره .

AVR گزينه ي بسيار مناسبي هستش .



موفق باشي دوست من

سلام به همه دوستان
من چند سوال در نوشتن برنامه در کد ویژن دارم .
1- ورودی رو از گیت نند هشت ورودی یا از دیپسوئیچ چه جوری می گیریم؟
من با زبان سی آشنایی دارم در اونجا برای گرفتن ورودی به تعداد بیشتر از 2 از حلقه هستفاده می کردیم خوب حالا اینجا هم باید از حلقه هستفاده کنیم یادستورات خاصی برای گرفتن ورودی هست.
2- منظور از مکمل کردن چیست ؟ یعنی اگه صفر باید یک بشه و اگه یک هست باید صفر بشه؟
آیا این دستور خاصی داره یا باید تک تک ورودی ها رو گرفت و مکمل کرد؟

ممنون میشم اگه یه جزوه یا کتاب معرفی کنید که دستورات کدویژن در اون نوشته شده باشه
اونوقت دیگه مزاحم شما نمی شم(در مورد بس کم این دستورات رو پیدا کردم اما در مورد کد ویژن چیزی پیدا نکردم)
من جزوه آقای امیر ره افروز رو دارم اما چیزی که من می خوام تو اون نیست.

وقت بخیر
من يه جزوه واست پدا كردم ، دستور ها رو توضيح داده .

من خودم جواب خيلي سوال هامو ازش پيدا كردم /

به سايت
کد:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
يه سري بزن .

جزوات آموزشي داره .





سلام.مي خواستم ببينم سايتي هست كه توش پروژه هاي avr با codevision باش.
مرسي

کد:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

51:



آموزش سريع ميكرو كنترلر AVR

فهرست مطالب:
فيوز بيت ها، منابع کلاک وReset
آشنايي با زبان C
پروژه 1: فلاشر ساده
پروژه 2: کانتر يک رقمي با 7-Segment
پروژه 3: نمايشگر کريستال مايع (LCD)
پروژه 4: اسکن صفحه کليد ماتريسي
پروژه 5: نمايشگرهاي LED Dot Matrix
وقفه هاي خارجي
پروژه 6: آشکار ساز عبور از صفر
تايمر/کانتر صفر
پروژه 7: فرکانس متر ديجيتال
پروژه 8: کنترل موتورDC باPWM
عملکرد تايمر دو
پروژه 9: ساعت با وضعیت آسنکرون تایمر
تايمر/کانتر يک
پروژه 10: کنترل سروُ موتور
پروژه 11: توليد موج سينوسي
پورت سريال (RS-232)
پروژه 12: پورت سريال در ايشانژوال بيسيک
پروژه 13: ارتباط دهي USB با RS232
باس I2C (TWI)
پروژه 1۴: ارتباط با EEPROM هاي I2C
تبديل اونالوگ به ديجيتال
پروژه 1۵: اندازه گيري دما با سنسور LM35
مقايسه نماينده ي اونالوگ
SPI Bus
Mode هاي Sleep و تايمر Watchdog

دانلود :

کد:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
منبع :
AVR.IR

كتاب آموزش سريع مطلب MATLAB

لينك دانلود
کد:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

ساخت پروگرامر AVR در كمتر از 30 دقيقه :

دانلود
کد:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

52:

میکرو کنترلر AVR

میکرو کنترلر AVR به منظور اجرای دستورالعملهای قدرتمند در یک سیکل کلاک(ساعت) به اندازه کافی سریع هست و می تواند برای شما آزادی عملی را که احتیاج دارید به منظور بهینه سازی توان مصرفی فراهم کند.
ویژگیها:
* قابلیت دوباره برنامه ریزی کردن بدون احتیاج به اجزای خارجی
* ۱۲۸ بایت کوچک که به صورت فلش سکتور بندی شده اند
* داشتن مقدار متغیر در سایز بلوکه ی بوت (Boot Block)
* مطالعهبه هنگام نوشتن
* بسیار آسان برای هستفاده
* کاهش یافتن وقت برنامه ریزی
* کنترل کردن برنامه ریزی به صورت سخت افزاری و…



دانلود :
http://circuit.ir/download/ebooks/MICROCONTROLER%20LEARN.pdf
حجم: ۳۵۸ کیلوبایت


منبع :


کد:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

53:

برنامه نویسی و پیکره بندی میکروکنترلر AVR

این کتاب درباره میکرو کنترلر های AVR با معماری RISC از شرکت atmel می باشد که ساختار، معماری و هستفاده های این میکرو کنترولر را در نوع های مختلف اون مثال می زند.
شرکت Atmel یکی از سازندگان برتر مدارهای مجتمع “Integrated Circuit” یا همان (IC) می باشد.

RISC مخفف (Reduced Instruction Set Computer) به معنی مجموعه دستورات کاهش یافته رایانه هست، که یک معماری محبوب برای پردازنده های مدرن می باشد.
* توضیحات و دانلود در ادامه ی مطلب

این کتاب شامل بخش های زیر می باشد :

  1. معرفی و مطرح کردن کنترلرها و خصوصیات کنترلرهای AVR که فصل های ۱-۴ را به خود اختصاص می دهد.
  2. طراحی سیستم با هستفاده از کنترلر های AVR RISC.

    مطالبی در مورد طراحی سیستم، کدنویسی، نرم افزار و سخت افزار و ارتباط بربرنامه کردن AVR با دنیای خارجی که فصل های ۵-۹ را به خود اختصاص می دهد.
  3. مثالهای کاربردی نیز الباقی فصلها را به خود اختصاص می دهد، و نشان داده خواهد شد که چگونه میتوان از میکرو کنترلر های AVR در کاربرد های واقعی هستفاده کرد.

———————————————— —
نام کتاب : کتاببرنامه نویسی و پیکره بندی میکروکنترلر AVR
ترجمه و تالیف : سامان مشتاق
زبان : فارسی
تعداد صفحات : ۳۵
فرمت کتاب الکترونیک : pdf.*
- - - - - - - - - - - - - - - - - - - - - - - - -


کد:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

54:


55:

روش ساختن پروگرامر STK200 / 300

برای ریختن برنامه روی میکروی مورد نظر شما باید یه پروگرامر داشته باشید که پروگرامر های توی بازار معمولاً قیمتی بالای 10,000 تومان دارند پس بهتره خودتون یکی بسازید دو مدل پروگرامر ساده وجود داره که خودتون به راحتی می تونید اون رو بسازید.اولیش STK200 هست که خیلی ارزونه و ساختش خیلی خیلی راحته ولی ایمنی زیادی نداره و ممکنه شما پورت پرینتر کامپیوترتون رو از دست بدید پس بهتره که از مدل بالا تر اون یعنی STK300 هستفاده کنید.ولی من روش ساخت هر دوی اونا رو آموزش میدم.

STK200:
وسایل لازم:
هویه
سیم لخت کن
سیم لحیم
سوکت پرینتر به همراه کاور (که می تونید از مغازه های الکترونیکی تهیه کنید)
کابل Flat ده رشته (حداقل نیم متر بخرید چون باید از کامپیوتر تا بردتون برسه وگرنه مجبورید همیشه برید پشت کامپیوتر!!!)
هدر 2x5 (نری و مادگی)
پین هدر
برد سوراخدار کوچک

روش ساخت:
1- سیم های کابل فلت را از هم جدا کرده (یه ذره زیاد نه) یکم سرشو لخت کنید.
2- اولین سیم رو به پایه 7 سوکتتون لحیم کنید.
3- سومین سیم رو به پایه 10 سوکتتون لحیم کنید.
4- پنجمین سیم رو به پایه 6 سوکتتون لحیم کنید.
5- هفتمین سیم رو به پایه 9 سوکتتون لحیم کنید.
6- و سیم های دو،چهار،شش،هشت،ده رو به پایه های 21 تا 25 سوکتتون لحیم کنید.
7- در آخر پایه های 18 تا 25 سوکت رو با لحیم به هم وصل کنید.
8- پایه های 12 و 2 سوکت رو با سیم بهم وصل کنید.(لحیم هم بکنید.)
9- پایه های 11 و 3 سوکت رو هم با سیم بهم وصل کنید.(لحیم هم بکنید.)
10-کاور رو ببندید و هدر رو به ته کابل فلت وصل کنید و اون رو ببندید الاون باید یه چیزی مثل این داشته باشید.


11- هدر مادگی و 6 پین هدر رو به برد سوراخدار وصل کنید و مطابق شکل لحیم کنید.


وب تموم شد حالا شما یه STK200 دارید.
برای ساخت STK300 هم می تونید از شماتیک زیر بهره بگیرید.برای ساخت شماتیک هم به یه آی سی 74hc244 احتیاج دارید ساخت این هم فرقی با بالایی نمی کند.


56:

سلام من دچار مشکل شدم و شدیدا به کمک نیاز دارم
2 برنامه مکرو 8051 میخوام که اصلا مهم نیست موضوعش فقط باید سطح بالا باشه همین
متاسفانه وفت کافی ندارم برنامه به همراه فایل hex
لطفا در هر صورت جواب بدین ممنون
منتظر email هستم
با تشکر

57:

سلام دوست من .



تاپيك مخصوص ميكرو 8051 هم داشتيم ، ميتونستي اونجا درخواست بديد .



متوجه نشدم كه منظورت از سطح بالا چه نوع مداري بود .

تو چه رنجي شما پروژه ميخواهيد .

من در اولين موقعيت همينجا واستون آپلود ميكنم .

( البته 2 تا به قول خودتون سطح بالا )

منتظر باشيد .



58:

كتابخانه ي MMC براي ميكرو AVR به زبان C

دانلود:
کد:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

59:

آشنایی با AVR

ميكروكنترلرها به عنوان يك ابزارقدرتمند نزد مهندسان برق وكامپيوتر شناخته شده اند با توجه به كاربرد روز افزون ميكروكنترلرها در صنعت , شركت هاي سازنده زيادي اقدام به توليد اونها مي نمايند .
ميكروكنترلرهاي AVR ساخت شركت ATMEL از جمله معروف ترين و پركاربردترين ميكروكنترلرهاي موجود در بازار ايران مي باشند.تنوع اين ميكركنترلرها به مهندس طراح اين امكان را مي دهد كه براي هر پروژه از ميكركنترلر بهينه اون هستفاده كند .

به دليل مقبوليت اين ميكروكنترلرها شركت هاي زيادي اقدام به نوشتن نرم افزارهايي نموده اند كه امكان برنامه نايشانسي با زبان هاي سطح بالا را براي كاربر فراهم مي كنند .
ميكرو كنترلرهاي AVR به دسته هاي TINY و AT90S و ATMEGA تقسيم مي شوند .

از اين ميان ميكروكنترلرهاي نوع سوم قدرتمندتر و پركاربردتر هستند.با توجه به اينكه نوشتن برنامه به زبان اسمبلي بسيار وقت بر و دشوار هست, زبانهاي سطح بالا در اين زمينه كمك بسيار زيادي كرده اند .
زبان برنامه نايشانسي BASIC و C بيشترين هستفاده در برنامه نايشانسي ميكروها دارند.

ولي در اكثر كاربردها كدهاي بيشتري را نسبت به زبان برنامه نايشانسي اسمبلي توليد مي كنند.

ATMEL ايجاد تحولي در معماري , جهت كاهش كد به مقدار مينيمم درك كرد كه نتيجه اين تحول ميكروكنترلرهاي AVR هستند كه علاوه بر كاهش و بهينه سازي مقدار كدها به طور واقع عمليات را تنها در كلاك سيكل توسط معماري RISC انجام مي دهد .هدف ATMEL طراحي معماري بود كه هم براي زبان اسمبلي وهم زبانهاي HLL‌ مفيد باشد .
AVR ها به عنوان ميكروهاي RISC با دستورات فراوان طراحي شده اند كه باعث مي شود حجم كد توليد شده كم و سرعت بالا تري به دست آيد .

ميكروكنترلرها :

1-0) تفاوت ميكروكنترلر و ميكروپروسسور :

ميكروپرسسورها بر خلاف ميكرو كنترلرها فاقد RAM و ROM و پورتهاي I/O در درون خود تراشه هستند بنابراين براي اينكه بتوان سيستمي مبتني بر ميكروپرسسور را طراحي كنيم بايد RAM و ROM و پورتهاي I/O و تايمرها به اون اضافه شود.

با توجه به اينكه طراح مي تواند رايشان مقدار RAM و ROM و پورتهاي I/O اعمال نظر نمايد , اين سيستم ها انعطاف پذيري بشتري دارند.

وبه اونها سيستمهاي چند منظوره مي گايشانند.
ميكروكنترلرها شامل يك CPU به همراه مقدار ثابتي از RAM , ROM , پورتهاي I/O وتايمر هستند كه همگي اين اجزا در يك تراشه جاي داده شده اند و طراح سيستم نمي تواند يك حافظه , I/O يا تايمر را بدون گسترش لازم از بيرون اضافه كند بنابراين ميكروكنترلرها انعطاف پذيري ميكروپرسسورها را ندارند .

1-1) كاربرد ميكروكنترلرها :

با توجه به اونچه كه فرموده شد ميكروكنترلرها براي كاربردهايي كه در اونها مشكل قيمت و حجم سيستم وجود دارد , مناسب هست زيرا اضافه كردن حافظه , پورت I/O تايمرها و مدار واسط لازم به ميكرپرسسور سبب افزايش قيمت وحجم سيستم مي گردد.

اما در ميكروكنترلر اين مشكل وجود ندارد.

ميكروكنترلرها به طور گستردهاي در توليد سيستمهاي تك منظوره به كار مي روند.

منظور از سيستم تك منظوره سيستمي هست كه از ميكروكنترلر يا ميكرپروسسور فقط براي يك كار هستفاده مي كند.مانند پردازنده درون يك موس كه تنها به منظور يافتن مكان اشاره گر موس و ارسال اون به PC برنامه ريزي شده هست.

اين سيستم ها در مقابل سيستمهاي چند منظوره برنامه مي گيرند.

كه نمونه بارز اون يك PC هست كه مي تواند براي كاربردهاي متعدد و گوناگوني همچون واژه پردازي , بازي هاي ايشاندئايشاني , سرايشانس شبكه و ...

مورد هستفاده برنامه گيرد.

اين توانايي PC در اجراي كارهاي گوناگون به دليل وجود سيستم عاملي هست كه نرم افزار كاربردي را در RAM بار مي كند تا PC بتواند اون را اجرا كند.

اما در يك سيستم تك منظوره تنها يك نرم افزار كاربردي موجود هست كه معمولا درROM نوشته مي شود.

چند نمونه از وسايلي كه در ساخت اونها از ميكروكنترلرها هستفاده شده هست , عبارت اند از : كنترل از راه دور تلايشانزيون , تلفن , دوربين فيلمبرداري , فاكس , چاپگر , دستگاه فتوكپي ,سيستم هاي حفاظتي , دزد گير و سيستم هاي كنترل صنعتي.
به طور كلي مي توان كاربرد ميكروكنترلرها را در طراحي مدارهاي كنترل و اتوما سيون خلاصه كرد .

1-2) ايشانژگي هاي اصلي يك ميكروكنترلر :

با توجه به گستردگي ميكروكنترلرها و شركتهاي سازنده اونها چگونگي انتخاب يك ميكروكنترلر براي كاربردي خاص , از اهميت فراواني برخوردار هست.بطور كلي ابتدا بايد نيازهاي سيستم و هزينه اونرا كاملا مشخص كنيم تا به كمك اونها بتوانيم انتخابي بهينه اجرا کنيم.

براي انتخاب يك ميكروكنترلر بايد موارد زير را در نظر بگيريم :
1- تعداد بيتهاي باس داده ميكروكنترلر كه مي تواند 8 , 16 ,‌ 32 بيت باشد.
2- بيشترين سرعت ميكروكنترلر.
3- توان مصرفي ميكروكنترلر.
4- نوع بسته بندي ميكروكنترلر (DIP , QFP , MLF , PLCC و...)
5- مقدار حافظه RAM و ROM‌ موجود در تراشه وقابل اضافه شدن به اون.
6- امكاناتي كه كاربر را در كار با ميكروكنترلر ياري مي نمايد , مانند اسمبلر در دسترس , عيب ياب , كامپايلر زبانهاي سطح بالا ( C و BASIC و ...

) , امولاتور وشبيه ساز.
7- قيمت ميكروكنترلر و در دسترس بودن اون .

1-3) ميكروكنترلر هاي AVR‌ :

در مباحث بالا با ميكروكنترلرها آشنا شديم حال در اين بخش ميكروكنترلرهاي 8 بيتي شركت ATMEL‌ را كه از ساختار RISC بهره مي برند معرفي مي كنيم .

اما پيش از اون تفاوت هاي ساختار RISC وساختار CISC را بيان مي كنيم .

1-4) ساختار RISC :

تا اوايل دهه 1980 , كليه پردازنده ها از ساختار CISC‌ هستفاده مي كردند.

در اين ساختار چندصد دستور طراحي شده بود كه اين دستورها كليه عمليات ممكن راپوشش ميداد.اين روش طراحي پردستور مشكلاتي همانند تعداد زياد ترانزستورها , پيچيدگي طراحي و ساخت مدار, وقت بري عمليات و گران بودن تراشه را به همراه داشت0 به همين دليل در اوايل دهه 80 ساختار جديدي به نام RISC ابداع شد .

برخي از ايشانژگي هاي ساختار RISC از اين قرارند :
1- اندازه دستورها در RISC بر خلاف CISC ثابت هست و اين امر كمك مي كند كه CPU‌ سريعتر دستور ها را ديكد نمايد .

2- RISC از روش STORE/LODE هستفاده مي كند.

در اين روش انتقال داده فقط از حافظه به رجيستر( LODE ) واز رجيستر به حافظه( STORE ) انجام مي شود و انتقال مستقيم از رجيستر به رجيستر و از حافظه به حافظه ممكن نيست .
3- تعداد رجسترها در RISC زياد هست .

همه پردازنده ها 32 رجستر 32 بيتي دارند
4- در RISC تعداد دستور ها كم هست و فقط دستورهاي پايه موجود هست و برنامه نايشانس و كامپايلر بايد دستورهاي ديگر را با اين دستور هاي پايه بسازند.

كم بودن تعداد دستورها باعث دشواري برنامه نايشانسي به زبان اسمبلي ( نسبت به پردازنده هاي CISC ) مي شود.

بنابراين از RISC در محيط هاي برنامه نايشانسي به زبانهاي سطح بالا مثل C هستفاده مي شود.

كم بودن تعداد دستورها همينطور سبب مي شود كه برنامه بزرگ شود و حافظه بيشتري را اشغال كند .
5- برتري اصلي RISC‌ در اين هست كه 95 % دستورهاي اون يك كلاك و بقيه فقط دو كلاك وقت مي برند كه اين امر باعث افزايش سرعت مي شود.ضمن اينكه در تعداد ترانزيستورها به دليل سادگي مدار صرفه جايشاني مي گردد.


6- بر خلاف پردازنده هاي CISC كه باس آدرس و داده در اون مشترك هست , در پردازنده هاي RISC‌ اين باس ها جدا جدا هستند :
الف) براي ورود و خروج داده (OPERAND) به CPU‌.
ب) براي دستيابي و آدرس دهي داده ( OPERAND ).
ج) براي حمل .OPECODE
پ) براي دستيابي و آدرس دهي OPECODE.

به اين روش ساختار HAVARD گايشانند .
7- چون CISC‌ تعداد زيادي دستور دارد روش هاي فراواني هم براي آدرس دهي دارد كه اجراي اين روش ها به وسيله ريز دستورهايي انجام مي شود .

پياده سازي اين ريز دستورها در CPU بيش از %60 ترانزيستورها را مصرف مي كند حال اونكه در RISC‌ ريز دستورها با هستفاده از روش Harvard توسط كمتر از 10% ترانزيستورها پياده سازي مي شود.
به طور كلي پردازنده هايي كه از ساختار RISC ريز دستورها بهره مند هستند در اكثر زمينه ها بر پردازنده هاي CISC برتري دارند اما مشكل RISC اين هست كه برنامه هاي MSDOS بر رايشان اون اجرا نمي شود , بنابراين از پردازنده هاي CISC براي ساخت PC هستفاده مي شود.

نمونه هايي از پردازنده هايي با ساختار CISC عبارتند از:
ميكروپروسسورهاي 80X86 ساخت INTEL‌ و 68X0‌ ساخت Apple Mclntosh‌ .

ميكروكنترلر 8051 هم از ساختار CISC هستفاده مي كند .

ايشانژ گي هاي ميكروكنتركرهاي AVR‌ :
1- ميكروكتنرلرهاي AVR از يك ساختار RISC‌ هستفاده مي كنند.

دستورها در اين ميكروكتنرلرها به گونه اي طراحي شده هست كه حجم برنامه كوچك شود حتي اگر به زبان اسمبلي ساخته شده باشد.

ساختار RISC با دستورهاي فراوان در اين ميكروكتنرلرها باعث كم شدن حجم برنامه و بالا رفتن سرعت مي شود.

AVR داراي مجموعه دستورات فراوان با 32 رجيستر عمومي هست كه همه اونها با ALU‌ در ارتباط هستند كه سبب مي شود دو رجيستر مستقل در يك دستور به طول يك كلاك در دسترسي باشند.

اين ساختار منجر به بهينه سازي كد و ده برابر سريعتر شدن اون نسبت به CISC مي شود.
2- ساختار بهينه I/O در اين ميكروكتنرلرها باعث كاهش نياز به اضافه کردن اجزاي خارجي مي شود .
3- ميكروكتنرلرهاي AVR ‌ داراي اسيلاتور داخلي , تايمر , UART و SPI درون تراشه هستند .
4- اين ميكروكتنرلرها داراي مقاومت UP – PULL دروني هستند .
5- AVR از تكنولوژي حافظهVOLATILE – NONوDENSITY HIGH برخوردار هست.
6- ميكروكتنرلرهاي AVR داراي تبديل A/D‌ , مقايسه كننده اونالوگ , تايمر WATCHDOG و قابليت مدولاسيون عرض پالس هستند .
7- حافظه هاي FLASH و EEPROM در اين ميكروكتنرلرها , قابليت برنامه ريزي شدن در داخل مدار را دارند(ISP ) .
8- حافظه FLASH از دو روش در داخل مدار , برنامه ريزي مي گردد.

يكي , توسط PROGRAMMER حافظه VOLATILE - NON و از طريق رابطه سريال SPI و ديگري به وسيله اجراي BOOT PROGRAM مي تواند از هر مدار واسطي براي ريختن برنامه بر رايشان حافظه FLASH هستفاده كند .
9- ساختار ميكروكتنرلرهاي AVR به گونه اي طراحي شده هست كه هم براي زبان اسمبلي وهم زبانهاي سطح بالا مفيد باشد.

بنابراين مي توان از زبانهاي سطح بالايي مثل C و BASIC هم در برنامه ريزي اين ميكروكتنرلرها هستفاده كرد كه اين امر برنامه نايشانسي را براي كاربران آسان مي كند .

60:

AVR
ساده ترين معماري ميكرو كنترلر، متشكل از يك ريز پردازنده، حافظه و درگاه ورودي/خروجي هست.

ريز پردازنده نيز متشكل از واحد پردازش مركز (CPU) و واحد كنترل (CU)است.

CPU درواقع مغز يك ريز پردازنده هست و محلي هست كه در اونجا تمام عمليات رياضي و منطقي ،انجام مي شود.

واحد كنترل ، عمليات داخلي ريز پردازنده را كنترل مي كند و سيگنال هاي كنترلي را به ساير بخشهاي ريز پردازنده ارسال مي كند تا دستورالعمل ها ي مورد نظر انجام شوند.

حافظه بخش خيلي مهم از يك سيستم ميكرو كامپيوتري هست.

ما مي توانيم بر پايه به كارگيري حافظه، اون را به دو گروه دسته بندي كنيم: حافظه برنامه و حافظه داده .

حافظه برنامه ، تمام كد برنامه را ذخيره مي كند.

اين حافظه معمولاً از نوع حافظه فقط خواندني (ROM) مي باشد.

انواع ديگري از حافظه ها نظير EPROM و حافظه هاي فلش EEPROM براي كاربردهايي كه حجم توليد پاييني دارند و همينطور هنگام پياده سازي برنامه به كار مي روند .

حافظه داده از نوع حافظه مطالعه/ نوشتن (RAM) مي باشد .

در كاربردهاي پيچيده كه به حجم بالايي از حافظه RAM نياز داريم ، امكان اضافه كردن تراشه هاي حافظه بيروني به اغلب ميكرو كنترلر ها وجود دارد.

درگاهها ورودي / خروجي (I/O )به سيگنال هاي ديجيتال بيروني امكان مي دهند كه با ميكرو كنترلر ارتباط پيدا كند.

درگاههاي I/O معمولاً به صورت گروههاي 8 بيتي دسته بندي مي شوند و به هر گروه نيز نام خاصي اطلاق مي شود.

به عنوان مثال ، ميكروكنترلر 8051 داراي 4 درگاه ورودي / خروجي 8 بيت مي باشد كه P3, P2, P1, P0 ناميده مي شوند.

در تعدادي از ميكرو كنترلر ها ، جهت خطوط درگاه I/O قابل برنامه ريزي مي باشد.

لذا بيت هاي مختلف يك درگاه را مي توان به صورت ورودي يا خروجي برنامه ريزي نمود.

در برخي ديگر از ميكروكنترلرها (از جمله ميكروكنترلرهاي 8051) درگاههاي I/O به صورت دو طرفه مي باشند.

هر خط از درگاه I/O اين گونه ميكرو كنترلرها را مي توان به صورت ورودي و يا خروجي مورد هستفاده برنامه داد .

معمولاً ، اين گونه خطوط خروجي ، به همراه مقاومتهاي بالا كش بيروني به كار برده مي شوند.








میکرو کنترلر AVR به منظور اجرای دستورالعملهای قدرتمند در یک سیکل کلاک(ساعت) به اندازه کافی سریع هست و می تواند برای شما آزادی عملی را که احتیاج دارید به منظور بهینه سازی توان مصرفی فراهم کند.

میکروکنترلر AVR بر مبنای معماری RISC(کاهش مجموعه ی دستورالعملهای کامپیوتر) پایه گذاری شده و مجموعه ای از دستورالعملها را که با 32 ثبات کار مینمايند ترکیب می کند.

به کارگرفتن حافظه از نوع Flash که AVR ها به طور یکسان از اون بهره می برند از جمله مزایای اونها هست.

یک میکرو AVR می تواند با هستفاده از یک منبع تغذیه 2.7 تا 5.5 ولتی از طریق شش پین ساده در عرض چند ثانیه برنامه ریزی شود یا Program شود.

میکروهای AVR در هرجا که باشند با 1.8 ولت تا 5.5 ولت تغذیه می شوند البته با انواع توان پایین (Low Power)که موجودند.

راه حلهایی که AVR پیش پای شما می گذارد، برای یافتن نیازهای شما مناسب هست:

با داشتن تنوعی باور نکردنی و اختیارات فراوان در کارایی محصولات AVR، اونها به عنوان محصولاتی که همیشه در رقابت ها پیروز هستند شناخته شدند.در همه محصولات AVR مجموعه ی دستورالعملها و معماری یکسان هستند بنابراین وقتی که حجم کدهای دستورالعمل شما که برنامه هست در میکرو دانلود شود به دلایلی افزایش یابد یعنی بیشتر از گنجایش میکرویی که شما در نظر گرفته اید شود می توانید از همان کدها هستفاده کنید و در عوض اون را در یک میکروی با گنجایش بالاتر دانلود کنید.



توان مصرفی پایین:

* توان مصرفی پایین اونها برای هستفاده بهینه از باتری و همچنین کاربرد میکرو در وسایل سیار و سفری طراحی شده که میکروهای جدید AVR با توان مصرفی کم از شش روش اضافی در مقدار توان مصرفی ، برای انجام عملیات بهره می برند.
* این میکروها تا مقدار 1.8 ولت قابل تغذیه هستند که این امر باعث طولانی تر شدن عمر باتری می شود.
* در میکروهای با توان پایین ، عملیات شبیه حالت Standby هست یعنی میکرو می تواند تمام اعمال داخلی و جنبی را متوقف کند و کریستال خارجی را به همان وضعیت شش کلاک در هر چرخه رها کند!

نکات کلیدی و سودمند حافظه ی فلش خود برنامه ریز:

* قابلیت دوباره برنامه ریزی کردن بدون احتیاج به اجزای خارجی
* 128 بایت کوچک که به صورت فلش سکتور بندی شده اند
* داشتن مقدار متغیر در سایز بلوکه ی بوت (Boot Block)
* مطالعهبه هنگام نوشتن
* بسیار آسان برای هستفاده
* کاهش یافتن وقت برنامه ریزی
* کنترل کردن برنامه ریزی به صورت سخت افزاری

راههای مختلف برای عمل برنامه ریزی:

موازی یا Parallel :

* یکی از سریعترین روشهای برنامه ریزی
* سازگار با برنامه نویس های(programmers) اصلی



خود برنامه ریزی توسط هر اتصال فیزیکی:

* برنامه ریزی توسط هر نوع واسطه ای از قبیل TWI و SPI و غیره
* دارا بودن امنیت صد % در بروزرسانی و کدکردن



ISP:

* واسطه سه سیمی محلی برای بروزرسانی سریع
* آسان و موثر در هستفاده



واسطه JTAG :

* واسطه ای که تسلیم قانون IEEE 1149.1 هست و می تواند به صورت NVM برنامه ریزی کند یعنی هنگام قطع جریان برق داده ها از بین نروند.استفاده از فیوزها و بیتهای قفل.
* بیشتر برای دیباگ کردن اونچیپ و به منظور تست هستفاده می شود

61:

مقايسه avr با 8051

مقایسه ما با تمام میکروهای 8 بیتی هست یعنی در مجموع میشه فرمود AVR یه رقیب قدرتمند برای بقیه میکروهای قوی هست و یه انقلاب بزرگ هم به شمار میره.

هنوز هیچ میکرویی به سرعت بالای AVR در محاسبات دست پیدانکرده .در ضمن AVR قادره که محاسبات 16 بیتی رو هم انجام بده.

شهار ATMEL هم اینکه شما پول یه میکرو 8 بیتی رو میدید ولی میتونید از قایلیتهای یک میکرو 16 بیتی هستفاده کنید.
AVR از معماری RISC با تعداد دستورالعمل بالا بهره میبره که دربین میکروها کم نظیر هست.

اکثر دستورالعمل های اون باوجود زیاد بودن تعداد دستورالعملها در یک سیکل انجام میشه.
این میکرو از مدهای کاهش توان به خوبی بهره برده و تایید نماينده اون زیاد بودن مدهای کاهش توان اون و هستفاده از تقسیم کلاک به صورت نرم افزاری هست که در کمتر میکرویی دیده میشه.
AVR حتی برعکس میکروهای دیگه هیچ تقسیم کلاکی انجام نمیده(مثلا 8051 کلاک رو بر 12 و PIC که یه میکرو قدرتمند هست کلاک رو بر 4 تقسیم میکنه).

این امر که AVR کلاک رو تقسیم نمیکنه موجب کاهش مصرف انژی و افزایش MIPS شده.

تکنولوژی بکار رفته در AVR موجب شده که حتی میتوان از اون در محیط های صنعتی و پر نویز براحتی از اون هستفاده کرد(به فرموده خود ATMEL والا هنوز خودم یه تست دقیق انجام ندادم ولی اون رو با یه فیبر یه رو و با یه کابل LCD تقریبا 20 سانتی و یا هستفاده از باتری ماشین در کنار شمع پیکان غیر انژکتوری تست کردم ولی فقط در فاصله تقریبا 5-6 سانتی از اون صفحه LCD قاتی میکرد ولی نمیدونم میکرو هم ریست میشد یا نه .در ضمن قسمت تغذیه فقط از یک 7805 تشکیل شده بود.

و این آزمایش هم برای خودم و هم برای چند تا از دوستانم که کارهای صنعتی انجام میدادن شفرمود آور بود).

اما به دلیل اینکه هنوز هیچ کسی اون رو تابه حال در محیط صنعتی تست نکرده و به دلیل اطمینان بالای PIC هیچ کسی دوست نداره اعتبار خودش رو به خطر بندازه.
یه جا یه مهندسه میفرمود توی یه محط صنعتی که حتی کامپیوتر ریست میکرده PIC به خوبی کار خودشو انجام میداده!!!!!!!!!!

در ضمن AVR مجهز به آخرین امکانات مثل تایمر واچ داگ و برون اوت دیتکتور و تبديل های ADC و PWM هست.
یکی از مهمترین بخشی که کمتر در هر میکرویی دیده میشه مقایسه نماينده اونالوگ با گین 1 و 10 و 200 و ..

هست که بسته به میکرو فرق میکنه.
این مقایسه نماينده میتونه تو ورودی تبديل ADC برنامه بگیره .

این بخش برای بعضی طراحان خیلی مهمه و اونا رو مجذوب خودش کرده.

62:

خانواده میکروکنترلرهای AVR شامل طیف گسترده ای از آی سی ها هست که از 8 پایه شروع و به 64 پایه ختم می شود.

اما در بین این طیف گسترده تعدادی هستفاده عمومی تری دارند مانند ATMEGA32 .

که در تمام مثالهای آورده شده از این آی سی هستفاده شده هست .

مشخصات سخت افزاری ATMEGA32 :

شکل ظاهری و پایه ها:

ATMEGA32 در سه نوع بسته بندی PDIP با 40 پایه و TQFP با 44پایه و MLF با 44 پایه ساخته میشود که در بازار ایران بیشتر نوع PDIP موجود میباشد .

ATMRGA32 دارای چهار پورت 8بیتی ( 1 بایتی ) دارد که علاوه بر اینکه بعنوان یک پورت معمولی میتوانند باشند کارهای دیگری نیز انجام میدهند .

بطور مثال PORTA میتواند بعنوان ورودی ADC (تبدیل ولتاژ اونالوگ به کد دیجیتال ) هستفاده شود که این خاصیت های مختلف پورت در برنامه ای که نوشته میشود تعیین خواهد شد .
ولتاژ مصرفی این آی سی از 4.5 V تا 5.5V میتواند باشد .
فرکانس کار هم تا 16MHz میتواند انتخاب شود که تا 8MHz نیازی به کریستال خارجی نیست و در داخل خود آی سی میتواند تامین شود .

فرکانس کار از جمله مواردی هست که باید در برنامه تعیین شود .

لازم به ذکر هست که این فرکانس بدون هیچ تقسیمی به CPU داده میشود .

بنابراین این خانواده از میکروکنترلرها سرعت بیشتری نسبت خانواده های دیگر دارند .
پایه ی شماره 9 نیز ریست سخت افزاری میباشد و برای عملکرد عادی آی سی نباید به جایی وصل شود و برای ریست کردن نیز باید به زمین وصل میشود .
پایه های 12 , 13 نیز برای هستفاده از کریستال خارجی تعبیه شده هست .


ساختار داخلی ATMGA32 :
برنامه ای که برای میکروکنترلر در کامپیوتر نوشته میشود وقتی که برای هستفاده در آی سی ریخته میشود ( توسط پروگرامر مخصوص اون خانواده ) در مکانی از اون آی سی ذخیره خواهد شد بنام ROM .

حال در ATMEGA32 مقدار این حافظه به 32KB ( 32 کیلوبایت ) میرسد .
در این آی سی مکانی برای ذخیره موقت اطلاعات یا همان RAM هم وجود دارد که مقدارش 2KB هست .
در RAM اطلاعات فقط تا وقتی که انرژی الکتریکی موجود باشد خواهد ماند و با قطع باتری اطلاعات از دست خواهند رفت .

به همین منظور در ATMEGA32 مکانی برای ذخیره اطلاعات وجود دارد که با قطع انرژی از دست نخواهند رفت .

به این نوع حافظه ها EEPROM فرموده میشود که در این آی سی مقدارش 1KB هست و تا 100,000 بار میتواند پر و خالی شود .

63:

نرم افزار مورد نیاز برای برنامه نویسی :
حال میخواهیم طرز نوشتن برنامه برای میکروکنترلرهای خانواده ی AVR را شروع کنیم .

پس برای اینکار نیاز به یک نرم افزار داریم که بتوانیم در اون برنامه ی خود را بنویسیم .

یکی از نرم افزارهای قدرتمند برای انجام دادن اینکار نرم افزاریسیت بنام Bascom AVR .

در این نرم افزار همانطور که از نامش معلوم هست برنامه باید بزبان Basic که زبانی با سطح بالا (HLL) هست نوشته شود .

همچنین این نرم افزار دارای شبیه ساز داخلی برای تست کردن برنامه نوشته شده هست که یکی از ویژگیهای این نرم افزار میباشد .

تحلیل برنامه

حال به توضیح تک به تک قسمتها میپردازیم :

۱:در قسمت معرفی آی سی از کلمه کلیدی $Regfile برای معرفی هستفاده شده هست .

این دستور به این صورت هست که باید بعد ازاون کلمه معرف آی سی مورد هستفاده را در جلوی اون وارد کنیم .

البته برای هر آی سی کلمه ی مخصوصی وجود دارد که برای ATMEGA32 باید کلمه ی M32def.dat را تایپ کرد .

البته باید توجه داشت که این کلمه باید داخل یک جفت کوتیشن ( گ + Shift ) برنامه گیرد :
$Regfile = “M32def.dat”

۲: در قسمت بعدی که تعیین فرکانس کاری هست کلمه کلیدی $Crystal باید نوشته شود و اونرا باید مساوی با فرکانس کار بر حسب هرتز برنامه داد :
$Crystal = 1000000

۳: حال به بخش معرفی سخت افزار رسیدیم .

در این برنامه چون پورت B باید بتواند جریان بیرون دهد و سخت افزار خارجی ای که همان LED هست را روشن کند بعنوان خروجی تعریف میشود .

همیشه برای معرفی سخت افزار از کلمه کلیدی Config اسفاده میشود .

پس برای خروجی کردن پورت B مینویسیم :
Config Portb = output

۴: چون در این برنامه نیازی به تعریف متغیری نبود به بخش برنامه اصلی میرویم و در این قسمت عددی را به پورت B خواهیم فرستاد تا طبق اون LED ها روشن شوند .

البته ذکر این نکته لازم هست که اگر بخواهیم عددی را در مبنای دودویی بنویسیم ابتدا باید &B را نوشته و بعد ععد مورد نظر را تایپ کنیم و همینطور برای نوشتن در مبنای هگز که &H تایپ میشود و اگر هیچکدام از کلمات ذکر شده را ننویسیم عدد در مبنای دسیمال محسوب میشود .

۵: در آخر برنامه نیز از کلمه کلیدی END برای مشخص نمودن پایان برنامه هستفاده شده هست .

LCD :
در کل دو نوع LCD وجود دارد .

یکی از اونها را LCD کارکتری گویند که فقط قابلیت نمایش حروف و اعداد و کارکترهایی همچون ؟ و ! و غیره را دارد و نوع دیگر LCD گرافیکی هست که قابلیتهای LCD گرافیکی بعلاوه ی نمایش تصویر در اون جمع شده اند .

هدف ما در اینجا کار با LCD کارکتری خواهد بود .

معرفی LCD کارکتری :
LCD های کارکتری خود به چند نوع دیگر از لحاظ اندازه تقسیم بندی میشوند .

که از LCD هایی با 1 سطر و 1 ستون آغاز میشوند تا اندازهایی مثل 4 سطر و 40 ستون که البته تمام اونها از 16پایه تشکیل شده اند.


برای راه اندازی LCD توسط AVR نیازی به دانستن جزئیات طرز کار LCD نیست .

برای کار با LCD علاوه بر پایه های تغذیه و CONTRAST ( تنظیم روشنایی ) که باید مانند شکل مداری پایین بایاس شوند نیاز به 6 پایه ی دیگر هست که عبارتند از پایه های :
RS , E , DB4 , DB5 , DB6 , DB7 .

تحلیل برنامه :

۱:برای تعیین نوع LCD از کلمات کلیدی Config و سپس اون Lcd هستفاده شده و اونها را مساوی نوع LCD مورد هستفاده برنامه میدهیم که در اینجا نوع مورد هستفاده دارای 2 سطر و 16 ستون میباشد.

پس بصورت زیر خواهیم نوشت :
Config Lcd = 16*2

۲: در مرحله ی بعد ترتیب وصل کردن پایه ها را معرفی خواهیم کرد و برای اینکار پایه هایی از LCD را که برای راه اندازی اون هستفاده میشود و قبلا نیز فرموده شده بود را مساوی پایه هایی از میکروکنترلر برنامه میدهیم که میخواهیم به اونها وصل شود و البته این نوع راه اندازی توسط AVR را که تنها با شش پایه صورت میگیرد را نوع راه اندازی PIN میگویند .

پس طبق سخت افزار نشان داده شده بصورت زیر خواهیم نوشت :
Config Lcdpin = pin , Rs = porta.0 , e = porta.1 , db4 = porta.2 , db5 = porta.3 , db6 = porta.4 , db7 = porta.5
( به علامت , بین بخشها دقت کنید .

)

۳: سپس انجام کارهای بالا که جزو بخش معرفی سخت افزار محسوب میشوند به سراغ برنامه اصلی میرویم که کار اون نمایش متن روی LCD هست و برای انجام اینکار از کلمه کلیدی LCD و در جلوی اون متنی که باید نمایش داده شود هستفاده میکنیم و باید توجه داشت که متن را باید داخل کوتیشن برنامه داد .

۴: در انتهای برنامه نیز END را مینویسیم .

نحوه ی کامپایل برنامه و پروگرام کردن IC

کامپایل برنامه نوشته شده :
سپس نوشتن برنامه باید اونرا کامپایل کرد تا اگر اشتباهی در تایپ کلمه ای وجود داشته باشد برای اصلاح اون اخطار داده شود و فایلهای از جمله فایل هگز که برای پروگرام کردن نیاز هست ابجاد گردند .

برای کامپایل برنامه همانطور که در تصویر بخش اول نمایش داده شده هست باید از دکمه ی F7 هستفاده کرد .

با انجام اینکار برنامه ی ما کامپایل خواهد شد .
پروگرام کردن IC :
سپس کامپایل برنامه نوبت به اون رسیده هست که با نحوه ریختن برنامه داخل IC یا باصطلاح پروگرام کردن آشنا شوید .

پس نیاز هست که یک دستگاه پروگرامر مختص به خانواده AVR داشته باشید .

برای پروگرام کردن میکروکنترلرهای خانواده AVR انواع مختلفی پروگرامر که از هستانداردهای خاصی پیروی مینمايند وجود دارد که مصرف عمومی تر را پروگرامهای نوع STK200/300 دارند که البته دارای مدار بسیار ساده ایست و برای پروگرام کردن از کابل LPT ( پرینتر ) هستفاده میکند و در بازار هم بیشتر این نوع پروگرامر یافت میشود .
هنگامیکه میخواهیم کار پروگرام کردن را شروع کنیم ابتدا باید پروگرامر را به کامپوتر وصل نموده و سپس توسط محیطی از نرم افزار Bascom AVR نوع اونرا برای کامپیوتر معرفی کنیم ( اینکار فقط یکبار انجام شود کافیست ) .

برای شناساندن پروگرامر به کامپیوتر از منوی Option گزینه Programmer را انتخاب میکنیم :

سپس انتخاب این گزینه کادر نمایش داده شده که در قسمت نمایش داده شده توسط خط قرمز نوع پروگرامر را انتخاب میکنیم :
سپس انجام تنظیمات بالا میتوان آی سی را پروگرام کرد .

به این صورت که
گزینه Program را انتخا ب میکنیم .

سپس انتخاب این گزینه کادر زیر باز خواهد شد که با کلیک روی آیکون مربوط آی سی پروگرام میشود .
همچنین دستگاههایی برای تست برنامه نوشته شده وجود دارند که روی اونها تمام وسایل مورد نیاز مانند LCD و Keypad و ...

برنامه دارد و کاربرمیتواند با سیم بندی ای که براحتی توسط کابلهای مخصوصی انجام میدهد پورتهای آی سی را به سخت افزارهای جانبی اتصال دهد و برنامه خود را مورد آزمایش برنامه دهد .

به این دستگاهها Emulator میگویند.

64:


65:

سلام
من کتابخانه ی AVR-DOS.lib رو میخواستم.
انگار پولیه...
کسی از دوستان نداره؟
ممنون.


66:

حقيقتش من چند پروژه با Avr مخصوصا ATmega32 به زبان C با كامپايلر Codevision انجام دادم و قصد دارم اين ميكرو كنتلر پر قدرت رو براي دوستاني كه علاقه دارند ، با ارائه مثال از پايه معرفي كنم.
اما اولش بايد بدونم كه چقدر اين موضوع طرفدار داره .
لطفا نظرتون رو براي شروع اين مبحث فراخوان كنيد.


67:


68:

اگه پروژه هاي بدرد بخور و سطح بالايي داري كه واقعا ممنون ميشيم اگه بزاري .


69:

سلام.می خواستم بدونم کسی هست که بتونه آموزش جامع کار با Bascom AVR رو بذاره یا اینکه کتابی در این مورد برنامه بده؟
اگه این لطفو بکنید واقعا ممنونتون می شم...


70:

كتاب ميكرو كنترلر هاي AVR از مهندس علي كاهه كتاب خوبيه! من كه با همين كتاب شروع كردم.

بعد كه حرفه اي تر شدي مي توني با كتاب هايي مثل پروژه هاي AVR و .

.

.

كاربرديش كني و ادامش بدي.
راستي e-book اين كتابه هم واسه دانلود هست.

اگه پيداش نكردي مي تونم لينكشو واست بذارم.


71:


72:

ممنون می شم اگه بذاری...


73:

كلي گشتم ولي متاسفانه فقط يك لينك دانلود واسش پيدا كردم كه اونم بسته شده!


ولي كتاب كميابي نيست! همه جا پيدا ميشه! بازم اگه پيدا نكردي مي توني اينترنتي بخري.

اين لينك يكي از فروشگاهاست:


مطمئن باش كتابيه كه ارزش خريدن رو داره!

74:


75:

خیلی ممنون دوست عزیز.مث که باید بخرمش...


76:


77:

آموزش پروگرم کردن برنامه بر روی میکروکنترلرAVR با کامپایلر Bascom-AVR

دانلود فايل
کد:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

78:

پروگرام كردن میكرو AVR و توضیح فیوز بیت های


دانلود:
کد:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید


79:

چرا AVR و Codevision

در حال حاضر در ایران سه نوع میکروکنترلر مطرح هستند 8051 ، PIC و AVR

8051 ضعیف ترین اونهاست که فقط بخاطر اینکه کسانی که پیش از این کار می کردند با این آشنا هستند، تمایل به یادگیری اون ندارند متاسفانه در دانشگاه ها عموما 8051 و یا Z80 (منقرض شده) آموزش داده می شود.حافظه بسیار اندکی نیز دارند
زبان برنامه نویسی اون اسمبلی و بسیار پیچیده هست و سخت هست و در چند سال آینده شاهده حذف کامل اون خواهیم بود

PIC به میکروکنترلرهای صنعتی شهرت دارند سرعتی 3 برابر 8051 (با فرکانس کاری یکسان) دارا هستند و انواع و اقسام ماژولها و امکانات اضافی را دارند، بصورت 8 ، 16 و تازگی 32 بیتی عرضه شده اند حافظه اونها از 8 کیلوبایت شروع می شود تا 8مگابایت (که من دیده ام) موجود هست.
یک انتخاب بسیار کامل هست ولی در ایران زیاد هستقبالی از اون دیده نمی شود شاید مشکلتر بودن کار با اون نسبت به AVR و قیمت بالاتر اون علت این موضوع باشد.

AVR آسان ترین و پرکاربردترین میکروکنترلر هست.

سرعتی معادل 12 برابر 8051 و در بسته های کوچک 8 پین تا 64 پین و بیشتر موجود هستند مشابه PIC تازگی مدل های 32 بیت هم تولید شده هست.
قیمت مناسب و سادگی برنامه ریزی و داشتن امکانات فوق العاده باعث شده هست که این خانوادگی موفق شود.


برنامه نویسی AVR


َبرای برنامه نویسی AVR از دو نرم افزار Codevision و Bascom هستفاده می شود که کمک زیادی به ما در تهیه برنامه می کند در اصل تمام کارهای سخت را انجام می دهد
Codevision از برنامه نویسی با C و Bascom از Basic هستفاده می کند به علت قویتر بود C اون را انتخاب می کنیم.
در Codevision مشابه برنامه نویسی C شرط ها و حلقه مانند if , while , for توابع ،آرایه ها و رشته ها ، یونیون ها ، اشاره گرها و ...

دیده می شود.

مقایسه برنامه نویسی اسمبلی با C

می خواهیم دو عدد 45 و 25 را با هم جمع کنیم
در اسمبلی
MOV R5,#19H
MOV R6,#2DH
MOV A,#00H
ADD A,R5
ADD A,R6

در Codevision

a=25+45;

80:


81:

سلام دوستان،
من دارم یه پروژه انجام میدم که البته واسه دانشگام بوده دفاعیه ش انجام شده،حالا میخوام کتابچه شو بنویسم هر چند اون نتیجه ای رو که میخواستم نداد اما خوب سپس اینکه کتابچه رو دادم میخوام تکمیلش کنم و اون موقع بیشتر مزاحمتون میشم....
حالا اگه میشه یه آدرس یا یه pdf یا هر چیزی که در مورد atmega 16 و همه پورت هاش باشه بهم معرفی کنید،اگه فارسی باشه ممنون میشم آخه وقت ترجمه کردن ندارم خیلی عجله دارم....
ممنون میشم.
در مورد این چند تا عنوان هم اگه کسی pdf ای داره اگه در اختیارم بذاره واقعا ازش ممنون میشم:
1.رگلاتور 7805
2.

LED
3.مقاومت 330 اهم
4.ترانزیستور TIP122
اینارو هم واسه همون کتابچه میخوام....
من منتظر لطف دوستان هستم.
موفق باشید.
یا حق.


82:

سلام
دوست عزیز این مطالبی که فرمودی میتونی در این سایت عضو بشی و هستفاده کنی
موفق باشی

[ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]

83:

سلام / خوب هستي انشالاه ؟

در مورد مگا16 كه كتاب AVR ره افروز فكر ميكنم منبع خوبي باشه .



حالا مقاومت 330 اهم چه pdf اي ميتونه داشته باشه دوست من ؟‌!
واسه ي نوع خاصي از ترانزيستور و رگولاتور منبع فارسي كمه ؛‌و اما در مورد‌ led مطلب سرچ كني كلي بهت نتيجه ميده .


84:

سلام ،ممنونم اما آدرسی که دادین اشتباه هستش اگه میشه چکش کنید،ممنون میشم.
یاحق.


85:

ارتباط سریال با میکرو کنترلرAVR از طریق RS232

» شرح :از طریق پورت سریال شما میتوانید تبادل اطلاعات با avr-microcontroller و كامپیوتر داشته باید.

تقریبا همه avr-microcontroller یک UART(Universal Asynchronous Reciever/Transmitter)داخلی دارند
(ناهنگام‌ همگانی دریافت نماينده/فرستنده‌) بر روی خود میکرو کنترلر (برای قبول at1200 attiny و برخی microcontrollers).

انتقال اطلاعات از میان microcontroller و كامپیوتر به صورت سریال و آسنکرون (مختلف‌ الوقت)‌ هست, سریال بدان معنی هست كه بیت ها یکی پس از دیگری ارسال می شوند , و آسنکرون‌ بدان معنی هست كه هیچ علامت‌ وقت‌(Clock) در ابتدا یا انتهای اطلاعات ارسال یا دریافت نمی شوند.

یک بایت‌ در 10 بیت ارسال می شود ،1 بیت شروع و 8 بیت اطلاعات و 1 بیت ایست ، همانطور که در شکل زیر می بینید.

این معیار هستاندارد ارسال ‌دادهها سریال نامیده می شود که معیار RS232" "نام دارد.طبق این موازین(" صفر "0) منطقی سطح ولتاژی میان) -15V) و(-5V) دارد و " 1 " منطقی بین(5V+) و سطح ‪(+15V) دارد.

avr-microcontrolers از 5ولت پالس سطح TTL برای ارسال اطلاعات هستفاده می نمايند.

بنابراین سیگنال ها در ابتدا می بایست که تبدیل شوند و این مى تواند به وسیله max232 ,امکان پذیر باشد و فقط به یک منبع ولتاپ 5 ولت نیاز دارد برای تبدیل علامت‌ سطح TTL به سطح rs232 و بلعكس .

نکته: مخابره اطلاعات از طریق‌ rs232 به دستگاهها می تواند حد اکثر تا 15 متر انجام گیرد .بیشتر از از به خاطر تلفات انرژی امکان پذیر نمی باشد.

» سخت افزار
در شکل زیر می توانید شماتیک اتصال یک مبدلRS232 را با یک AT میکروکنترلر مشاهده کنید.

» نرم افزار
از طریق نرم افزار BASCOM شما به راحتي مي توانید دستوراتتان را روی میکروکنترلر AVR بنویسید (نرم افزاری هست برای ارتباط با avr-microcontroller )زيرا بیس کام چند فرمان برای ارتباط سريال دارد.

براي مثال در زير برنامه ای وجود دارد, که با زحمت کمی می تواند روی میکروی شما بارگیری شود.

اين برنامه در ترمينال متن چاپ کرده هست.برای آزمایش برنامه شما می توانيد از شبیه ساز بیسكام يا hyperterminal, يا برنامه ای که در انتها برنامه داده شده هست هستفاده کنید.
تنظیمات برای پورت Com به شرح روبرو هستند:
: COM1,9600,N,8,1.
AVR BASCOM Code
کد:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
hex file of the AVR BASCOM Code
کد:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
کد:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

86:

نحوه اتصال کیبرد کامپیوتر به میکرو کنترلرهای AVR
در این مقاله آموزش نحوه ارتباط کی برد یا میکرو کنترلرهای AVR به طورکامل تحت یک فایل PDF جمع آوری شده هست که عبارت هست از :

نحوه ارسال دیتا از کی برد به PC
نحوه ارسال دیتا از PC به کی برد و نرم افزار


دانلود
http://sobhdam.com/dl/dl.php?file=kybrd_nasir_(
کد:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

87:

مدار فرستنده گیرنده مادون قرمز با avr و پروتکل uart و با برد 2 متر

این مدار فرستنده گیرنده مادون قرمز دارای برد تقریبا 2 متر بوده و عملکرد اون به این صورت هست که در مدار فرستنده،
ابتدا یک سیگنال پالسی 38 کیلوهرتز توسط آی سی تایمر 555 ساخته شده و با سیگنال دیتا ی گرفته شده از میکروکنترلر، nand می شود.

برای گیت nand از آی سی 74132 هستفاده شده که دارای گیت نند اشمیت تریگر می باشد.

خروجی گیت نند، همان سیگنال مدوله شده خواهد بود و در واقع سیگنال دیتا توسط این گیت روی سیگنال 38 کیلوهرتز سوار شده هست.

یعنی با عمل nand این دو سیگنال ، خروجی به صورتی هست که اگر در دیتا سطح 1 داشتیم در اون صورت یک سیگنال 38 کیلوهرتز به فرستنده اعمال می شود و اگر سطح صفر داشتیم به فرستنده هیچ سیگنالی اعمال نمی شود، در اینجا منظور از فرستنده، همان خروجی گیت نند هست که پس از تقویت جریان توسط ترانزیستور این سیگنال به دیود مادون قرمز اعمال می شود.
در قسمت مدار گیرنده نیز ابتدا یک گیرنده سه پایه مادون قرمز، سیگنال را دریافت کرده و با هستفاده از ----- 38 کیلو هرتز داخلی خود، سیگنال دیتا را از روی سیگنال 38 کیلوهرتز پیاده می کند.

از اونجایی که خروجی این گیرنده ها بصورت وارون می باشد در خروجی، یک وارونگر با هستفاده از ترانزیستور برنامه داده شده هست تا سیگنال اصلی ایجاد شود و سپس این سیگنال به میکروکنترلر اعمال می شود.
در این مدار با هستفاده از پروتکل ارتباطی uart سریال آسنکرون (بدون کلاک)، هر بار یک بایت از اطلاعات از فرستنده به گیرنده ارسال می شود.

بطوری که به عنوان مثال در این مدار، میکروی فرستنده هر یک ثانیه یک بار یک عدد 8 بیتی را بطور افزایشی از 0 تا 255 ارسال می کند و میکروی گیرنده به محض گرفتن عدد، اون را روی LCD نمایش می دهد و پس از نمایش دوباره منتظر دریافت اطلاعات می ماند.

که البته بایتی که ارسال می شود می تواند از یک کیبورد و یا هر ورودی دیگر گرفته شده باشد که در این پروژه ما یک بایت را بطور افزایشی و تقریبا هر یک ثانیه یک بار، ارسال کرده ایم.
هم چنین از روش هایی برای افزایش برد ارسال داده در این مدار هستفاده شده هست که عبارتند از: افزایش تعداد دیودهای مادون قرمز به دو عدد، افزایش جریان عبوری از دیودها تا تقریبا حداکثر مقدار ممکن (در اینجا حدود 85 میلی آمپر برای حالت اشباع ترازیستور تقویت نماينده، اندازه گیری شده هست)، و کاهش baud ارسال داده در ارتباط uart (سرعت انتقال اطلاعات کاهش داده شده هست تا دقت و برد ارسال داده افزایش یابد).
دقت کنید در صورتی که نام گیرنده شما با hs0038a2 تفاوت داشت در اون صورت برای مطلع شدن از ترتیب پایه های اون حتما به دیتا شیت خود همان گیرنده مراجعه کنید.
هم چنین اگر دوستان و متخصصان عزیز سوالی و یا پیشنهادی برای افزایش برد این مدار یا بهبود کارایی اون در طراحی دارند می توانند از طریق ایمیل و یا قسمت نظرات، پیشنهاد خود را مطرح نمايند تا مدار طراحی شده را با همکاری شما کامل تر کنیم.
این پروژه را می توانید در فایل فشرده زیر دانلود کنید که شامل شماتیک مدارات فرستنده و گیرنده در برنامه 7 proteus و فایلهای basic فرستنده و گیرنده برای کامپایلر bascom و هم چنین دیتاشیت گیرنده سه پایه مادون قرمز می باشد.

دقت کنید که فایل دانلود شده فشرده می باشد و باید با برنامه winrar از حالت فشرده خارج شود.

دانلود
http://www.sobhdam.com/index/images/down/infrared_with_uart_www.sobhdam.com.rar

88:

atmega32 , lcd با فركانس 1M كار نميكنه ولي با 8Mدرسته؟

89:

كسي ميتونه به من كمك كنه؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟ ؟؟؟؟؟؟؟؟؟؟
atmega32 , lcd با فركانس 1M كار نميكنه ولي با 8Mدرسته؟

90:

سلام ؛ دوست من یه مقدار شفاف تر توضیح بدید ؛ منظورتون دقیقا چی بود ؟

91:

من يك lcd 4*20 دارم برنامه وقتي ميكرو با فركانس 8 يا 4 پروگرام ميشه درسته يعني رايشان lcd كلمات درست نمايش داده ميشه
ولي وقتي ميكرو با فركانسM 1پروگرام ميشه كلمات رايشان LCD ميريزه به هم؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟ ؟
من براي پيدا كردن اشكال يك برنامه ساده براي نمايش يك كلمه رايشان LCDنوشتم باز همونطوري شد (با CODEVISION
با تشكر

92:

محدوده ی فرکانسی کریستال قابل هستفاده ؛ در مداراتی که از Atmega16V هستفاده شده 4 مگا هرتز هست و برای ATmega16L حدود 8 مگا .

شما از همون 4 مگا هستفاده کنید ؛ وقتی که مشکلی نداره چرا بهش 1 مگا هرتز اعمال میکنید .



برنامه ای که نوشتین برای راه اندازی LCD و نمایش متن رو روی LCD هستش ؟
اگر برنامتون با اشکال مواجهه بگید تا من بهتون برنامه بدم .


93:

براي كم كردن مصرف جريان atmega32 تو datasheet فرموده با فركانس 1M جريان كمتر ميشه من مجبورم مصرف رو كم كنم فركانس داخلي رو انتخاب كردم

94:

پروگرامر Ponyprog كه از نرم افزار خاص خود هستفاده ميكنه‌ ، براي خانواده هاي 8051 - AVR - PIC


دانلود مدار چاپي و شماتيك
کد:
http://www.electronics-lab.com/projects/mcu/009/Ponyprog.pdf
دانلود نرم افزار پروگرامر
کد:
http://www.lancos.com/e2p/V2_05/ponyprogV205a.zip
توجه :
۱- فقط خاطر نشان ميکنم که قطعاتی که با **U ** مشخص شده اند بای سوکت ای سی نصب گردد.


مثلا U1 سوکت ۲۰ پايه .................



۲- توضيح اما U2 ريگلاتور ۵ ولت بوده و حتما بايد 78L05 باشد نمی توان از ۷۸۰۵ معمولی هستفاده کرد.

جزئيات كامل نقشه پروگرامر :

Support 24C01, 24C02, 24C04, 24C08, 24C16 I²C Bus EEPROM
Support 24C32, 24C64, 24C65, 24C128, 24C256, 24C512 I²C Bus EEPROM
Auto detect 24XX EEPROM capacity
Support 24C325 and 24C645 I²C Bus EEPROM
Support Siemens SDE2516, SDE2526, SDA2546, SDA2586, SDA3546, SDA3586 EEPROM (as 24XX Auto)
Support AT17C65, AT17C128, AT17C256, AT17C512, AT17C010 I²C Bus EEPROM
Support Siemens SDE2506 EEPROM
Detect the bank roll over capability of some old 24XX EEPROM
Support AT90S1200, AT90S2313, AT90S2323, AT90S2343, AT90S4414, AT90S4434, AT90S8515, AT90S8535 Flash micro
Support AT90S2323, AT90S2343, AT90S2333, AT90S4433, AT90S4434, AT90S8535, AT90S8534
Auto detect AVR microcontroller type
Support the AVR microcontroller ATmega103, ATmega161, ATmega163, ATmega 323, ATmega128, ATmega8, ATmega16, ATmega64, ATmega32, ATmega162, ATmega169, ATmega8515, ATmega8535
Support the AVR ATmega44, 88, 168, 164, 324, 644, 640,1280, and 1281 (untested)
Support the AVR AT90can32, 64, and 128 (untested)
Support the AVR ATtiny12, ATtiny15, ATtiny26, ATtiny2313
Support the AVR ATtiny13, 25, 45, 85, 261, 461, and 861 (untested)
Read ATtiny12 and ATtiny15 Oscillator Calibration Byte
Write lock bits to protect the AVR micro from reading
Write both the Flash and EEPROM memory of the AVR micro at once
Support the AT89S8252 and AT89S53 micro
Support 93C06, 93C46, 93C56, 93C57, 93C66, 93C76, 93C86 Microwire EEPROM (C and LC series, the CS serie is not supported yet)
Support 93C13 (as a 93C06) and 93C14 (as a 93C46) Microwire EEPROM
Access microwire eeproms in either 8 and 16 bit organization
Improved support PIC 16C84/16F84 micro
Support PIC 16F873/874/876/877 and PIC 16F84A micro
Support PIC 16F873A/874A/876A/877A and PIC 16F627/628 micro (untested)
Support PIC 12C508/509 micro
Support PIC 12C671/672 micro (untested)
Support 25010, 25020, 25040 SPI EEPROM
Support 25080, 25160, 25320, 25640, 25128, 25256 Big SPI EEPROM
Support 25642 and 95640 Big SPI EEPROM
Support NVM3060 eeprom
Support MDA2061/MDA2062 eeprom
Support X2444/X2445 eeprom
Support S24H30 (untested)
Read/Write Intel hex format file as well as raw binary file
Read/Write Motorola S-record format file
Read/Write CSM format file
Features a custom E²P format file to store the EEPROM characteristics, an editable comment and memory content all together with CRC
Enhanced buffer edit, text and hexadecimal
Work with Windows95/98/ME and WindowsNT/2000/XP and Linux*
Reload file button
Fill buffer command
Security bits editing for AVR, AT89S and PIC
Serial number programming
Script files for batch programming
Improved speed with WinNT/2000/XP with a driver for direct I/O.



*Not all interfaces are supported in every operating system, for more informations loo

کد:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

95:

آموزش AVR به زبان C
دانلود
کد:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
آموزش کامل AVR ؛ مولف ، ره افروز
دانلود
کد:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

96:

من پروژه ام را تو بسکام نوشتن حالا میخوام تو پروتئوس شبیه سازی کنم
برای کامپایلش به هگز از کامپایلر بسکام هستفاده میکنم ولی اون موقع تو پروتئوس جواب نمیده از چه کامپایلری هستفاده کنم؟؟؟؟؟

97:

سلام .

پروتئوس با کامپایلر بیسکام باید جواب بده .

نسخه ی آخر بیسکام رو هستفاده کن ببین چی میشه .

در ضمن روی همین یه پروژه جواب نمیده یا کلا اینطوره ؟

98:

با عرض سلام :طراحي ALU با نرم افزار پروتئوس را ميخواستم.ممنون

99:

ايشالا بعد امتحاناتم منم ميام

100:


101:

سلام .

این رو ببین به دردت میخوره یا خیر

کد:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
شاد باشی

102:

با سلام یه اشکالی داشتم خیلی ممنون میشم اگه راهنمایی کنین

از پروگرامر stk200/300 هستفاده میکنم و میخوام یک کریستال ساعت رو به mega8 متصل کنم تنظیمات فیوز بیت رو cksel=1001 انتخاب کردم ولی دیگه پروگرامر ic رو نمیشناسه چه با کریستال و چه بدون اون .

هیچ حالتی هست که بشه اونرو شناسوند؟
با تشکر

103:

سلام کسی میدونه چطور میشه از طریق AVR و Modem اطلاعات پایه های میکرو رو به یه کامپیوتر فرستاد ؟

104:

سلام به همه .
به نظر من c .

میدونی چرا چون علم روز دنیا داره به سمت این زبان پیش می ره .

اگه اسمبل کار کنی بعداً مجبور میشی c هم یاد بگیری .

اسمبلی زبان سطح پایین و به زبان ماشین نزدیکتر .

یک کمی اولش درکش سخته ولی c به زبان ما انسانها نزدیکتره.


105:

سلام

من می خوام پروگرامر STK200/300 رو بسازم ولی درمورد نحوه کار و برنامه ای که میشه باهاش کار کرد چی زی نمیدون میشه یه کمکی بهم بکنید

106:

سلام

من روگرامر STK200/300 رو ساختم با برنامه PonyProg وقتی که دکمه ی prop رو میزنم Test OK رو میده و کالیبره هم همینتور ولی وتی می خوام پروگرم کنم پیغام Device missing or unkonuwn Device نمیدونم چی کار کنم خواهش میکنم سریع جواب بدین

خیلی ممنون

107:

سلام، من در مورد یه پروژه با میکرو نیاز به کمک دارم.

voice recorder.

این کدها رو دارم ولی کامپایل نمیشه.

اگه کسی بتونه کمک کنه ممنون میشم
کد:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

108:

سلام

من هر کاری میکنم نمیتون یه رشته رو با کمک دستور scanf و یا gets بگیر اگه میشه کمکم کنید

109:

من امروز 4 تا DotMatrix 8*8 به قیمت 1000 تومن گرفتم ولی طرز کارش با اونی که تو پروتئوس هست کاملا فرق میکنه چیکار کنم

کمکم کنید حیاطی هست

110:

سلام به همه
قبل از همه چيز بايد بگم من تازه واردم و گوشزد كنم كه اگه خواستين جواب بدين لطفا خيلي كلمات تخصصي به كار نبرين
فرق ميكرو كنترلر atmega16 باatmega8 چيه؟
كلا سؤالم اينه كه اين شماره ها(حالا نه فقط 16با8) با هم چه فرقايي دارن؟مثلا تو يه مداري كه بايد m16 بزاري اگه m8 يا m48 بزاري چي ميشه؟
من يه آموزش avr از سايت ايران ايشانج دانلود كردم حالا ميخوام برم ميكروكنترلر بخرم واسه همين اين سؤالو كردم.
راستي اگه بخوام پروگرامر بخرم،چي بخرم كه اگه زدم توكار ميكرو به درد همه ميكروها بخوره وبا بسكام جور باشه؟
خوب وارزونشو(با ذكر قيمت اگه ميدونيد) معرفي كنيد وبگيد موقعي كه خواست بخرم چي بايد بگم؟
با تشكر از صاحبان فن

111:

سلام .
خوب هستين ؟

يك ميكرايشان Atmega16 با مدل Atmega32 تفاوت زيادي ندارند .

تفاوت اصلي در مقدار حافظه هردوست .

كه به ترتيب 16 و 32 كيلو بايت حافظه ي فلش دارن .

و بقيه ي امكانات جانبي و فركانس كاري و ولتاژ كاري و EEPROM و SRAM و .

.

.

مشابه هستند .



مدل هاي جديد پروگرامر زياد اومده تايشان بازار .

پروگرامر قيمت بالا هم داريم .

ولي شما وقتي بري بازار بگي چي ميخواي اونا بهتر ميتونن راهنماييت كنند .

پروگرامر هاي USBASP وSTK200300 مدل هاي خوبي هستند .


112:


113:

سلام .من تو یه مشکل افتادم .یه برنامه می خوام با بسکام بنویسم که بتونه کدی رو که ریموت کنترل مثلا تلویزیون یا هر ریموتی میفرسته رو برام رو ال سی دی نمایش بده ولی هر کار میکنم نمیتونم.
تورو خدا یکی بهم هر چه سریعتر کمک کنههههههههههههههههههههههه هههه.

114:

سلام دوستان
من برای برنامه نویسی avr از نرم افزار bascom و زبان بیسیک هستفاده می کنم .
من یک متغیر به نام number از نوع integer دارم و میخوام این متغیر رو به یک متغیر دیگر از نوع string وصل کنم
مثلا :
number = 12
و میخوام روی lcd نشون بده :
i have 12 apple
و 12 رو از روی number بخونه .
لطفا کمکم کنید .


115:

با سلام
من یک برنامه با زبان c نوشتم که اعدادی را که از صفحه کلید می خواند روی سون سگمنت نشان دهد حال با یک مشکل روبرو شده ام من می خواهم یک عدد چهار رقمی را از صفحه کلید روی 4 سون سگمنت نشان دهد ولی نمی دونم ورودی صفحه کلید را چطوری بگیرم و در یک متغیر بریزم و سپس عملیاتی که باید روی این متغیر اجرا کنم را اجرا کنم خواهش می کنم مرا راهنمایی کنید بر نامه هم در زیر آورده ام
کد:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
با تشکر

116:

یعنی کسی نیست جواب منو بده

117:

سلام.
ببخشید من جواب چند تا برنامه می خواستم که با هستفاده از میکرو کنترلرATMEGA8 و نرم افزار های BASCOM برای طراحی برنامه به زبان BASIC و شبیه ساز PROTEUS برایSIMULTION سخت افزار انجام داده و صحت اونها را تایید کنید:
1.با هستفاده از seven segment کاتد مشترک برنامه ای بنویسید که اعداد 0 تا 9 را بنویسد
2.با هستفاده از seven segment کاتد مشترک برنامه ای بنویسید که اعداد 0 تا 9 را بنویسد
3.با هستفاده از یک دو کلید یک LED را خاموش و روشن کنید.
4.

برای تشخیش وجود گازهای مضر در یک محیط صنعتی سنسوری نصب شده که در صورت وجود گاز مضر سیگنال خروجی ALARM را فعال (1) کند و در غیر این صورت خروجی ان غیر فعال (صفر) باشد.ای نسنسور بعضا بطور غلط فراخوان وجود گاز مضر نموده و گاهی اوقات وجود گاز مضر را تشخیص نمی داد.برای بهبودی این سیستم،مهندسین تصمیم گرفتند بجای یک سنسور،از سه سنسور هستفاده نمايند و بر پايه خروجس مشابه دو عدد از سنسورها ،با اعتماد بیشتر فراخوان وجود یا عدم وجود گاز را باور کند(و در صورت نیاز اقدام به عمل نمایند).مداری منطقی طراحی کنید که خروجی سنسور ها را در وضعیت بهینخ جدید تولید نماید.این خروجی را به یکی از پ.رتهای میکرو کنترلر AVR ATMEGA8 وصل نموده و برنامه ای در محیط BASCOM بنویسید که در صورت وجود گاز مضر از طریق PORT B سیگنال ALARM را برای کاربر تولید نماید .ضمنا کاربر باید بتواند با فشردن یک کلیدALARM را RESET کند.
5.

ساعتی نرم افزاری طراحی نموده و بسازید که وقت را روی LCD سیمولاتور بشکل زیر نمایش دهد:
در سطر اول LCD پیغام"Current Time Is:" و در سطر دوم LCD پیغام HH:MM:SS .در جاییکه HH برای نمایش ساعت،MM برای نمایش دقیقه و SS برای نمایش ثانیه در نظر گرفته شده هست.لازم به ذکر هست که کاربر باید بتواند تنظیمات لازم را روی ساعت اجرا کند.
اگه هر کسی جواب حتی یکی از سئوالها رو یاد داره لطفا برای من ایمیل بزنه.
خواهش می کنم.
خیلی حیاتیه.

تو این چند روز اخیر باید تحویل هستادم بدم.


118:

سلام
برنامه ای می خواستم که جمله روی lcd نشون بده به صورتی که جمله از سمت راست وارد شه و از سمت چپ خارج شه.برنامه ای که خودم نوشتم فقط جمله راچاپ می کنه جمله حرکت نمی کند.
ممنون

119:

سلام
من برای درس زبان ماشین ( رشته ی کامپیوتر) با کامپیوتر به برنامه نوشتم که از طریق پورت پرینتر 8 تا LED رو که از طریق دیتا های پورت پرینتر وصل میشه رو روشن کنم
من مدار رو هم درست کردن یه بافر 74hc244 هم کار گذاشتم ولی وقتی به پورت پرینتر وصل میکنم کار نمیکه ، یعنی بعضی از چراغا روشن میشه و تا به یه قطعه از برد دست میزنی همین 2-3 تا LED هم که روشن میشد خاموش میشه
من پایه های دیتا رو درست وصل کردم ولی پایه ی Vcc که فقط یه پایه داره ، آیا همین یه پایه به برق 5v وصل میشه؟؟؟

و پایه ی 2و19 چی میشن؟
ممنون میشم اگه بتونید راهنمایی کنید تا مشکلم برطرف بشه، سریع

مدار فقط شامل همین IC و LED و مقاوت 330 هست
من بدون IC هم وصل کردو ولی هستادفرمود که چون پورت جریان نداره ، باید جریان بربرنامه کنی

تشکر

120:

سلام
چرا lcd گرافیکی بهتر از اسیلسکوپ هست؟
چرا کار با lcd گرافیکی بهتر از اسیلسکوپ هست؟
ممنون

121:

خوب ميتوني تك تك حروف جمله رو از اولين حرف ( با فاصله در سمت چپ - مثلا 15 تا فاصله در LCD16x2 ) بنايشانسي بعد پس از تاخير ، حرف بعد رو هم اضافه كني و يكي از تعداد فاصله ها كم كن و دوباره همينطور الي آخر ...


122:

اينجا چه خبر شده ؟؟؟ چرا همه تاپيكها يكي شدن ؟
خوب اولي:
هم ميتوني عددها رو تايشان 4 متغير جدا ذخيره كني و بعد هر كدومو جدا تايشان 7seg نشون بدي، هم ميتوني اعداد رو در يك متغير بريزي ( int ) :
اولين رقم رو بريز تو متغير .

حالا ( متغير + ( رقم دوم * 10 ) ) و حاصل رو بريز در متغير .

همينطور سومين رقم رو ضرب در 100 و جمع با متغير و دوباره در متغير بريز و چهارمي هم در 1000 و ...

براي نمايش هم دوباره از آخرين رقم 7seg ( چهارمين رقم نمايش ) ، متغير رو تقسيم بر 1000 كن و جواب رو در 7seg آخري نشون بده .

حالا متغير رو منهاي ( رقم چهارم * 1000 ) كن و حاصل رو تقسيم بر صد كن و جواب رو در 7seg سوم نشون بده.

براي دومين رقم هم متغير رو منهاي ( ( رقم چهارم * 1000 ) + ( رقم سوم * 100 ) ) بكن و بعد حاصل رو تقسيم بر 10 كرده و در 7seg دوم نشون بده.

در رقم اول هم متغير رو منهاي ( ( رقم چهارم * 1000 ) + ( رقم سوم * 100 ) + ( رقم دوم * 10 ) ) بكن و بعد حاصل رو در 7seg اول نشون بده.


( الان همه رو قشنگ متوجه شدي نه ؟ كل اينايي كه فرمودم همون قانون يكان ، دهگان ، صدگان رياضي اول ابتدايي هست كه من از اين روش هستفاده ميكنم ! )

حالا دومي:
asire-dell
چهار حالت داره : خيلي ببخشيدها يا هستادتون شما رو سر كار گذاشته ، يا خودش اين برنامه ها رو ميخواد ولي بلد نيست ، يا شما درستونو خوب نخوندين ، يا شيطوني كردين هستاد شما رو جريمه كرده !
گزينه سوم و چهارم صحيح ميباشد
شوخو نموديم اينو هيچكس جواب نميده چون بيشتر تئوريه و آدم پير ميشه همه رو بنايشانسه ، منم كه BASCOM كارنميكنم ديگه بدتر ، اصلا اون دو نمره رو بي خيال، 18 بگير !

يه لحظه استقامت كن، فرمودي هستادتون پول ميده ؟

سومي:
Elahe_11111
يه راهشو فرمودم قبلا ...

اينم چهارمي:
iraj_astara
تو آستارايي هستي ؟ خوب ، پايه هاي 74HC244 به شكل زير هستن.

راست ورودي و چپ خروجي :

فعال كننده : پايه شماره 1 اگر صفر باشد چهارتا بافر زير فعال ميشوند :
2 => 18
4 => 16
6 => 14
8 => 12

فعال كننده : پايه شماره 19 اگر صفر باشد چهارتا بافر زير فعال ميشوند :
11 => 9
13 => 7
15 => 5
17 => 3

پايه 20 به مثبت 5 ولت وصل ميشه و پايه 10 به منفي ( زمين ).

پايه هاي پورت پرينتر رو نميدونم بايد از يه كتاب نگاه كرد.

اما پنجمي:
Elahe_11111
NOT RESPONDING ! CAUTION ! FAILURE ! نامفهوم ! لا تفهيم ! NIO CORDOJO ! NEI MININGLES

اسكوپ كه با lcd گرافيكي فرق ميكنه ، كي فرموده glcd بهتره ! شايد چون براي چشم مضر نيست، و اينكه هموقت ميشه چند نقطه رو روشن كرد.

درسته ديجيتاله ولي از نظر سرعت به پايه اسكوپ نميرسه.

مگر اينكه بخوايم يه اسكوپ با كامپيوتر بسازيم ( CPU قايشان ) كه خروجيش به GLCD وصل بشه كه اصلا نيازي نيست ، مانيتور هست كه !
RESTART ! SYSTEM HIBERNATION UP !
واقعا وقتي به اسم كاربرا نگاه ميكنم خندم ميگيره :
آرام جان گل - اسير دل - الهه يازده هزار و صد و يازده ! - ايرج آستارا - خودم

123:


124:

سلام دوست من .


چون تاپيك مرجع داريم واسه اين بحث ها ؛ تاپيك هايي كه بدون توجه ايجاد ميشن رو بايد ادغام كنيم .

ممنون.


125:


126:

خوب با اجازه اساتيد ما هم سوالي بپرسيم كه مدتهاست در ذهن داريم :
در CodeVision ساختار برنامه را بصورت زير مينايشانسيم و بدون خطا كامپايل هم ميشود ولي نميدانيم درست هست يا غلط ، و در پروتئوس ورژن 6.5 Error ميدهد :

اين برنامه :

کد:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
اين هم ارور سپس لود كردن در پرو تئوس :

............
Building circuit...
Instantiating SPICE models...
[U2] AVR model release 6.4 SP0.
[U2] Loaded 512 bytes of persistent EEPROM data.
ERROR: [U2] Must specify file extension for PROGRAM property.
Warning: [U2] No program code loaded.
[DSIM] BOOT Error.
Real Time Simulation failed to start

Real Time Simulation FAILED.

جواب بدينا ! داش پيام خواهش !

127:

خوب، جواب خودم اينه كه تابعها رو فقط قبل از main بصورت كامل تعريف ميكنيم نه در پايان اون !

128:

سلام
من کل سایت را درمورد یه پروژه avr گشتم ولی چیزی که میخواستم پیدا نکردم
من یه برنامه میخوام اگر کمکم کنید خیلی ممنون میشم
1- وقتی از ورودیبه عنوان پیش فرض داشته باشد(24ساعته)
2در وقت خاصی (مثلا 8 صبح) هر روز سوییچ عمل کندبه شرط اینکه:

1.

به وسیله یک کلید وقت عمل سوییچرا در 5 محدوده خاص برنامه دهیم:
1-5ثانیه
2-10ثانیه
3-15ثانیه
4- 20ثانیه
5-25 ثانیه
قابلیت این را داشته باشد که در صورتی که تمام 5 کلیدوصل بود جمع مدت وقت اونها سوییچ عمل کند
اگر میتونید کمک کنید دریغ نکید

129:

ببخشيد دوست عزيز ، درخواستها كه زياد هستن ، ولي معمولا رايشان مطالب آموزشي و رفع اشكال و ...

كار ميكنيم اما بعضي ها درخواستهاي كاربردي دارن كه اگه كسي چنين چيزي بخواد ولي بلد نباشه ، بهتره از كسي كه كارش ساخت مدارات سفارشيه بخواد.

البته اينها به صورت پروژه آماده از قبل جمع آوري شدن ولي طراحي مدار جديد كار سختيه چون يكم بايد روش وقت گذاشت و الانم چيزي كه كمه وقته ! من هم Dial Up هستم ديگه بدتر !

البته بعضيها پروژه هاي درسي يا تمريناتي كه هستاد كلاس ازشون خواسته ، درخواست ميكنن و حتي روش فكر هم نميكنن ...

كه اين باعث ميشه چيزي ياد نگيرن و من اينو توصيه نميكنم.

حالا شما يا مورد اول هستين يا دوم و يا سومي كه نميدونم ...

توضيح كلي:
اما اين مدار بايد اول يك تايمر (16 بيتي) داشته باشه ، بهتره يك كريستال 32768Hz بين پايه هاي TOSC1 و TOSC2 برنامه بديم تا تايمر با اون كار كنه ( دقيق تر بشه ) .

تايمر داراي وقفه باشه و وقتي مقدارش به 32768 رسيد ( 1 ثانيه ) وقفه فعال بشه ، سپس يك واحد به متغير X اضافه كنيم و وقتي متغير X به 3600 رسيد ( 1 ساعت ) يك واحد به متغير ديگري مثلا Y اضافه كرده و متغير X را صفر ميكنيم.

همينطور وقتي Y به 24 رسيد صفرش ميكنيم.



اما خارج از وقفه تايمر ، در برنامه اصلي كليدهاي ورودي و صفحه نمايش خروجي را ايجاد ميكنيم.

عدد Y (ساعت) را در صفحه نشان ميدهيم.

وقتي عدد Y به 8 رسيد خروجي رله اي را فعال كند و ...

ورودي ها هم مقدار تاخيري ايجاد كنند و در متغير ديگري بريزند تا سپس اون رله دوباره خاموش شود.



كلا اين مدار تايمر طرفداران زيادي داره ( بين غير از رشته هاي الكترونيك ).

اگه وقت كنم شايد يه مدار تايمر قابل تنظيم طراحب كنم و بذارم تايشان تاپيك پروژه ها.

نگاه كن قاط زدم طراحب

اسم ساندايشانچي هم بذار ساندايشانچ هاي خوشمزه يا پيشرفته تر انعكاس معده

130:


131:

سلام
با تشکر از توجهتون
1- من نمی دونم جز کدوم یکی از این سه گروه هستم ولی خیلی تازه کارم و ضمنا بصورت آماتور (اصلا ربطی به رشته من نداره)
2- اگر وقت کنی این مدار را طراحب کنی که خیلی عالی میشه
3- از پیشنهاد اسم ساندویچی ممنون
4- یه تشکر براتون خیلی کمه
موفق باشید

132:


133:

اكه شروعكنيد ميتونه خيلي به درد بخور باشه

134:


135:

اصلا حواسم نبود ، يه مدت حالم گرفته بود از يه چيزايي ...

خوب سعي ميكنم اين تايمره رو بزنم بزارم اينجا تا آقا پيام فيتيله پيچش كنه فقط اگه اونتي منو ضربه فني نكنه !

ئه ، بينم داش ، يعني چيز آبجي تيفا ؟! ئه ؟

تايمرو طراحب ميكنم .


136:


137:

سلام دوستان

پروژه ی لیسانسم راجع به ساخت یه تابلو روان سه رنگه.

می خواستم راهنماییم کنین و اگه میشه کد C این پروژه رو واسم پیدا کنین .

خودم خیلی گشتم.

مرسی
تو قسمت پروژه نوشتم این درخواستمو اما کسی جواب نداد.

خواهش می کنم هستثنا قایل شینو جواب بدین.

حیاتیه باز مرسی

138:

خیلی بعیده که بتونی سورس را پیدا کنی ...

برای اطلاعات بیشتر تنها جایی که می تونه بهت کمک کنه سایت مهندس لاچینی هست ...

یه سری به اونجا برن

139:

با سلام
کسی از دوستان می تونه منو راهنمایی کنه
من یه فایل هگز دارم و می خوام اونو به برنامه اش تبدیل کنم واینکه به چه زبانی نوشته شده رو نمی دونم
لطفا کمکم کنید

140:

.....................................


141:

همينطور برنامه اي فكر نكنم بشه

142:

سلام دوستان
پروژه من درباره کنترل نماينده های صنعتیه درباره 2تا میکروکنترلر اطلاعات کاملی میخوام خودم چیز خاصی پیدا نکردم.
لطفا کمکم کنید

143:

سلام
من می خوام با Codevision 2 به حافظه SD وصل بشم.لیست فایل ها رو بخونم و محتوای فایل های txt رو ببینم
ولی نمی تونم از مثال های Codevision سر در بیارم

حافظه رو اینجوری وصل کردم :



اینم تنظیمات Codevision :



ولی دیگه باید چکار کنم ؟

لازمه از وقفه ها هستفاده کنم یا نه؟
اگه ممکنه یک کد واضح و گویا بهم بدین تا روشن بشم

متشکرم

144:

خیلی متشکرم
کار من که راه افتاد

برای همین تصمیم گرفتم یک آموزش فارسی برای کار با دستورات کتابخانه CodeVisionAVR 2 بنویسم.خوشحال میشم اگه نظر بقیه رو هم برای بهتر شدنش بدونم

کد:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
متشکرم

145:

سلام دوستان ایا میتوانیم تصیر را از مطلب با avrبه lcd منتقل کرد

---------- Post added at 12:47 PM ---------- Previous post was at 12:44 PM ----------

سلام دوستان ایا میتوانتصویر راازمطلب با avrبه lcd منتقل کرد

146:

شدنش که میشه
ولی کار عجیبیه

اگه بتونید یک برنامه ویندوزی بنویسید که تصویر رو ار Mathlab بگیره می تونه مثلا با پورت RS232 به AVR بفرسته و اونم روی ال سی دی چاپش کنه

147:

یه سوال داشتم کریستال برای atmega8L چیه؟

مثلا برای( atmega16-4MGHZ)هست

148:

این حرفت عجیب غریبه ...

آخه تا اونجایی که من میدونم شما میتونه تا 16 مگاهرتز کریستال بهش وصل کنی حالا هر مقداری میخواد باشه (حالا اینکه میگی مگا 16 4 مگاهرتز هست رو من تا حالا نشنیدم)

اما در مورد میکروهایی که آخرشون حرف ال هست ...

اون ها به دلیل اینکه کم مصرفترند حداکثر تا 8 مگاهرتز میتونند کلاک بشند ....

حالا زیر این مقدار هر چی میخواد باشه ...

این مورد برای مگا8 ال هم صادق هست

149:

دیتا شیت اتصال میکرو به یک LCD گرافیکی 16*2رو می خواستم.


150:

سلام هركس كه درباره ميكرو كنترلر AVR سوال دارد مي تواند از من بپرسد تا اينجانب جوابگايشان سوالات شما عزيزان علاقمند باشد_باشد كه اين گام هر چند كوچك اينجانب راهي باشد براي شكوفايي ميهن عزيزم ايران بزرگ و به اميد سرافرازي تمام علاقمندان علم در ايران

151:

سلم من حاضرم با شما جهت آموزش AVR,8051همكاري كنم

152:

با سلام من یه سوالی در مورد میکرو ای وی آر at mega 32 داشتم در مورد datsheet اون
من یه عکس دارم که ترتیب pin ها با هم فرق می کنه می خواستم بدونم کدومشون درسته
آخ pin reset جاش فرق داره
با تشکر


کد:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
کد:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

153:

میشه عکس ها رو بزارید

154:

برای دیدن عکس ها رو لینک کلیک کنید

155:

مرجع اصلی Datasheet هست.

هرچی تو Datasheet نوشته درسته
اینم Datasheet :

کد:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

156:

من هم مرجع رو datasheet گرفتم ولی تو خیلی جاها همین روال رو که تو وبلاگ های فارسی هست رو دیدم بالاخره که باید درست بگن

157:

بالاخره یک پایه که ۲دو تا کار نمی کنه !
مطمئنا چیزی که خود سازنده فرموده درسته
باید از کسانی که جور دیگه ای پایه ها رو وصل می نمايند بپرسید قضیه چیه

شاید از میکروی دیگه ای هستفاده کردند !!!

158:

من کابل پروگرمر رو بر حسب این دیتا شیت درست کردم ولی توی دیتا شیت دیگه دیدم که پین 3 و 11 رو هم به وصل کرده که من این کارو نکردم یه نظر شما اشکالی داره؟
در ضمن یه عکس دیگه از پروگرمر دارم که اونم شکلش فرق می کنه
من پروگرمرمو بر پايه این مدار درست کردم



تو این شکل 3 و11 به هم وصلند



اینم پروگرمری که شکلش فرق داره مثلا تو این پروگرمر نمی دونم این سیم زرد رنگ برای چیه!



159:

ظاهرا لینک عکس ها رو نزاشتین.

خودم رفتم از پروفایلتون دیدم
اگه عکس ها رو BMP آپلود نکنید راختتر می تونم ببینمشون

فکر کردم مشکل با پایه های میکرو هست.ظاهرا منظورتون پایه های LPT هست درسته ؟
پورت ۳ خروجی هست و ۱۱ ورودی !
نمی دونم چرا این کار رو کرده !ولی اگه خودش فرموده شما هم باید همین کار رو بکنی
در مورد کار این پین ها اینجا نوشته :

کد:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

160:


161:

من این پروگرمر رو به کامپیوتر وصل کردم و با بسکام یه برنامه ی کوچیک برای امتهان نوشتم ولی نمی تونه سند کنه تو ای وی آر
یکی از مشکلاتش اینه که پروگرمر رو نمیشناسه
در ضمن تو لیست انتخاب ای وی آر ها مگا32 نیست البته یه گزینه هست به نام M32 که فکر کنم همون ATMEGA32 باشه

کد:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

162:

طراح پروگرمر کیه ؟ میشه باهاش تماس گرفت
خوبه خودشون بپرسید

163:

سلام به همه دوستان
من يه مشكل كوچيك با uart بيسكام دارم چند تا ميكرو رو به هم وصل كردم هر ميكرو 6-8 تا uart نرم افزاري به عنوان ورودي داره و 1 uart نرم افزاري به عنوان خروجي.

تمامي ميكرو ها mega8 هستند و با فركانس 8MH و Boad=9600 يه داده وارد ميكرو اول ميشه اين داده بعداز پردازش وارد ميكرو دوم مي شه و الا آخر تا اينجا مشكلي وجود نداره مشكل وقتي بوجود مياد كه مي خوام يه ورودي ديگه از ميكرو آخر به ميكرو اول بدم يعني در واقع خروجي ميكرو آخر رو به عنوان ورودي به ميكرو اول وصل كنم يه مقدار اوليه هم بايد در حركتاول به ميكرو اول داده بشه كه اونم انجام ميشه حالا وقتي اين ورودي رو تايشان ميكرو اول فعال مي كنم تمامي ميكرو ها هنگ مي كنند يه جورايي همه تايشان دستور input مي مونند ميكرو اول دنبال ورودي از ميكرو آخر هست در حالي كه ميكرو آخر خودش در انتظار ميكرو هاي قبلي هست هر كاري هم كردم كه از لحاظ وقتي اين دوتا با هم تداخل پيدا نكنند باز هم سپس چند تا حركت تايشان حلقه ميكرو ها هنگ مي كنند
از دوستان كسي راه حلي به ذهنش ميرسه تورو خدا كمك كني

164:

سلام
چه کار جالبی !
قراره این میکرو ها چکار نمايند ؟
ورودی میکروی اول از کجا میاد ؟!
شاید بشه با یک بافر تاخیر درست کرد

165:

سلام عزیزان!
من از AVR هیچی نمیدونم! برای آشنایی با AVR چه کتاب(ها)ی را پیشنهاد میکنید؟!

166:

این کتاب جالبیه .خوب توضیح داده :

کد:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
البته من کتابای دیگه رو ندیدم .خوبه یک نگاهی هم به اینا بندازی :

کد:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
موفق باشید

167:


168:

با سلام
من میخوام 10تا رشته رو داخل حافظه eeprom در atmega32 ذخیره کنم کسی میتونه کمکم کنه چطوری این کارو انجام بدم؟

169:

سلام!!!!!در مورد طراحی سوال دارم,,,,,,موقع طراحی نقشه طراح از کجا میدونه چه جایی باید ترانزیستور باشه ,,,,چه جایی مقاومت ,,,,,,,,منیدونم سوالم رو واضح نوشتم یا نه ,,,,,,,, بیشتر در مورد طراحی توضیح بدبد

170:


خب فرض کن که مثلا" قراره با خروجی یه میکروکنترلر یک رله رو فعال کنیم.

خروجی میکرو حداکثر 25 میلی آمپره اما رله نیاز به جریان بیشتری داره بنابرین از یک ترانزیستور برای تقویت جریان هستفاده میشه.

جاهایی هم که نیاز به محدود کردن ولتاژ یا جریان داشته باشیم از مقاومت هستفاده میکنیم یا تو مدارهای صوتی اگه بخایم فرکانسهای کمتر از مثلا" 20 هرتز و بیشتر از 20 کیلوهرتز حذف بشن میشه از خازن هستفاده کرد.

البته تو خیلی کاربردهای دیگه هم از ترانزیستور و خازن و ...

هستفاده میشه و اینا رو فقط برای مثال فرمودم.


171:


172:



دوست عزیز ,,,شما در این باره منبع خاصی رو میشناسید,,,,اگه ممکنه معرفی کنید

خیلی خیلی ممنونم

173:

شما اول باید طرز کار قطعات الکترونیکی مثل ترانزیستور و دیود و ماسفت و...

رو بدونین تا بتونین طراحی کنین.

اگه دنبال کتاب هستین میتونین جلد اول کتاب اصول الکترونیک رو بخونید(البته اگه درمورد مقاومت و خازن و سلف زیاد اطلاعات ندارین) و بعدش کتاب قطعات و مدارات الکترونیک نشلسکی رو بخونین.


174:

سلام به همگی

میخواستم بدونم نرم افزار Codevision از زبان کیوبیسیک هم برای پروگرام کردن میکروکنترلر ساپورت میکنه یا نه..

ممنون

175:

سلام میشه منظورتون رو واضح تر بگین ؟
کدویژن یه کامپایلر زبان C برای میکروکنترلر های AVR هست

176:

یعنی کلا از زبان C هستفاده نشه و برای پروگرام کردن از زبان بیسیک هستفاده بشه...

در ضمن میخواستم بدونم پروگرامر چی هست...

از کجا باید خرید...؟؟ قیمتش چجوریه..؟؟

ممنونم

177:

سلام

چجوری میشه فهمید که یه میکروکنترلر پروگرام شده یا نه...؟؟؟

به کمک codevision راهی هست..؟؟

178:

سلام من کتاب مرجع کامل avr به زبان c از انتشارات نص رو میخواستم لطفا اگه کسی داره برام بزاره با تشکر...


179:

سلام
من یه مشکل ساده دارم

پورت c رو تو کدویژن اینجوری تعریف کردم
PORTC=0x00;
DDRC=0x00;
و پایه ها رو با مقاومت پول آپ کردم و تو یه حلقه مقدار پورت رو می خونم وقتی که با ولتاژ یکی هر کدوم از پین های پورت C رو تغییر میدم ولی مقداری خونده نمیشه و انگار نه انگار

180:

سلام به همگی

من تا حالا با AVR کار نکردم و به خاطر همین خیلی ناشی هستم...

الان وقتی میخوام میکرو رو پروگرام کنم codevision این ارور رو میده



مدل پروگرامر که از بازار امجد (( خیابان جمهوری )) خریدم هم این هست:

کد:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید


یه کمکی بکنید تا بتونم این micro رو پروگرام کنم...

ممنونم

181:

یه sdk200/300 بخر با پورت LPT کار میکنه
یا پروگرامر Extreme بگیر با USB کار میکنه ولی با برنامه خودش و اگه با LPT وصلش کنی با کدویژن هم کار میکنه

182:


183:

برای برنامه نویسی به زبان بیسیک میتونین از کامپایلر بسکام هستفاده کنین که دستورات ساده تر و توابع آماده ای رو هم جهت کار با این نوع میکرو در خودش داره
پروگرمر وسیله ایست که شما توسط اون برنامه ای رو که بوسیله رایانه نوشته و کامپایل کرده اید به حافظه ی میکرو کنترلر مزبور انتقال میدین
ساده ترین نوه پروگرمر برای میکرو های ای وی آر stk200 هست که با صرف مبلغی زبر هزار تومن میتونین خودتون بسازینش

سلام به همگی

من تا حالا با AVR کار نکردم و به خاطر همین خیلی ناشی هستم...

الان وقتی میخوام میکرو رو پروگرام کنم codevision این ارور رو میده
متاسفانه نتونستم مدل پروگرمر رو تشخیص بدم ابتدا زنگ بزنین و از فروشنده نام پروگرمر رو بپرسین
برای برنامه ریزی میکرو باید ابتدا مطمئن شین که پروگرمری که ازش هستفاده میکنین توسط کدویژن حمایت میشه برای این منظور برین تو
setting /programmrs
و پروگرمری که ازش هستفاده میکنین رو انتخاب کنین و در قسمت برنامه ریزی red / chip signature رو انتخاب کنین ببینین میکرو رو میشناسه یا نه ؟
سلام
من یه مشکل ساده دارم

پورت c رو تو کدویژن اینجوری تعریف کردم
PORTC=0x00;
DDRC=0x00;
و پایه ها رو با مقاومت پول آپ کردم و تو یه حلقه مقدار پورت رو می خونم وقتی که با ولتاژ یکی هر کدوم از پین های پورت C رو تغییر میدم ولی مقداری خونده نمیشه و انگار نه انگار
متوجه نشدم بیشتر توضیح میدین ؟

184:

ممنون...

اون میکروی من بدلیل برعکس گذاشتن روی پروگرامر سوخته بود...

برای همین رفتم بازار امجد و دوتا دیگه خریدم...

حالا سوالم این هست که :

آیا برای میکروی ATmega16 علاوه بر پایه vcc باید پایه avcc رو هم به همون ولتاژ 5 ولت وصل کرد....؟؟

lcd های 2 در 16 با چه ولتاژی کار مینمايند...؟؟

اگر این lcd به ولتاژی وصل بشه و همه 32 تا خانه اش روشن بشن میشه فرمود اون lcd صد % سالم هست یا نه..؟؟

ممنونم

185:

ممنون مشکلم حل شد

186:

سلام به همگی
وقتتون بخیر...

بنده این ترم برای یکی از دروس قصد داشتم پروژه ای ارائه بدم و برای همین موضوع (( کنترل دور موتور DC به کمک سیگنالهای PWM )) رو که یکی از دوستان در فرومی دیگر زحمت برنامه نویسی و ساخت فایلهای اون رو کشیده بودند رو انتخاب کردم.
این لینک پست حاوی پروژه:
کد:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
الان من این پروژه رو تقریبا پیاده کردم ولی چند تا مشکل کوچولو برام پیش اومده:

اول اینکه ایا برای راه اندازی کل این پروژه و اینکه موتور به دلخواه ما ساعتگرد یا پادساعتگرد بچرخه فقط و فقط پروگرام کردن میکرو با همون فایل HEX کافی هست یا اینکه باید سیگنالهای pwm رو هم از طریق codevision برای میکرو تعریف کنیم...؟؟ آخه من atmega16 مورد هستفاده در این پروژه رو با نرم افزار isp prog پروگرام کردم...

میخواستم بدونم اگر باید این میکرو را برای تولید pwm هم برنامه ریزی کنیم آیا پروگرام شدن میکرو با دو نرم افزار مختلف مشکلی ایجاد نمیکنه و اینکه اصلا نیازی به تعریف PWM برای میکرو هست یا خیر...؟؟
_______________


دوم اونکه : همونطور که در فایل پروتئوس این پروژه مشاهده میشه یک lcd مدل 16*2 به عنوان نمایشگر مدار هستفاده شده ...


الان من میتونم کلمات OCRO و Direction رو بر روی lcd بسته شده در مدارم ببینم ...

ولی هر چی کلید ها رو که به مقاوتها بسته شده میزنم تاثیری نداره...!! آیا این ربطی به همون PWM نداره...؟؟؟
_________________________



سومین و آخرین سوالم در مورد پایه avcc از میکروی atmega16 هستش...

من این پایه رو به هیچ ولتاژی متصل نکردم و رهایش کردم...

آیا نیازی هست که ولتاژ 5 ولت رو به این پایه هم اعمال کنم...؟؟


ممنون میشم اگر یک توضیحی محبت کنید.


187:

سلام دوستان عزیز
من در پروژه ای ک دارم انجام میدم یه سوال مهمی برام پیش اومده ک فکر می کنم شما می تونید بهم کمک کنید.
من یه محلول بی رنگ دارم که سپس مدت کوتاهی تغییر رنگ ناگهانی به آبی تیره دارم و من می خوام به محض آبی شدن،سنسور این تغییر رنگو بخونه (و جریانی ک تویه یه مدار دیگه دارم رو قطع کنه).چطوری می تونم این کارو انجام بدم؟؟؟
راستش من زیاد از الکترونیک سر در نمیارم و امیدوارم شدنی باشه!
لطفا هرکدوم از دوستان که می تونه سریعتر جواب بده!
خیییییلی منووون

188:

سلام دوستان من میخوام با میکرو کنترلر avr موس رو فقط به منظور مپینگ هستفاده کنم و خودند دکمه هاشم اصلا اهمیتی نداره اگه میشه یکی کمکم کنه و اگه نحوه راه اندازی سنسورش رو هم بگید کافیه.


189:

عزیزان ببینین با توجه به این عکس :



من باید جهت صحیح برنامه گرفتن آی سی رو با توجه به شکاف بالای سر آی سی تشخیص بدم دیگه درسته؟

از طرف دیگه فروشنده بهم فرمود که باید به جهت نوشته بر روی آی سی دقت کنم و اون رو مد نظر برنامه بدم ولی با مقایسه با عکسی که توی پکیج پروگرمر بود اصلا با هم جور در نمیان و دقیقا بر عکس حرفی هست که فروشنده بهم فرموده! نظروتون چیه؟

من میخوام ATMEGA8A-PU رو برنامه ریزی بکنم.
این مدل قابلت برنامه ریزی مجدد رو داره یا نه؟

ظرفیت چقدر هست؟ فروشنده بهم فرمود 8 گیگ ظرفیت داره! ولی من باورم نشد! توی دیتاشیتش هم چیزی در مورد ظرفیتش ندیدم :
کد:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
واقعا ممنون میشم اگه کسی کمک بکنه.


190:

سلام
مقاله یا مطلبی در مورد تبديل DC به AC با AVR با توان 200وات می خواستم.


191:

سلام پروگرم atmega8a

192:

کسی پروگرم atmega8a-puرو برا محافظ برق داره

193:

سلام
من تو برنامه ریزی میکروکنترلر تازه واردم.

میخواستم یه برنامه ساده برای ارتباط با rs232 بنویسم با atmega16.


کد:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
مشکل اینجاست که مقدار برگشتی درست نیست.

تو پروتئوس چک کردم ،‌ همون نتیجه رو میده .

با اسیلوسکوپش که دیدم ، فهمیدم که ظاهرا فرکانس برگشتی کمتره و در ضمن نا مفهوم و هر مقداری هم که برگشت داده بشه نتیجه یکیه.
اگه منو کمک کنید ممنون میشم.

194:

سلام خسته نباشید می خواستم بدونم میشه تصاویری که روی lcd گرافیکی هست را روی تلویزیون یا مانیتور نشون بده با AVR

195:

با سلام
من پروژهای دارم که موضوع مرگ و زندگیه.

پروژه راجع به کنترل چند تا سروو موتور و دیواسهای دیگر به کمک Z80180 و فلش 29F010 هست.

به کمک متخصصین در اصلاح مدار نیاز دارم.

حق الزحمه بسیار عالی پرداخت خواهد شد.

با تشکر
09123874644
[ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]

196:

سلام

برای نوشتن و حواندن محتوای آی سی های 29F010 و PAL16V8 چه پروگرامری در بازار هست و از کجا میشه خرید؟

بهروز

197:

وقتی مادر بردهای جدید پورت (پرینتر|parallel|lpt) برای پروگرامر Stk200-300 رو ندارن پس چیکار باید بکنیم؟ راه حلش چیه؟ البته راهی که بشه با کمترین هزینه از پروگرامر ساخت خودمون هستفاده کنیم.

؟؟؟



198:

یک کارت Paralell بخر !
فکر کنم تبدیل USB به Parallel هم وجود داشته باشه ولی مطمئن نیستم اینجوری کار کنه !

199:


200:

یه جایی خوندم تبدیلش واسه پروگرامر کار نمیکنه!
کارت Paralell هست؟؟ چه طوریا!؟ روی PCI نصب میشه؟ شما تست کردین شده؟

ممنون

201:

کارت PCI وجود که داره ولی نمی دونم توی ایران هست یا نه
من تست نکردم ولی بعید می دونم با کارت PCI مشکلی وجود داشته باشه...

یک نفر رو میشناسم که شاید بدونه .ازش می پرسم

202:


203:

okay
منتظریـــــــــــــــــــ ــــــــــم!
البته من رفتم بازار پرسیدم اصلا نمیدونن چیه! تازه کلی هم خنگا بی سوالا بهم خندیدن فرمودن پرینتر های جدید usb هستن و پروگرامرها هم usb هستن!
اونا توی پول گرفتن بیشتر تخصص دارن تا این چیزا انگار!!
به مهندسین توهین نشه منظورم اونای دیگه بود.


204:

من با کارت PCI امتحان نکردم ولی با تبدیل که نمیشه اون چیپ های پروگرامر

محدودیت زیاد دارن...

پیشنهاد می کنم خودت با بافر یه پروگرامر موازی بسازی بعد تبدیل بزنی شاید

این جوری بشه

205:

ایشون هم با کارت PCI کار نکرده بودند ولی اگه پیدا کنید به احتمال زیاد مشکلی نباشه
مطمئنید مادربوردتون Parallel نداره ؟ چون بعضی مدل ها پشتشون ندارند ولی پورت رو روی برد برنامه دادند و باید با کابل ازش خروجی گرفت
مدل مادربوردتون چیه ؟

206:

مدل مادربرد من اینه:
asus p5q deluxe

کد:
برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

حالا شما بفرمایید بفرض که بخوام با این پورت کار کنم این پورت رو به کجای اون باید وصل کنم...؟

207:

مادربورد شما که Parallel نداره ولی اگه پورت Com لازم داشتید می تونید کابلش رو توی بازار پیدا کنید.قدیما از این کابل ها معمول بوده .باید انبارشون رو بگردند
در مورد Parallel هم همینطور

208:

سلام دوستان
یه برنامه ثانیه شمار به زبان بیسیک میخوام که به پورت C از میکرو AVR یک LCD 16*2 با کریستال 3686400هرتز وصل شده باشه
با8535
کسی میتونه کمکم کنه؟
ممنون میشم از لطفتون.........


209:

سلام ، به همه دوستان ، من می خواهم با پورت usb بدون واسطه کار کنم ، آیا می توانید کمکی به من بکنید ؟

210:


منم دقیقا دنبال یک همچین چیزی هستم نمیشه کمک کنین؟

211:

سلام به همگی
دوستان من به پایه صفر پورت B یک کلید وصل کردم و میخوام که هر موقع کلید را فشار دادم LED روشن بشه و با رها کردن کلید خاموش بشه باید از تابع خاصی برای این برنامه هستفاده کنم ؟؟
ضمنا برنامه را در Codevision باید بنویسم
لطفا منو راهنمایی کنید

212:

سلام دوستان واقعا نمیدونستم سوالامو کجا بپرسم
اگر امکان داره راهنمایی کنید,
باتوجه به اینکه درس معماری کامپیوتر پیشنیاز میکرو هست ,آیا این درس معماری کامپیوتر درس مهمی برای رشته الکترونیک محسوب میشه و یادگرفتنش توصیه میشه یا صرفا گذروندنش با 10؟
باتشکر.


213:

درود
برای رشته الکترونیک نه مهم نیست!(بگذرونش)
ولی میکرو رو خوب یاد بگیر

214:


215:

سلام.
من برنامه یه ماشین حساب که کار 4 عمل اصلی را انجام بده با AVR نیازدارم.
لطفا طراحی هم برام بگذارید.برای data sheet هم بگید که به هر پایه ای چی وصل میشه مثلا به پایه nام ورودی ها
ممنون

216:

هیچ کسی نبود کمکی بکنه؟؟؟؟؟؟؟؟؟
اگه میتونید لطفا راهنمایی کنید

217:

سلام دوستان، بدون مقدمه می گم، دارم میرم دوره میکروکنترلر AVR، برا آخر دوره یه پروژه باید انجام بدم که تازه و بکر باشه، به نظر شما چی کار میتونم بکنم؟ چی بسازم که عملی و جالب انگیز باشه؟

218:

سلام
دوستان پروژه من ساخت اینورتر 12ولت به 220ولت هست با هستفاده از avr که برای تولید موج pwm هستفاده میشه
لطفا کمک کنید
باتشکر

219:

با سلام و خسته نباشید .

کسی میتونه کمکم کنه یه برنامه منو سازی میخوام با atmega16 که 3تا منو داشته باشه به شکلی که 2تاکلید به میکرو وصل باشه که هر وقت کلید اولی رو میزنیم به منوی بعدی forward بشه و هر وقت کلید دومی رو میزنیم به منوی قبلی بره و این طوری بین 3 منو پیمایش کنیم با تشکر

220:

دوستان کسی هست راجع به این برنامه توضیحاتی به من بده .ممنون میشم.میکرو Atmega16هستش

#include <mega16.h>
#include <delay.h>

#define red_1 PORTA.0
#define yellow_1 PORTA.1
#define green_1 PORTA.2
#define red_2 PORTA.3
#define yellow_2 PORTA.4
#define green_2 PORTA.5
#define green_a PORTA.6
#define red_a PORTA.7
#define green_b PORTB.0
#define red_b PORTB.1
unsigned char a,b;

unsigned char segment (unsigned char input){
switch(input){
case 1:{return 0x06;break;}
case 2:{return 0x5B;break;}
case 3:{return 0x4F;break;}
case 4:{return 0x66;break;}
case 5:{return 0x6D;break;}
case 6:{return 0x7D;break;}
case 7:{return 0x07;break;}
case 8:{return 0x7F;break;}
case 9:{return 0x6F;break;}
case 0:{return 0x3F;break;}
}
}
void delay_green(void){
red_a=0;
green_b=0;
a=9;
b=0;
while(b!=10){
delay_ms(1000);
b++;
PORTC=segment(a);
green_a=1;
red_b=1;
a--;
}
a=9;
}


void delay_red(void){
green_a=0;
red_b=0;
a=9;
b=0;
while(b!=10){

delay_ms(1000);
b++;
PORTC=segment(a);
red_a=1;
green_b=1;
a--;
}
}

void main(void){
PORTA=0x00;
DDRA=0xFF;
PORTB=0x00;
DDRB=0x03;
PORTC=0x00;
DDRC=0xFF;
PORTD=0x00;
DDRD=0xFF;

while (1)
{
red_1=0;
red_2=1;
green_1=1;
delay_green();
green_1=0;
yellow_1=1;
delay_ms(1500);
yellow_1=0;
red_1=1;
red_2=0;
green_2=1;
delay_red();
yellow_2=1;
green_2=0;
delay_ms(1500);
yellow_2=0;
};
}

221:

منم پایان نامم با زبان اسمببلی موندم چیکا کنم

222:

مثل اینکه اینجا کسی جواب سوالارو نمیگه ولی من بازم میپرسم

دوستان یه بردی واسه پروگرام با پورت LPT درست کردم، الان میخوام با CodeVision پروگرام کنم ولی این SCK Freq و فیوز بیت ها رو نمیدونم چجوری بزارم.

به Boot Lock ها که نباید دست بزنم نه؟؟ (میکرو هم همون ATMEGA16A هست)
راستی یه سوال دیگه اینکه من باید به مداری که واسه پروگرام با پورت پرینتر ساختم ولتاژ جدا بدم یا خودش از پورت برقش رو میگیره؟؟من تازه شروع به کار با میکروکنترلر ها کردم نمیدونم چطور باید میکرو رو پروگرام کنم.


223:

شما قصد ديباگ كردن يا...داريد؟
اول شما مطمئن بشيد اين پروگرامر كه ساختيد آيا تو مد stk500 هست يا stk300...
اينجوري كه من متوجه شدم stk300 بايد باشه...بهرحال تا مدارتون نذاريد نميشه دقيق توضيح داد

خير تغذيه از خود مدارتون تامين ميشه ...و مراقب پورت كامپيوتر برا تست باشيد كه خيلي راحت اين پورت ميسوزه

224:


225:

سلام من می خوام یک ساعت ساده دیجیتال با میکروکنترلرAVR بسازم اما چند تا مشکل دارم:شماتیک سختافزاری اون رو پیدا نمی کنم و فایل های پروتوسی که دانلود کردم قسمت hex باز نمی شود.لطفا به من یاری برسانیدو در ضمن برنامه ای معرفی کنید که پسوند hex را باز کند
با تشکر

226:

در پروتئوس روی آی سی موردنظر دابل کلیک کرده در پنجره Edit Component در قسمت Program File روی پوشه کلیک کرده و فایل Hex را Browse کنید.


227:

سلام دوستان من اگر بخوام یک ساعت دیجیتال که فقط تایم را نشان دهد به چه وسایلی احتیاج دارم.لطفا من را راهنمایی کنید
با سپاس

228:

سلام.

من وقتي با كدايشانژن فيوزبيتا را پروگرام ميكنم بعدش ديگه ميكرو قفل ميشه.

نه ميشه پاكش كرد و نه روش ايت كرد
برا مگا هشت و مگا 16 چندتا اينطوري ميكرو خراب كردم!
لطفا راهنمايي كنيد چطوري ميتونم فيوبيتهاي CKSEL 1,...3 كه مربوط به كلاك ميكرو هست را برنامه ريزي كنم و ميكرو قفل نشه.
لازم به ذكره كه lock bit ها رايشان حالت پيش فرض ديفالته و من اصلا با اونا كاري ندارم و فقط فيوز بيتها را كه پروگرام ميكنم اين مشكل برام پيش مياد

229:

سلام
سوالی که من دارم اینه
می خوام مکان سه گیرنده را توسط الگوریتم trilateratoin توسط میکرو بدست بیارم.

این گیرنده ها موج هایی از نوع RF و آلتراسوند به میکرو می فرستند.

آیا کسی می تواند به من کمک کند؟؟؟؟؟؟؟؟؟؟؟؟؟

230:

اطلاعات دقيق نداديد بخصوص از كاربرد دستگاه

بنظرم چيزي شبيه به ساختار GPS ها مد نظرتون هست .

كه از رو اختلاف وقتي كه بين فرستنده ها به اختلاف فاصله ها و نقطه تلاقي اين فاصله ها نقطه مكان شماست
چيزي شبيه به تصايشانر زير
برا التراسونيد مشكل خاصي نيست ، مثلا ميتونيد ساعتي رو در همه برنامه بديد و همه رو با هم سنكرون كنيد.

با ارسال پالس التراسوند اطلاعات ساعت اون لحظه رو هم ارسال بفرماييد (مدوله كنيد رو خود سيگنال) بعد گيرنده شما با تطبيق وقت كه ارسال شده با وقت دريافت پي به فاصله با فرستنده ميبرد و با 3 عدد ازين اطلاعات ميتونيد مكان دقيق رو مشخص كنيد و با ميكرو اين كار به دليل كند بودن سرعت صوت امكان پذير هست

بهرحال اين مسئله تابع فاصله و مسافت هست.

وقتي فاصله ها كم اند ، كانتر يا شمارنده اي كه در داخل ميكرو هست دقت لازم برا سنجش وقت ندارند.

يعني قبل از اينكه كانتر عمل كند سيگنال ارسالي دريافت شده و قادر به محاسبه اختلاف وقتي و درنتيجه مسافت نيستيد.

اين قضيه بخصوص در امواج RF بيشتر نمود دارند بدليل اينكه اين امواج با سرعت نور حركت ميكنند .

بهرحال بهتر هست به جاي ميكرو از FPGA ها بدليل realtime بودن و سرعت كلاك زني بيشتر هستفاده نماييد .

اما برا مسافت هاي نه خيلي كم با التراسوند كه فرموديد ميكرو بخصوص ARM كه كلاك بالاتري دارند قابل هستفاده اند

231:

سلام یه سوال داشتم
چطوری میشه کد هایی که تو کد ویژن نوشتی با پسوند hex سیو کنی؟
لطفا سریعا جواب بدید

232:

سپس کامپایل و build توی پوشه محل ذخیره پروژه پوشه ای به نام Exe ایجاد میشه که توش فایل باپسوند hex هم هست.


233:

فایل قسمت تنظیم دیلی فرکانس هست تو وضعیتهای مختلف بنظر میاد برای فلزیاب باشه .

234:

من 8 عدد logicstate به atmega32 وصل کردم که عدد متناظر logic را در 7سگمنت نشان دهد ولی نمی تواند تشخیص دهد که صفر سپس

یک، جزیی از عدد هست یا نه، مثل 11=3 و 110=6 یعنی فقط عدد 3 رو میشناسه و 6 رو نمیشناسه


71 out of 100 based on 26 user ratings 301 reviews