شما وارد حساب خود نشده و یا ثبت نام نکرده اید. لطفا وارد شوید یا ثبت نام کنید تا بتوانید از تمامی امکانات انجمن استفاده کنید.
زمان کنونی: 05-20-2012, 01:06 AM درود کاربر مهمان (ورودثبت نام)


ارسال پاسخ 
 
امتیاز موضوع:
  • 0 رأی - میانگین امیتازات : 0
  • 1
  • 2
  • 3
  • 4
  • 5


تبدیل LED به سون سگمنت
ارسال: #1
02-26-2011, 06:47 AM (آخرین ویرایش در این ارسال: 02-28-2011 05:14 PM، توسط admin.)
Lightbulb تبدیل LED به سون سگمنت
با سلام
مخزنی دارم که وقتی پُره ، روی پنل فرمان 4 تا LED سبز روشن میشه و طبیعتاً با کم شدن مایع داخل مخزن چراغها یکی یکی خاموش میشن البته یه چراغ قرمز هم داره که با خاموش شدن 4 تا چراغ سبز ، روشن میشه.
حالا بدون در نظر گرفتن چراغ قرمز مداری میخوام که برای ورودی سیم 4تا چراغ سبز رو بهش بدم و این پر یا خالی بودن مخزن رو با اعداد 0 - 1 - 2 - 3 و 4 روی سون سگمنت ببینم.
یعنی بجای روشن بودن 4 تا چراغ ، بنویسه 4 و با خاموش شدن هر چراغ یکی کم کنه
به عبارتی 4 - 3 - 2 - 1
وبا خاموش شدن آخرین چراغ سبز عدد 0 رو نشون بده.
از چراغ قرمز هم به عنوان آلارم تخلیه مخزن استفاده میکنم.
حالا تو این سایت کسی هست مشکل بنده رو حل کنه ؟
" با آرزوی پیروزی برای همـۀ خوبان "
یافتن تمامی ارسال های این کاربر
نقل قول این ارسال در یک پاسخ
 سپاس شده توسط Reza
