نظرسنجی: مطالب این پست تا چه حد کاربردی و حائز اهمیت می باشد؟
این نظرسنجی بسته شده است.
زیاد
91.67%
22 91.67%
متوسط
8.33%
2 8.33%
کم
0%
0 0%
اصلا
0%
0 0%
در کل 24 رأی 100%
*شما به این گزینه رأی داده‌اید. [نمایش نتایج]

امتیاز موضوع:
  • 1 رأی - میانگین امتیازات: 5
  • 1
  • 2
  • 3
  • 4
  • 5
پروژه صنعتی با lcd رنگی
#1
Lightbulb 
با سلام خدمت دوستان
من یه پروژه صنعتی داشتم که چند ماهی روش کار کردم و در نهایت پس از گذراندن هفت خان رستم تونستم پروژم رو به جاهای مطلوبی برسونم ولی مسئله ای که باعث شد من این موضوع رو ایجاد کنم اینه که تو اینترنت اطلاعات خیلی کمی در مورد نحوه راه اندازی lcd های رنگی صنعتی وجود داره و در واقع هر کسی نمی تونه به سمت همچین پروژه هایی بره و وقت روش صرف کنه!
معمولا الان این طور باب شده که هرکی می خواد lcd رنگی راه اندازی کنه میره سراغ بردهای آماده ARM9 و ARM11 که از چین میان. ولی این بردها چندتا ایراد بزرگ دارن. اول اینکه اون طور که ما می خواهیم طراحی نشده اند مثلا دارای امکانات زیادی هستند که به درد ما نمیخورند! یا خیلی وقت ها امکاناتی که ما می خواهیم رو ندارند! معمولا قیمت بالایی دارند و تکنولوژی ساخت اونها(برد چند لایه با دقت 0.1 میلیمتر و ...) در ایران وجود نداره!
من تو این پست می خوام نحوه راه اندازی یه پروژه صنعتی(پروژه خودم) با lcd رنگی و سنسور دما و... رو به نحو ساده که هم قطعاتش در ایران موجود باشه و هم مدار چاپیش قابل طراحی و ساخت و مونتاژ باشه خدمتتون عرض کنم شاید به دردتون بخوره.
اول از همه باید به فکر راه اندازی lcd باشیم که به دو صورت امکان پذیره. 1.دیتاشیت lcd رو بذاریم جلومون و زمان بندی ارسال دیتا و فرکانسهای horizontalو vertical رو ایجاد کنیم و ... که این روش اصلا پیشنهاد نمیشه چون بیش از حد وقت گیر و سخته! 2.دنبال یه میکرو بگردیم که lcd controller داشته باشه! من خودم همین کار رو کردم.
تنها میکرویی که من تونستم پیدا کنم که بسته بندی اون BGA نباشه و در ایران موجود باشه و قیمتش هم مناسب باشه آی سی LPC2478 هستش. با فرکانس کاری 72 مگاهرتز و یه عالمه امکانات صنعتی و به درد بخور(به دیتاشیت آی سی مراجعه شود)! با انتخاب این آی سی یه مرحله کار ما ساده تر شد و وظیفه ایجاد تمامی فرکانسها و زمانبندیها به عهده lpc2478 می باشد.
این میکرو از خانواده ARM7 هستش و ساخت شرکت فیلیپس(nxp) هست. lpc2478 می تونه تمامی lcd های TFT و STN رو در تمامی فرمت های 1bit تا 24bit راه اندازی کنه. ما در این پست یه lcd tft 24bit رو راه اندازی خواهیم کرد.
این فعلا مقدمه ای بود بر پروژمون چنانچه علاقه مند باشید و در نظر سنجی شرکت نمایید پروژه مون رو ادامه خواهیم داد. Rolleyes


فایل‌(های) پیوست شده
.pdf   LPC2478.pdf (اندازه: 751.04 KB / تعداد دفعات دریافت: 537)
پاسخ
 سپاس شده توسط polestar ، elcit ، morteza_stp ، soleares ، mbntechco ، kasaee ، electronicnarm2010 ، nano ، Novice ، MRGH ، SAJAD-G ، ehsanbagheri ، z.f.k ، ARGHASHY
