خوش آمديد!
10:53 جمعه 7 ارديبهشت ماه ، 1403
تغییر آدرس سایت
اطلاعیه مهم آدرس سایت از HLachini.com به آدرس HLachini.elewiz.com تغییر پیدا کرده است.
حتما لینکهای صفحات خود را به آدرس جدید تغییر دهید.
همچنین سایت جدیدی نیز بزودی به آدرس EleWiz.com راه اندازی خواهد شد.

مترجم گوگل

Google Translate

فروشگاه

نرم افزار


نرم افزار LTG
نرم افزار تولید کننده سورس بسکام تابلوروان 16 در 64
تعداد:


GIF Code Wizard
تبديل انيميشن به كد تابلوروان
تعداد:


مدارات آماده


ماژول Wav Player
Mono/Stereo 8khz-48Khz
تعداد:


پروگرامر هوشمندUSB برای AVR
پروگرامر AVR با قابلیت درج تمامی میکروکنترولرها از پین یک زیف سوکت و تامین کلاک جهت پوشش تمامی حالات فیوزبیت CKSEL
تعداد: 50


ليست محصولات
SMS خبرنامه

SMS

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

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

ایمیل - Email



تازه های سایت
· موتور همو پلار در 10 ثانيه[ 5 نظر - 15336 مشاهده ]
· نصب برنامه در Slax[ 9 نظر - 11691 مشاهده ]
· ورود به محيط Slax[ 16 نظر - 12130 مشاهده ]
· خواندن فایلهای MMC و SD با فرمت FAT16 , FAT32[ 33 نظر - 25960 مشاهده ]
· رله کنترل فاز Three Phase Monitor[ 35 نظر - 30052 مشاهده ]

[ موارد بیشتر در بخش اخبار و تازه ها ]
کیت نمایشگر سحرآمیز

تابلوروان: جاروب ستوني

در برنامه قبلی ما از روش جاروب سطری در برنامه نویسی تابلو روان استفاده کردیم. حال من تصمیم به توضیح روش جاروب ستونی در تابلو روان را دارم. و از همان مدار قبلی برای تست این روش استفاده میکنیم و فقط برنامه میکروکنترلر تغییر میکند.

در جاروب ستونی ما ابتدا نخستین ستون را فعال میکنیم و سپس ستون دوم فعال میشود و این روال ادامه پیدا میکند تا به ستون آخر برسیم. اگر به مدار ماتریس LED دقت کنید می‌بینید که ما آند LED های هر ستون را به هم متصل نموده‌ایم، پس جهت فعال نمودن هر سطر باستی آنرا به سطح ولتاژ مثبت متصل کنیم، از طرفی بدلیل اینکه در ماتریس LED، کاتد LED های هر سطر به هم متصل هستند، جهت روشن نمودن هر LED سطر متناظر با آن LED بایستی به سطح ولتاژ صفر متصل گردد. از همین جا روشن میشود که در طراحی جدول گلایف بایستی بر خلاف برنامه قبلی به ازای نقاطی که میخواهیم LED در آنجا روشن باشد، بایستی عدد صفر را قرار دهیم. به تصویر زیر دقت کنید.

 

جدول گلایف جهت جاروب ستونی در تابلو روان - طراح مهندس حسین لاچینی



در تصویر فوق من نحوه طراحی جدول گلایف را برای جاروب ستونی در تابلو روان نشان داده‌ام، که باعث به نمایش در آمدن کاراکتر A در ماتریس LED تابلو روان خواهد شد. همانطور که مشاهده میکنید به ازای نقاط فعال ( نقاطی که LED در آنجا روشن خواهد بود )  من مقدار بیت متانظر با آنرا صفر در نظر گرفتم و بالعکس در نقاط غیر فعال بیت متناظر را صفر در نظر گرفته‌ام. از طرفی اگر به یاد داشته باشد در برنامه قبلی تعداد بایت های مورد نیاز جهت نمایش کاراکتر A، هفت بایت بود ولی در اینجا ما فقط با استفاده از پنج بایت توانستیم همین کار را انجام دهیم!!!

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