ارسال: #2
02-28-2011, 05:28 PM (آخرین ویرایش در این ارسال: 02-28-2011 05:34 PM، توسط admin.)
RE: تبدیل LED به سون سگمنت
با سلام و خوش آمد گویی به شما کاربر گرامی مشکل شما به طور کامل بررسی شد.پروژه با شبیه سازی و سورس کدویژن به صورت کامل آمده دانلود است و حتی در صورتی که از Atemga 16 استفاده کنید، نیاز به ویرایش سورس هم نیست.[/font]روش عملکرد هم به این صورت است که آی سی به یک سون سگمنت آند مشترک متصل شده است. اعداد سون سگمن با توجه به صفر و یک شدن پورت ایجاد می شود. برای این کار اعداد به صورت یک آرایه تعریف شده اند:
کد:
unsigned char seg[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
سپس با اندیس های این آرایه شما به اعداد دست یابی پیدا می کنید.در مرحله بعدی شرط ورودی آی سی تست شده است که به ازای چه ورودی، چه عددی نشان داده شده است...در زیر می توانید منظور بنده را بهتر متوجه بشید. به اندیس آرایه، عدد ورودی و خروجی دقت کنید.
if (PINA==0)
PORTC=seg[0]; // halate sefr ke hame led ha khamooshan
if (PINA==1) // halate 1 ke led aval roshane
PORTC=seg[1];
if (PINA==3) // halate 2 ke led aval va dovom roshane
PORTC=seg[2];
if (PINA==7) // halate 3 ke led aval va dovom va sevom roshane
PORTC=seg[3];
if (PINA==15) // halate 4 ke 4 ta led roshan hastan
PORTC=seg[4];

[font=tahoma]در این سورس به این صورت عمل شده که با عدم روشن بودن led ها صفر نشان داده شود.
اگر led اول روشن شود 1 نشان داده شوداگر led اول و دوم روشن شود، 2 نشان داده شود.اگر led اول و دوم و سوم روشن شود 3 نشان داده شود.و....واما در شبیه سازی، کلیدها به جای LED شما قرار می گیرهشما باید پایه مثبت LED ها رو به آی سی وصل کنید و زمین مداری که می خواهید به آی سی وصل شود را به این مدار مشترک کنید.دقت کنید در صورتی که ولتاژ LED ها از سطح فعال سازی AVR پایین تر است، از ATMEGA سری A استفاده کنید تا با سطح ولتاژ کمتر هم درایو شود.نکته مهم دیگر، استفاده از مقاومت های 10 کیلو هست که در شبیه سازی قابل مشاهده هستند. این مقاومت ها برای زمانی که مقادیر LED ها صفر است(خاموش اند) مورد نیاز هست و آنها را حتما به همان شکل استفاده کنید.شما حتما دقت کنید فقط تنها کاری که باید انجام بدید، قرار دادن LED ها به جای کلید هاست و دقت کردن در اینکه مثبت LED ها به آی سی متصل شوند.توجهشبیه سازی در پروتئوس 7.7 انجام شده و احتمال داره با نسخه پایین تر مشکل پیدا کنهبرنامه نویسی با کدویژن AVR ورژن 2.05 انجام شده
فایل ها در پیوست قابل دانلود هستند



فایل (های) پیوست شده
.zip  7segment_by_codevision_www.mechatronic-lab.com.zip (اندازه: 78.04 KB / تعداد دفعات دانلود: 118)
مشاهده وب سایت کاربر یافتن تمامی ارسال های این کاربر
نقل قول این ارسال در یک پاسخ
 سپاس شده توسط AIANDEH
ارسال: #3
03-26-2011, 10:27 PM
RE: تبدیل LED به سون سگمنت
میشه در مورد این قسمت از کد که نوشتید توضیح بدید؟
ممنون...

unsigned char seg[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};‏
یافتن تمامی ارسال های این کاربر
نقل قول این ارسال در یک پاسخ
ارسال: #4
03-27-2011, 05:00 AM
RE: تبدیل LED به سون سگمنت
دوست من اين كد داره اعداد رو ايجاد ميكنه
به اين صورت كه به ازاي صفر و يك شدن پورت هاي آي سي، اعداد ساخته ميشوند.
ما حقيقت داريم اين صفر و يك ها رو به صورت آماده در اختيار شما قرار ميديم.
شما با يك آرايه كه همين كدي هست كه اشاره داشتيد، به اين حالت هاي پورت دسترسي پيدا كرده ايد.
انديس هاي آرايه، دارند اعداد رو تشكيل مي دهند كه معادل هگز اون ميتونه پورت ها رو صفر و يك كنه

مثلا براي ساختن عدد 8، كد هگز 0x80 به پورت c داده شده.
حالا اين كد مياد و با توجه به مقداري كه داره، پايه هاي آي سي رو صفر و يك ميكنه
چون اينجا مقدار اين هگز 128 مي شود، در حقيقت پورت c با عدد 128 معادل مي شود.
كه بايد ببنيد كدام يك از پايه هاي آي سي از پورت سي صفر و يك مي شوند.


باز هم مشكلي بود مطرح بفرماييد.
موفق باشيدSmile-10

مشاهده وب سایت کاربر یافتن تمامی ارسال های این کاربر
نقل قول این ارسال در یک پاسخ
ارسال: #5
03-27-2011, 06:03 AM
RE: تبدیل LED به سون سگمنت
(03-27-2011 05:00 AM)admin نوشته شده توسط: دیدن لینک ها برای شما امکان پذیر نیست. لطفا ثبت نام کنید یا وارد حساب خود شوید تا بتوانید لینک ها را ببینید.
دوست من اين كد داره اعداد رو ايجاد ميكنه
به اين صورت كه به ازاي صفر و يك شدن پورت هاي آي سي، اعداد ساخته ميشوند.
ما حقيقت داريم اين صفر و يك ها رو به صورت آماده در اختيار شما قرار ميديم.
شما با يك آرايه كه همين كدي هست كه اشاره داشتيد، به اين حالت هاي پورت دسترسي پيدا كرده ايد.
انديس هاي آرايه، دارند اعداد رو تشكيل مي دهند كه معادل هگز اون ميتونه پورت ها رو صفر و يك كنه

مثلا براي ساختن عدد 8، كد هگز 0x80 به پورت c داده شده.
حالا اين كد مياد و با توجه به مقداري كه داره، پايه هاي آي سي رو صفر و يك ميكنه
چون اينجا مقدار اين هگز 128 مي شود، در حقيقت پورت c با عدد 128 معادل مي شود.
كه بايد ببنيد كدام يك از پايه هاي آي سي از پورت سي صفر و يك مي شوند.


باز هم مشكلي بود مطرح بفرماييد.
موفق باشيدSmile-10



خیلی خیلی ممنون از توضیحتون...
یافتن تمامی ارسال های این کاربر
نقل قول این ارسال در یک پاسخ
 سپاس شده توسط admin
ارسال: #6
01-19-2012, 08:25 PM (آخرین ویرایش در این ارسال: 01-19-2012 08:30 PM، توسط mahdi.h.)
RE: نمایش عدد منفی در سون سگمنت
سلام من درابط با ic7483جمع کنند وتفریق کننده ونشان دادن عدد منفی روی سونسگمنت اطلاعات می خواستم اگه می شه برام ایمیلش کننید
یافتن تمامی ارسال های این کاربر
نقل قول این ارسال در یک پاسخ
ارسال پاسخ 


پرش به انجمن:


Persian Translation by MyBBIran.com - Ver 3.3
Powered by MyBB, © 2002-2012 Mechatronic-Lab Group.
theme designed for Mohammad Reza Nazem