#2
با عرض سلام مجدد از وقفه ایجاد شده در ادامه موضوع پوزش می خوام.
شاید این سوال برای خیلی ها وجود داشته باشه که TFT LCD چطور کار میکنه؟
روند کلی کارکرد lcd شبیه تلویزیون های crt هست (دوستانی که رشته شون الکترونیکه و درس تلویزیون رو پاس کردن بعد از شرح عملکرد lcd متوجه این شباهت خواهند شد!) در Crt یه فرکانس رفرش افقی و یه فرکانس رفرش عمودی داریم . اطلاعات تصویر با فرکانس مشخصی به صورت سریال به تلویزیون ارسال می شه و تلویزیون بر اساس فرکانس افقی این اطلاعات رو در صفحه می چینه و پس از فرمان پایان سطر به ابتدای سطر می آد و پس از پایان یک صفحه کامل فرمان پایان صفحه دریافت میشه.
در lcd هم این فرکانسها وجود دارن و یه تعداد زمانبندی های دیگه هم هستند که شرح اونها خیلی مفصله و علاقه مند ها می تونند به دیتاشیت lcd ها مراجعه کنند.
lcd های موجود در بازار می شه گفت دو نوع اند:
lcdهایی که درایور دارند و lcdهایی که درایور ندارند. از lcd هایی که درایور دارن میشه به lcd n96 چینی موجود در بازار اشاره کرد که به راحتی قابل راه انداز حتی با AVR هم هستند.
این نوع lcd ها داخلشون آی سی مخصوصی دارند که فرکانسهای افقی و عمودی و سایر زمانبندیها رو ایجاد میکنه و یه ram هم داره که اطلاعات رو تو اون نگه میداره و نیازی نیست که شما هر لحظه دیتا بهش بدید.
اما lcdهایی که درایور ندارند و مد نظر ما هستند درست مثل تلویزیون که با توقف دریافت اطلاعات تصویرشون بهم میریزه اینها هم به محض قطع شدن اطلاعات تصویرشون قاطی میشه و بهم میریزه! شاید براتون پیش اومده باشه که گوشیتون هنگ کنه و ببینید که تصویر lcd قاطی میشه و رنگها به هم میریزند وکم کم صفحه تاریک و تاریک میشه و معمولا پس از سه یا چهار ثانیه پس از این اتفاق گوشی به طور سخت افزاری ریست میشه. این به علت هنگ سخت افزاری گوشی هست که قسمت lcd controller کاملا متوقف می شه و هیچ اطلاعاتی به lcd نمیرسه ودر نتیجه تصویر قاطی میشه.
این lcd ها داخلشون آی سی کنترولر و RAM ندارند و باید در ثانیه چندین بار اطلاعات رو دوباره دریافت کنند(15 فریم و بیشتر) تا تصویر ثابت به نظر بیاد. برای راه اندازی این lcd ها حتما باید از lcd controller استفاده بشه تا فرکانس ثابت و در نتیجه نرخ ارسال اطلاعات ثابت و در نهایت تصویر ثابتی داشته باشیم.
خیلی ها شاید تصمیم دارند که تو پروژشون انیمیشن و فیلم هم داشته باشند! اما باید بگم که این کار ممکن نیست مگر اینکه فریم بر ثانیه رو خیلی بیارین پایین(در حد 4 فریم بر ثانیه). این به علت سرعت پایین میکرو هستش که برای نمایش فیلم کافی نیست و سرعت پردازش لازم رو نداره . برای نمایش فیلم و انیمیشن باید سرعت پردازشی بیش از 200MHZ داشته باشید. به عنوان مثال آی سی S3C2440 با سرعت 440MHZ می تونه کافی باشه!
lcd ها معمولا 24bit هستند و از ترکیب رنگ RGB استفاده می کنند در نهایت 6پین برای هر رنگ در اونها مد نظر قرار گرفته شده و بقیه پین ها پینهای کنترلی و power هستند. در lcd controller lpc2478 پایه هایی متناظر با lcd وجود دارن که مستقیما به پایه های دیتای lcd متصل می شوند. حداکثر رزولوشن پشتیبانی شده توسط lpc2478 برابر 1024*768 پیکسل می باشد که برای ما کافی هست.
برای راه اندازی lcd ما به external Ram هم نیاز داریم که علت و روش استفاده از اون و برنامه نویسی برای lpc2478 رو در پست های بعدی بیان خواهم کرد.
منتظر انتقادات و پیشنهادات ونظرات شما هستم.
با تشکر.
دیتاشیت(TFT LCD):
http://www.4shared.com/office/xM95rZTB/MI0700LT.html
پاسخ
 سپاس شده توسط morteza_stp ، heidari ، soleares ، mbntechco ، polestar ، nano ، Novice ، MRGH ، mahepesar ، SAJAD-G ، ehsanbagheri ، z.f.k ، baharkhaneh
