ايران ويج

نسخه‌ی کامل: 9IN1 - نه برنامه با یک برنامه با AVR و تحت BASCOM
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
لیست برنامه ها :

1 - نمایش بزگترین عدد از بین N عدد ورودی ( بزگترین عدد از بین اعداد قبل را هم نشان می دهد .)
2 - نمایش میانگین اعداد از بین N عدد ورودی ( در هر مرحله میانگین اعداد قبل را هم نشان می دهد .)
3 - نمایش اعداد زوج بین A و B (اعداد A و B را در نظر نمی گیرد .)
4 - تست عدد برای اول بودن آن ( عدد را برای اول بودن تست می کند . اگر عدد مورد نظر اول نباشد کوچکترین عددی که قابل تقسیم باشد را نشان می دهد .)
5 - نمایش اعداد از رشته فیبونانچی ( رشته فیبونانچی به این صورت است : ... - 13 - 8 - 5 - 3 - 2 - 1 - 1 )
6 - نمایش معادل باینری عدد ( مبنای دوعدد را نمایش می دهد .)
7 - نمایش جمع اعداد رقم ( مثلا 1234 می شود 10=4+3+2+1 )
8 - معکوس کردن مکان ارقام ( مثلا 1234 می شود 4321 )
9 - بازی با اعداد ( حدس حرف انتخابی شما ) خیلی جالبه


فقط با یه ATmega32 ویه کیبورد 3*4 و یک LCD 16*2 همراه با محیطی کابرپسند و ساده و شبیه سازی مدار در PROTEUS

ادامه مطلب.

9 برنامه با یک برنامه



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

1 - نمایش بزگترین عدد از بین N عدد ورودی ( بزگترین عدد از بین اعداد قبل را هم نشان می دهد .)
2 - نمایش میانگین اعداد از بین N عدد ورودی ( در هر مرحله میانگین اعداد قبل را هم نشان می دهد .)
3 - نمایش اعداد زوج بین A و B (اعداد A و B را در نظر نمی گیرد .)
4 - تست عدد برای اول بودن آن ( عدد را برای اول بودن تست می کند . اگر عدد مورد نظر اول نباشد کوچکترین عددی که قابل تقسیم باشد را نشان می دهد .)
5 - نمایش اعداد از رشته فیبونانچی ( رشته فیبونانچی به این صورت است : ... - 13 - 8 - 5 - 3 - 2 - 1 - 1 )
6 - نمایش معادل باینری عدد ( مبنای دوعدد را نمایش می دهد .)
7 - نمایش جمع اعداد رقم ( مثلا 1234 می شود 10=4+3+2+1 )
8 - معکوس کردن مکان ارقام ( مثلا 1234 می شود 4321 )
9 - بازی با اعداد ( حدس حرف انتخابی شما ) خیلی جالبه

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

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


نکته :

تمام اعداد وارد شده به مدار 4 رقمی می باشد , یعنی اعداد می تواند بین 1 تا 9999 باشد بجز رشته فیبونانچی که حداکثر عدد 25 می باشد .

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

با کلید های NEXT و BACK می توان برنامه بعدی و قبلی را مشاهده و با کلید صفر می توان آن را انتخاب کرد .

البته میانبرهای هم با کلید های 1 تا 9 اضافه شده است که فشردن کلید مرتبط با برنامه می توانیم آن را انتخاب کنیم .

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


چگونگی کار با هر قسمت :

1 - نمایش بزگترین عدد از بین N عدد ورودی

با ورود به این قسمت عدد N را که تعداد اعداد را نشان می دهد را تعیین کرده و کلید START را فشار دهید . حال عدد اول را وارد کرده و کلید START را فشار داده و بعد ازآن اعداد دوم و سوم و ... را هم به همین صورت وارد می کنیم .

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

با اتمام وارد کردن اعداد برنامه بزرگترین عدد و شماره ردیف آن را نشان می دهد .

2 - نمایش میانگین اعداد از بین N عدد ورودی

با ورود به این قسمت عدد N را که تعداد اعداد را نشان می دهد را تعیین کرده و کلید START را فشار دهید . حال عدد اول را وارد کرده و کلید START را فشار داده و بعد از آن اعداد دوم و سوم و ... را هم به همین صورت وارد می کنیم .

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

