اطلاعیه

Collapse
No announcement yet.

N96 LCD

Collapse
این موضوع برجسته شده است.
X
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    #16
    پاسخ : N96 LCD

    سلام به همه دوستان .
    میشه این تابع tftlcd_init_highspeed رو توضیح بدید چطور کار میکنه؟

    دیدگاه


      #17
      پاسخ : N96 LCD

      دوست عزیز gbg لطفا کتابخونه ای که ازش جواب گرفتید برای فونت فارسی رو بزارید

      بخدا من لازمش دارم

      نمیدونم باید چی کار کنم :angry: :angry: :angry: :angry:

      دیدگاه


        #18
        پاسخ : N96 LCD

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

        دیدگاه


          #19
          پاسخ : N96 LCD

          سلام به همه دوستان
          من میخوام روی یه عکس بنویسم و بعضی از نوشته ها پاک بشن یه چیز جدید باز نوشته بشه. میخواستم ببینم دستوری نیست که فقط نوشته رو پاک کنه؟
          در ضمن این تابع tftlcd_init_highspeed چیکار میکنه؟
          ممنون

          دیدگاه


            #20
            پاسخ : N96 LCD

            خیلی ممنون که جوابمو میدید
            ولی ناامید نمیشم بازم میپرسم تابع tftlcd_putcharبه نظرم مشکل داره من یه متغیر از نوع char تعریف کردم میخوام اعداد داخل این متغیر نشان داده بشه ولی شکلای عجیب غریبی نشون میده
            tftlcd_putchar(x,BLACK,BLUE,1)
            اصلا برای نشان دادن اعداد داخل یک متغیر از این تابع استفاده میشه؟
            خواهشا راهنمایی کنید

            دیدگاه


              #21
              پاسخ : N96 LCD

              از highseed برای نمایش عکس یا پر کردن صفحه استفاده میشه
              توی پرانتز روبروش باید به شکل زیر بنویسید
              (طول تصویر,نقطه شروع در y,عرض تصویر,نقطه شروع در x)
              tftlcd_init_hispeed(0,100,0,100);
              برا مثال بالا نقطه شروع 0و0 هست و طول و عرض مورد نظر هم 100
              حالا با دستور زیر میتونی پیکسل به پییکسل رنگارو روی lcd نشون بدی
              TFTLCD_CS_LOW;
              TFTLCD_WR_LOW;
              TFTLCD_DATAPORT_CLEAR;
              _TFTLCD_DATAPORT_SODR_ = (a << TFTLCD_DATAPORT_OFFSET);
              TFTLCD_WR_HIGH;
              TFTLCD_CS_HIGH;
              که a متغییر حاوی مقدار رنگ هست

              برای نمایش متغییر هم باید ابتدا
              char b[10]
              sprintf(b,"%u",a)
              tftlcd_puts(b,BLACK,BLUE,1)
              استفاده کنی که a متغیره مورد نظر هست

              دیدگاه


                #22
                پاسخ : N96 LCD

                نوشته اصلی توسط علیرضا روزیطلب
                char b[10]
                sprintf(b,"%u",a)
                tftlcd_puts(b,BLACK,BLUE,1)
                استفاده کنی که a متغیره مورد نظر هست
                واقعا دستت درد نکنه آقای روزیطلب عالی بود اما میشه این دستور sprintf رو توضیح بدید؟ چون درسته عمل میکنه اما من توی برنامه م از سیستم عامل rtx استفاده کردم این دستور باعث شده سیستم عامل دیگه کار نکنه. !!!!!!!!!!!!!!!!!!

                دیدگاه


                  #23
                  پاسخ : N96 LCD

                  نوشته اصلی توسط علیرضا روزیطلب
                  از highseed برای نمایش عکس یا پر کردن صفحه استفاده میشه
                  توی پرانتز روبروش باید به شکل زیر بنویسید
                  (طول تصویر,نقطه شروع در y,عرض تصویر,نقطه شروع در x)
                  tftlcd_init_hispeed(0,100,0,100);
                  برا مثال بالا نقطه شروع 0و0 هست و طول و عرض مورد نظر هم 100
                  حالا با دستور زیر میتونی پیکسل به پییکسل رنگارو روی lcd نشون بدی
                  TFTLCD_CS_LOW;
                  TFTLCD_WR_LOW;
                  TFTLCD_DATAPORT_CLEAR;
                  _TFTLCD_DATAPORT_SODR_ = (a << TFTLCD_DATAPORT_OFFSET);
                  TFTLCD_WR_HIGH;
                  TFTLCD_CS_HIGH;
                  من فکر میکردم دستور hispeed باعث میشه عکس سریع تر load بشه پس این دستور بادستورر write picture چه فرقی میکنه؟

                  دیدگاه


                    #24
                    پاسخ : N96 LCD

                    دستور highspeed سرعت رو افزایش میده برای اینکه متوجه بشید فقط کافی هست که تعداد خطای این دستور رو با تعداد خط هایwrite picture مقایسه کنید دستور write pic اول خودش تو یه حلقست بعد میره توی write pixel و ... اما این تقریبا مستقیم به پورت مقدار میده
                    spritnf هم برای تغییر فرمت متغیر به char* استفاده شده تا lcd بتونه نشونش بده .فکر نکنم انقدر سنگین باشه که حتی با rtx هنگ کنه oo:
                    در ضمن از هیدر stadio.h هم باید برای این دستور استفاده کنید

                    دیدگاه


                      #25
                      پاسخ : N96 LCD

                      :wow: درست شد :wow:
                      مشکل از stak size booood یکم زیادش کردم درست شد
                      خیلی خیلی ممنون

                      دیدگاه


                        #26
                        پاسخ : N96 LCD

                        نوشته اصلی توسط علیرضا روزیطلب
                        حالا با دستور زیر میتونی پیکسل به پییکسل رنگارو روی lcd نشون بدی
                        TFTLCD_CS_LOW;
                        TFTLCD_WR_LOW;
                        TFTLCD_DATAPORT_CLEAR;
                        _TFTLCD_DATAPORT_SODR_ = (a << TFTLCD_DATAPORT_OFFSET);
                        TFTLCD_WR_HIGH;
                        TFTLCD_CS_HIGH;
                        آقای روزیطلب ببخشید متوجه نشدم بعد از اینکه دستور hispeed رو نوشتم . چطوری پیکسل هارو پر کنم؟ این دستور هایی که نوشتید چی هستن؟ باید خودم یه حلقه درست کنم و آرایه پیکسل های عکس رو به lcd بفرستم؟ یا اینکه برای این کار دستور خاصی هست؟

                        دیدگاه


                          #27
                          پاسخ : N96 LCD

                          بله باید یک حلقه درست کنید به اندازه تمام پیکسل ها و رنگ پیکسل رو توی متغییر a بریزید.در ضمن این دستور طوری عمل میکنه که وقتی از نقطه شروع حرکت کرد به عرض تصویر که رسید خود به خود میره به خط بعدی و این روندو به اندازه طول تصویر انجام میده و لازم نیست مختصات پیکسلارو بدید.

                          دیدگاه


                            #28
                            پاسخ : N96 LCD

                            ممنون آقای روزیطلب ، چه جالب شد یعنی دیگه لازم نیست image.h رو به پرژه ادد کنم فقط اون رنگ هارو کپی کنم توی یه آرایه؟ اگه میشه یه مثال بزارید مکمنون میشم . یا یه پرژه ای که خودتون اینجوری انجام دادین بزارید که کامل متوجه بشم.

                            دیدگاه


                              #29
                              پاسخ : N96 LCD

                              سلام آقایون خسته نباشیددد!
                              من ازat91sam7s64 استفاده می کنم که فکر نکنم به سوالم زیاد مربوط باشه سوال: چرا وقتی از تابع lcdclear استفاده می کنم میرو هنگ میکنه ولی وقتی برش می دارم از تو برنامه درسا به کارش ادامه میده؟؟؟ هردم مشکل داره؟ یا؟؟ :cry2:
                              تشکر لازمه! دکمه رو فشار بده دیگه!!
                              موفق باشیدددددد!!

                              دیدگاه


                                #30
                                پاسخ : N96 LCD

                                خود عکس که توی یک ارایه هست.بله شما میتونید استفاده کیند.یک مثال ساده از این دستور
                                کد:
                                			tftlcd_init_hispeed(0,200,0,200);
                                
                                					 for (i=0;i<40000;i++){
                                 		 				TFTLCD_CS_LOW;
                                				TFTLCD_WR_LOW;
                                				TFTLCD_DATAPORT_CLEAR;
                                				_TFTLCD_DATAPORT_SODR_ = (0x1f<< TFTLCD_DATAPORT_OFFSET);
                                				TFTLCD_WR_HIGH;
                                				TFTLCD_CS_HIGH;	
                                				}
                                توی این برنامه یک مربع قرمز برقی میشکه
                                0x1f= رنگ قرمز
                                یکی از دوستان هم توی این تایپیک سرعت نمایشو بیشتر کرده
                                http://www.eca.ir/forum2/index.php?topic=52211.180


                                سلام آقایون خسته نباشیددد!
                                من ازat91sam7s64 استفاده می کنم که فکر نکنم به سوالم زیاد مربوط باشه سوال: چرا وقتی از تابع lcdclear استفاده می کنم میرو هنگ میکنه ولی وقتی برش می دارم از تو برنامه درسا به کارش ادامه میده؟؟؟ هردم مشکل داره؟ یا؟؟ :cry2:
                                والا من تا حالا همچین مشکلی نداشتم اما مطمئن باش که بردت درست هست احتمال زیاد یا مشکل از at91sam67s64 هست که از اینجا دانلود کن
                                http://www.keil.com/dd/chip/3815.htm
                                اگه نشد توی فایل های مجله یکی از هیدر های sam7.s توی هیدر خود sam7.s برنامت بذار ببین چی میشه
                                ولی در کل میتونی از یک مربع سفید استفاده کنی

                                دیدگاه

                                لطفا صبر کنید...
                                X