#3
برادر ضمن عرض سپاس از اینکه به ساده ترین شکل ممکن مطالب رو بیان فرمودین،لطفا ادامه بدین استفاده کنیم.ممنونWink
پاسخ
 سپاس شده توسط arm9mcu
#4
با عرض سلام خدمت دوستان
ببخشید بازهم دیر شد کنکور داشتیم و ... دیگه خودتون می دونید! موضوع رو ادامه می دیم!
فرض کنید یک lcd هفت اینچ با رزولوشن 800 در 480 پیکسل داریم و اونرو به صورت 24 بیت می خواهیم راه اندازی کنیم.
در ابتدا به یک فضا در رم به اندازه 800*480*24= 9216000 بیت (1152000 بایت) برای نگه داری اطلاعات یک فریم از تصویر نیاز داریم که این فضا در رم داخلی lpc2478 میسر نیست!
lpc2478 دارای یک lcd controller هست که یک DMA مجزا برای انتقال اطلاعات از حافظه رم به قسمت lcd controller دارد. این DMA - direct memory Access یک قسمت سخت افزاری از میکرو هستش که همون طور که می دونید با داشتن آدرس اطلاعات مبدا و مقصد و حجم اطلاعات ارسالی اونها رو از مبدا به مقصد کپی می کنه و بنابر این چون به صورت مجزا از cpu کار می کنه وقت cpu برای انتقال اطلاعات تلف نمی شه.
DMA مربوط به lcd controller یه آدرس مبدا متغیر داره که Lcd UpBase نام داره و در واقع آدرس شروع اطلاعات تصویر در رم هستش. شما هر چیزی که در این محدوده از رم بنویسید (با فرمت خاص به صورت0xbbggrr) بعدش dma اونها رو به قسمت lcdcontroller انتقال می ده و قسمت lcd controller اونها رو نمایش میده.
در اینجا ما از دو SD RAM برای ram اکسترنال استفاده کردیم که کد اون MT48LC16M16A2P-75 هست که شما می تونید اطلاعات اونرو که به صورت چند بلوک و چند بیتی هست رو از دیتاشیت مربوطه مطالعه کنید. این آی سی 16 بیت هست ولی ما به رم 32 بیت نیاز داریم در نتیجه ما از دو عدد sd ram استفاده کردیم و 16 بیت بالا (MSB) رو در یکی و 16 بیت پایین (LSB) رو در یکی دیگه ذخیره می کنیم. حداکثر فرکانس bus این رم ها حداکثر حدود 150MHZ هست که البته ما امکان تولید 150MHZ رو نداریم و با اون سرعت نمی تونیم اطلاعات رد و بدل کنیم ولی اگه یه زمانی در یه پروژه ای تونستید با یه همچون میکروی سرعت بالایی اونرو راه اندازی کنید , جوابگوی شما خواهد بود!
ما در پروژمون سرعت بالاتر از چند مگاهرتز رو نخواهیم داشت که این خودش دلایل مختلفی داره. اول اینکه سرعت باس lpc2478 این اجازه رو به ما نمیده که سرعت خیلی بالایی داشته باشیم و طراحی اون hi speed نیست. دوما طراحی pcb ما هم hi speed نیست و در صورت افزایش فرکانس افزایش تلفات و نویز بسیار بالا و از بین رفتن اطلاعات رو خواهیم داشت! بنابراین به همین سرعت پایین که جوابگوی ما هم هست بسنده خواهیم کرد.
برای شروع مرحله عملی شما باید ابتدا به صورت مقدماتی کار با lpc2478 رو انجام بدید و بعد کم کم بیاید بالا تا به راه اندازی lcd controller و بالاترها برسید. نرم افزاری که ما استفاده میکنیم keil هست و همون طور که میدونید با زبان c هستش.
شما ابتدا به یه مینیمم (minimum) برد برای راه اندازی اولیه میکرو نیاز دارید که برای این کار میتونید یه برد مبدل برای میکرو بسازید و روی برد برد اونرو آزمایش کنید. برای طراحی pcb و بستن مدار شما نیاز به یه نقشه شماتیک دارید که من قبلا از سایت http://www.thaieasyelec.com/اونرو تهیه کردم و در فایلهای ضمیمه هستش.
شما ابتدا هر چیز اضافی رو از نقشه حذف کنید مثل آی سی راه اندازی تاچ اسکرین و رم ها و آی سی مربوط به بک لایت و سوکت اتصال lcd و... تا نقشه به حداقل ممکن برسه و برای شروع مقدماتی آماده بشه. بعد pcb رو از روی نقشه طراحی و چاپ کنید (پیشنهاد می کنم خودتون pcd رو چاپ نکنید و به شرکت های با دقت بالا بدید که این کار رو بکنند تا هم پولتون هدر نره و هم وقتتون) .
در قسمت پروژه های تکمیل شده ARM من یه برنامه blinky test یا همون چشمک زن گذاشتم که توسط اون می تونید مدارتون رو تست کنید. اگه بخواهید می تونم نقشه شماتیک اولیه خودم رو براتون بذارم البته اول باید پیداش کنم Big Grin .


