وضعيت: آفلاين 19 اسفند ماه ، 1387 تعداد ارسالها: 8 امتياز: 0 تشکر کرده: 0 تشکر شده 5 بار در 5 پست
ارسال شده در: چهارشنبه، 5 فروردين ماه ، 1388 10:09:11 موضوع مطلب: اتصال 10 سون سگمنت به مگا32
سلام آقای مهندس برای وصل 10 سون سگمنت کاتد مشترک به مگا32 اول هفتا پایه a,b,... را به پورت دی وصل کردم و دهتای دیگه رو به پورتهای آ و بی برای نمایش اعداد 0 تا 9 روی اینها از شرط استفاده کردم یعنی همه پورتها را بغیر از a.0 یک کردم بعد شرط کردم که در این صورت روی پورت دی عدد 6 (معادل نمایشی 1) با اینکار همه سون سگمنت ها اعداد 0 تا 9 را نشان میدادند ( قاطی کرده بودند) برای همین می خواستم بدونم شیوه درست برنامه نویسی چه طوریه؟ خیلی ممنونم
وضعيت: آفلاين 7 ارديبهشت ماه ، 1389 تعداد ارسالها: 2 امتياز: 4 تشکر کرده: 0 تشکر شده 0 بار در 0 پست
ارسال شده در: سه شنبه، 7 ارديبهشت ماه ، 1389 16:32:37 موضوع مطلب:
دوست عزیز با قرار اینکه پورت دیتا پورت d و پورت آدرس شما پورت A وB میباشد این تور باید عمل کرد.
DIM TM AS BYTE
TM= این متغیر باری زمان خاموش و روشن شدن سگمنت میباشد که با تغییر در این متغییر میتوان همه سگمنتها را روشن کرد و در عین حال مقدار مورد نظر را رو سگمنت داریو کرد . یا به اصطلاح این متغیر جهت هماهنگی روشن و خاموش شدن سگمنتها با تناسب خطای چسم انسان تعریف شده و معمولا2 میلی پانیه خوب است و این 2 میلی ثانیه من خودم در 6 عدد سگمنت امتحان کرده ام حتی اگر کمبود پورد در مدار شما مسئله ایجاد کرد میتوانید با آیسی پلکسر4051 خط آدرس خودرا تغییر داده که در این جا 3 پایه از میکرو به جای 10 پایه از میکرو استفاده می شود .
DO
PortA.0 = 1 :PORTB.1=0
Portd = DATA
Waitms Tm
PortA.1 = 1 :PORTA.0=0
Portd = DATA
Waitms Tm
PortA.2 = 1 :PORTA.1=0
Portd = DATA
Waitms Tm
PortA.3 = 1 :PORTA.2=0
Portd = DATA
Waitms Tm
PortA.4 = 1 :PORTA.3=0
Portd = DATA
Waitms Tm
PortA.5 = 1 :PORTA.4=0
Portd = DATA
Waitms Tm
PortA.6 = 1 :PORTA.5=0
Portd = DATA
Waitms Tm
PortA.7 = 1 :PORTA.6=0
Portd = DATA
Waitms Tm
PortB.0 = 1 :PORTA.7=0
Portd = DATA
Waitms Tm
PortB.1= 1 :PORTB.0=0
Portd = DATA
Waitms Tm
LOOP
وضعيت: آفلاين 26 مهر ماه ، 1388 تعداد ارسالها: 69 امتياز: 142 تشکر کرده: 0 تشکر شده 6 بار در 5 پست
ارسال شده در: پنجشنبه، 9 آذر ماه ، 1391 19:03:41 موضوع مطلب:
bishoo مي نويسد:
ببخشید دستور port x=DATA یعنی چی؟ بعد با این دستورات تمام 7سگمنتا هم زمان یه عدد رو نمایش میدن؟
احتمالا data رو ی متغیر در نظر گرفتن و ی مقدار،مثلا 5 رو جایگذاری کردن و صرفا جهت تستیگ گذاشتن؛شما میتونید به جای هر Data از ی عدد یک رقمی از 0 تا 9 استفاده کنید اینجوری باید رو هر سون سگمنتتون بترتیب ی عدد داشته باشین.
البته اگه برنامه کاملش رو میذاشتن بهتر میشد نظر داد.
کلا روش کار شما اینه که مثلا پورت A دیتا قرار بدین و مثلا هشتا پین پورت B و دوتا پین پورت D رو بعنوان آدرس معرفی کنید ؛در مرحله بعد باید هر رقم از عدد مورد نظرتون(که 10 رقمی هست رو) تو ی متغیر قرار بدین و در نهایت هر عدد رو ب ترتیب یکان دهگان صدگان هزارگان و... به آدرس خودش ارسال کنید....