3 - نمایش اعداد زوج بین A و B

با ورود به این قسمت اعداد A و B را وارد کرده سپس سرعت نمایش اعداد را بین 1 تا 9 انتخاب کرده و برنامه اعداد زوج بین A و B را نمایش می دهد . در هر بار دو عدد یعنی عدد قبلی و بعدی نمایش داده شده و با سرعت تعیین شده عوض می شود . پس از اتمام نمایش اعداد عدد زوج ابتدا و انتها نمایش داده می شود .

اگر A و B یکی باشند , برنامه دوباره اعداد را می خواهد .
جای A و B مهم نیست و هر کدام می تواند بزرگتر از دیگری باشد .

4 - تست عدد برای اول بودن آن

عدد مورد نظر را وارد کرده و کلید START را فشارمی دهیم و برنامه آن عدد را برای اول بودن تست می کند و اگر اول باشد پیغامی مبنی بر اول بودن عدد نشان داده در غیر این صورت کوچکترین عددی که عدد مورد نظر بر آن قابل تقسیم است را نشان می دهد .

5 - نمایش اعداد از رشته فیبونانچی

عدد خود را بین 1 تا 25 وارد کرده و سپس سرعت نمایش اعداد را بین 1 تا 9 انتخاب می کنیم . برنامه اعداد را از رشته فیبونانچی با سرعت تعیین شده نشان می دهد .

در هر بار دو عدد یعنی عدد قبلی و بعدی نمایش داده شده و با سرعت تعیین شده عوض می شود . پس از اتمام نمایش اعداد , برنامه شماره انتخاب شده از رشته فیبونانچی بهمراه عدد آن را نمایش می دهد .

6 - نمایش معادل باینری عدد

عدد مورد را نظر را وارد کرده و پس از فشردن کلید START معادل باینری آن نمایش داده می شود .

7 - نماش جمع اعداد رقم

عدد مورد را نظر را وارد کرده و پس از فشردن کلید START جمع تعداد رقم های آن نمایش داده می شود .

8 - معکوس کردن مکان ارقام

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

9 - بازی با اعداد

پس از نمایش اطلاعات اولیه ابتدا یکی از حروف بین A تا Z را در ذهن خود انتخاب می کنیم . حال اگر در بین حروف موجود اگر حرف مورد نظر ما باشد کلید 1 و در غیر این صورت کلید 3 را فشار می دهیم . کلید 2 نیز یکی به عقب بر می گردد .

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


نکته :

در هر کجای برنامه که باشیم با فشردن کلید STOP پیغامی مبنی بر خروج از برنامه نمایش داده می شود که اگر آنرا با کلید START تائید کنیم از برنامه خارج شده و به منوی اصلی بر می گردیم .

با فشردن کلید STOP نیز هیچ اتفاقی نمی افتد و به مکان قبلی بر می گردیم .

پس از اتمام هر برنامه اگر کلید START و یا کلید های 0 تا 9 را فشار دهیم پیغامی مبنی بر شروع دوباره آن برنامه نمایش داده می شود که با تائید آن برنامه از ابتدا شروع می شود .

در هنگام نمایش اعداد که با زمان خاصی نمایش داده می شود با فشردن کلید START و تائید پیغام آن می توانیم نمایش اعداد را از ابتدا شروع کنیم .


برنامه و توضیحات آن و چگونگی کار با مدار بهمراه فایل شبیه سازی در PROTEUS را در پیوست دریافت کنید :
سلام
یه سوال داشتم. در برنامه بسکام این مدار موقع کامپایل، به لیبل Flash ارور می خوره می تونید راهنماییم کنیم برای چی به این مشکل بر می خوره؟
سلام به نظرتون میتونم این پروژه رو با mega8 و با کیبورد 4*4
تغییرش بدم؟
تازه فقط میخوام قسمت 9 اش اجرا بشه؟
بقیش رو پاک کنم مشکلی پیش نمیاد؟
تشکر از برنامه خیلی خوبی که گذاشتین.
برای اجرا کردن با میکروی دیگه فقط به مشکل تعریف کردن پورت ها ممکنه بر بخورید
لطفا فقط برنامه 9 را بگذارید