فایل‌(های) پیوست شده
.pdf   sch_bs_sun7_rev_B.pdf (اندازه: 96.25 KB / تعداد دفعات دریافت: 297)
.pdf   256MSDRAM.pdf (اندازه: 2.45 MB / تعداد دفعات دریافت: 353)
پاسخ
 سپاس شده توسط nano ، medusa ، mbntechco ، Novice ، polestar ، MRGH ، SAJAD-G ، mmbmmb20 ، z.f.k
#5
سلام
چه خبر؟ تو این مدت کاری از پیش بردید؟ با چه مشکلاتی مواجه شدید؟
اگه کسی دست به کار شده لطفا مراحل کاریش رو اینجا بیان کنه تا دیگران هم استفاده کنند.
من می خوام ادامه پروژه رو بذارم ولی نمی دونم تا کجا پیش رفتید. آیا آماده ادامه هستید؟
از مراحل قبلی نتیجه ای حاصل شده؟ لطفا هر کس هر چقدر کار کرده اینجا بیان کنه تا هم مسائلی که در این تاپیک فراموش شده و بررسی نشده یادآوری بشه و هم اینکه اگه لازم بود بریم سراغ مراحل بعدی.
از اساتید انجمن هم خواهش می کنم که ما رو در این کار یاری کنند و موضوع یک طرفه جلو نره!
باتشکر Smile
پاسخ
 سپاس شده توسط electronicnarm2010 ، polestar ، SAJAD-G ، z.f.k
#6
سلام آقا چرا ادامه نمیدیHeartHeartHeartHeartHeart
پاسخ
 سپاس شده توسط arm9mcu
#7
با سلام
من یک سوالی دارم که امیدوارم دوستان جواب بدن
من یک ال سی دی 2.8 اینچی خریدم خواستم راه اندازش کنم که متاسفانه یک اسپری که باهاش کار می کردم به پشت چسب ال سی دی
(همون که مثل یک کاغذ چسبنده هست و به پشت ال سی دی چسبیده شده ) نفوذ کرد و اون کاغذ چسبنده رو خیس کرد
الان وقتی بک لایت ال سی دی رو روشن می کنم اسپری نفوذ کرده دیده می شود
می خواستم بدونم ایا ال سی دی بدرستی کار خواهد کرد یا بندازم دور
ایا این مشکل موجب خرابی ال سی دی میشود یا نه
و....
لطفا راهنمایی کنید که بیهوده وقتم تلف راه اندازیش نکنم
پاسخ
 سپاس شده توسط polestar ، arm9mcu
#8
(3-8-1391، 11:43 عصر)pirozy نوشته است: با سلام
من یک سوالی دارم که امیدوارم دوستان جواب بدن
من یک ال سی دی 2.8 اینچی خریدم خواستم راه اندازش کنم که متاسفانه یک اسپری که باهاش کار می کردم به پشت چسب ال سی دی
(همون که مثل یک کاغذ چسبنده هست و به پشت ال سی دی چسبیده شده ) نفوذ کرد و اون کاغذ چسبنده رو خیس کرد
الان وقتی بک لایت ال سی دی رو روشن می کنم اسپری نفوذ کرده دیده می شود
می خواستم بدونم ایا ال سی دی بدرستی کار خواهد کرد یا بندازم دور
ایا این مشکل موجب خرابی ال سی دی میشود یا نه
و....
لطفا راهنمایی کنید که بیهوده وقتم تلف راه اندازیش نکنم
با سلام
نه دوست من مشکلی به ال سی دی به وجود نمیاد