http://www.hlachini.com/text2hex.wiz

 

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

 

Dim Col As Byte
Dim Scan As Byte

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

 بعد از موارد فوق در برنامه، به حلقه اصلی برنامه میرسیم. جهت ساخت این حلقه از دستور Do-Loop استفاده شده و بدلیل عدم ذکر هیچگونه شرطی در این دستور، دستورات موجود در بدنه این حلقه به تعداد بینهایت بار اجرا میگردند.

 

Scan = &B00000001

در ابتدای حلقه  Do-Loop متغییر Scan، مقدار دهی اولیه میشود تا سیگنال مورد نیاز جهت فعال نمودن سطر نخست تولید گردد. با توجه به ساختار ماتریس LED مورد استفاده در این تابلو روان ( اتصال آند LED های موجود در یک ستون به یکدیگر ) جهت فعال سازی یک ستون باید پین مربوط به آن ستون در میکرو یک شود و سایر پین های مربوط به دیگر ستونها، صفر شوند. همانطور نیز که مشاهده کردید در دستور فوق نیز بیت نخست متغییر Scan نیز یک شده که مربوط به ستون اول ماتریس است و سایر بیت‌ها نیز صفر شده‌اند. در نتیجه فقط ستون اول فعال خواهد شد و سایر ستونها غیر فعال هستند.

 در ادامه برنامه به حلقه For-Next میرسیم. متغییر  Col در این حلقه با  صفر مقدار دهی اولیه میشود و اجرای دستورات حلقه تا رسیدن  این متغییر به عدد 4 تعریف شده. لذا تعداد دفعات اجرای دستورات درون حلقه 5 بار خواهد بود. در واقع ما در درون این حلقه یک بار کامل کل ستونهای ماتریس را که پنج عدد میباشد جاروب میکنیم.

 

    For Col = 0 To 4
        Portd = Scan
        Rotate Scan , Left
        Portb = Lookup(col , Gelayof)
        Waitus 20
        Portb = &B11111111
    Next Col

در اولین دستور در حلقه For-Next  مقدار متغییر Scan در پورت D میکروکنترلر قرار میگیرد. تا ستون مورد نظر در ماتریس فعال شود. در دستور بعدی متغییر  Scan به اندازه یک بیت به سمت چپ شیفت چرخشی داده میشود. با این شیفت بیت 1 موجود در این متغییر به سمت چپ منتقل شده و جای آنرا یک بیت صفر پر میکند. بعنوان مثال در نخستین بار اجرای این دستور متغییر Scan از مقدار 00000001 به مقدار 00000010 تغییر میکند و در شیفت بعدی به 00000100 تا اینکه بعد از پنجمین شیفت بصورت 00010000 در می‌آید. که در پنجمین مرحله در واقع بیت پنجم، یک شده است که باعث فعال گشتن ستون پنجم ماتریس خواهد شد.

در این برنامه من قصد نمایش حرف A را داشتم، لذا جدولی با نام Gelayof در برنامه تعریف کردم .همانطور نیز که در زیر مشاهده میکنید، جهت ذخیره اطلاعات مربوط به حرف A من از پنج بایت استفاده نمودم و اطلاعات مربوط به هر ستون را در یک بایت قرار داده‌ام. از طرفی چون در این مدار ارتفاع ماتریس LED، هفت است فقط از هفت بیت اول هر بایت استفاده شده و بیت با ارزش آن یک شده. شما بنابر نیاز خود میتوانید با تغییر دادن وضعیت بیتها به نمایش هر شکل و یا کاراکتری بپردازید.

Gelayof:
Data &B10000011
Data &B11110101
Data &B11110110
Data &B11110101
Data &B10000011
Data &B11111111
Data &B11111111
Data &B11111111
Data &B11111111
Data &B11111111

 