به همین سادگیAt
اگر مطلبی مفید بود سپــــاس واگر مفیدتر بود دادن اعتبار را فراموش نکنید dont
به پيغام خصوصي ها فقط در صورت واقعا خصوصي بودن پاسخ داده خواهد شد Confused

پاسخ
 سپاس شده توسط pirozy ، arm9mcu
#9
(4-8-1391، 01:18 عصر)polestar نوشته است:
(3-8-1391، 11:43 عصر)pirozy نوشته است: با سلام
من یک سوالی دارم که امیدوارم دوستان جواب بدن
من یک ال سی دی 2.8 اینچی خریدم خواستم راه اندازش کنم که متاسفانه یک اسپری که باهاش کار می کردم به پشت چسب ال سی دی
(همون که مثل یک کاغذ چسبنده هست و به پشت ال سی دی چسبیده شده ) نفوذ کرد و اون کاغذ چسبنده رو خیس کرد
الان وقتی بک لایت ال سی دی رو روشن می کنم اسپری نفوذ کرده دیده می شود
می خواستم بدونم ایا ال سی دی بدرستی کار خواهد کرد یا بندازم دور
ایا این مشکل موجب خرابی ال سی دی میشود یا نه
و....
لطفا راهنمایی کنید که بیهوده وقتم تلف راه اندازیش نکنم
با سلام
نه دوست من مشکلی به ال سی دی به وجود نمیاد

به همین سادگیAt
ممنون از جوابتون
At
پاسخ
#10
دوستان من السی دی "5 اینچی رو با lpc1788 مخام را بندازم یکی از دوستان در جای دیگه ای به من گفت (چی گفت؟) فرمودن : فاصله میکرو یا cpu تا RAM رم باید حد اقل باشه!!!
چرا؟؟؟؟؟
دوستم بالا فرمودن فرکانس کاری بالاست در مسافت های تولانی تلفات زیاد میشه خط انتقال در فرکانس های بالا خاصت سلفی خازنی پیدا میکنه!!!!!!!! تطبیق امپدانس و درس مخابرات و خطوط انتقال !!!!!!!!!!!!!!!
حالا پروژه در شروع و ازمایشی هستش و تا صنعتی شدن راه طولانی داریم حالا این مانع فرکانس کاری بالای مدار رو چکار کنیم؟؟؟
دوستان بالا فرمودن : فرکانس کاری رو بیاریم پایین؟؟
اساتید بگن چه کارایی برای این کار باید انجام بدیم؟ کریستال 12 مگاهرتزی و 32.76 کیلوهرتزی رو باید مقادیرش رو چه مقداری بزاریم؟؟؟؟
صرفا جهت اطلاع: خودروی پراید با سرعت 3کیلومتر در ساعت هم میتونه حرکت کنه ولـــــــــــــی!!!!! خودروهای پشت سرش رو چیکار کنیم باعث ترافیک نمیشه؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟
اساتید بگن چه کارایی برای این کار باید انجام بدیم؟ کریستال 12 مگاهرتزی و 32.76 کیلوهرتزی رو باید مقادیرش رو چه مقداری بزاریم؟؟؟؟
داخل برنامه تغییراتی نمیخاد؟؟؟؟؟؟؟؟؟؟؟
خدا قوت یا علی....
هَل مِن ناصر یَنصُرنی
هيهات مناالذلة‌
ذلت وخواري به مراتب ازما(اهل بيت‌)دور است‌.
"...ولِلّه‌ِ العِزَّة‌ُ ولِرَسولِه‌ِ ولِلمُؤمِنين‌َ ولـَكِن‌َّ المُنـَفِقين‌َ لايَعلَمون‌(منافقون‌8)وعزت مخصوص خداورسول اوومؤمنان است‌ ولي منافقان نمي‌دانند."

پاسخ
 سپاس شده توسط polestar ، MRGH


موضوعات مرتبط با این موضوع...
موضوع نویسنده پاسخ بازدید آخرین ارسال
  برد صنعتی ARM محسن سینا 14 5,672 10-11-1396، 03:00 عصر
آخرین ارسال: sakhtemoon
  پروژه های تکمیل شده ARM polestar 1 3,586 14-2-1391، 12:00 عصر
آخرین ارسال: arm9mcu

پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 1 مهمان