حال اطلاعات این جدول مرحله به مرحله و ستون به ستون خوانده شده و در پورت B قرار میگیرد.این عمل توسط دستور Lookup در برنامه صورت میگیرد. در این دستور بایت مورد نظر ( اطلاعات ستون مورد نظر ) توسط متغییر Col تعیین میشود. بعد از قرار دادن اطلاعات مربوط هر ستون در پورت B به اندازه 20 میکرو ثانیه این اطلاعات در پورت نگاه داشته  میشود تا LED های موجود در آن ستون روشن بمانند و اثر آن در چشم بیننده باقی بماند. سپس تمامی پینهای پورت B یک میشود تا LED های این ستون خاموش شوند و اعمال فوق مجددا جهت ستون بعدی تکرار میگردد.

بعد از هر بار جاروب کامل تمامی ستونها، کنترل برنامه از حلقه For-Next خارج شده و مجددا متغییر Scan مقدار دهی اولیه شده تا برای جاروب مجدد آماده گردد. بله به همین سادگی شما یک نمونه ساده از تابلو روان را با روش جاروب ستونی ساختید!

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


'*********************************************
'* This Program Writing By : Hossein Lachini                    *
'* This, Displyed "A" on the Signe Board                          *
'* For to get more details visit :                                       *
'*                
www.HLachini.com                          *
'* Contact to me by :
eLachini@Gmail.com      *
'*********************************************

$regfile = "m8def.dat"
$crystal = 8000000

Config Portb = Output
Config Portd = Output

Dim Col As Byte
Dim Scan As Byte


Do
    Scan = &B00000001
    For Col = 0 To 4
        Portd = Scan
        Rotate Scan , Left
        Portb = Lookup(col , Gelayof)
        Waitus 20
        Portb = &B11111111
    Next Col
Loop
End 'end program

Gelayof:
Data &B10000011
Data &B11110101
Data &B11110110
Data &B11110101
Data &B10000011

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



کلمات کليدي :
ارسال شده در مورخه : يكشنبه، 3 شهريور ماه ، 1387 توسط admin  چاپ مطلب

مرتبط با موضوع :

 مثال تابلو 16 در 128 با مبدل آنلاین  [پنجشنبه، 11 شهريور ماه ، 1389]
 تابلو روان و اندازه گیری دما با SMT160  [چهارشنبه، 3 شهريور ماه ، 1389]
 انیمیشن در تابلوروان توسط 74HC595  [پنجشنبه، 7 مرداد ماه ، 1389]
 تابلوروان با میکرو 8051  [سه شنبه، 5 مرداد ماه ، 1389]
 نرم افزار آنلاین تبدیل متن به کد هگز  [چهارشنبه، 17 تير ماه ، 1388]
 برنامه نویسی اولین تابلوروان  [يكشنبه، 3 شهريور ماه ، 1387]
 بررسی اولین مدار عملی تابلو روان  [يكشنبه، 3 شهريور ماه ، 1387]
 جدول گلایف  [يكشنبه، 3 شهريور ماه ، 1387]
 جاروب یک در میان  [يكشنبه، 3 شهريور ماه ، 1387]
 اثر فلیکر  [يكشنبه، 3 شهريور ماه ، 1387]

نام شما: [ کاربر جدید ]

عنوان:
 
نظر:


:) ;) |) :- :( :0 :# *) ^) +)) :} |(( @: (:) :? :**

کد امنيتي : cal56ref
تايپ کد امنيتي : [ بازگشت ]

محرابی (امتیاز : 0)
توسط ميهمان در مورخه : دوشنبه، 28 شهريور ماه ، 1390
باسلام وخسته نباشید اگر ممکن هست نحوه استفاده تعداد زیاد led با استفاده از یکی از پورت های میکرو را با استفاده از ترانزیستور ونهوه اتصال آن در سایت قرار دهید ممنون.


[ ارسال جوابیه ]

امتیاز دهی به مطلب
امتیاز متوسط : 2.2
تعداد آراء: 10


لطفا رای مورد نظرتان را در مورد این مطلب ارائه نمائید :

عالی
خیلی خوب
خوب
متوسط
بد

موضوعات مرتبط

تابلوروان - تابلو روان

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