اطلاعیه

Collapse
No announcement yet.

فایل اکسپلورر mmc به وسیله arm

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    پاسخ : فایل اکسپلورر mmc به وسیله arm

    یکم با هدر هاش ور برو احتمالا درست میشه

    دیدگاه


      پاسخ : فایل اکسپلورر mmc به وسیله arm

      آقا رامین ببخشید گیر من فقط همین یدونه!
      سوال: فایل SPI_SAM7X.cبرای sam7s هم هست یانه یعنی باید بجای این چی بزارم؟؟؟ چون هرچی باهاش ور میرم بازم ارور!
      اگه میشه همین یدونه رو حل کنید ! :mrgreen: :angry:
      تشکر لازمه! دکمه رو فشار بده ديگه!!
      موفق باشيدددددد!!

      دیدگاه


        پاسخ : فایل اکسپلورر mmc به وسیله arm

        نه برای SAM7S نیست و باید خودت طوری تغییرش بدی که باهاش بشه با SPI سری S کار کرد. فکر نکنم رجیستر هاش فرق یکنن ولی ممکنه پایه هاش متفاوت باشه.

        کلا چرا خودتو اذیت میکنی . پایه های SAM7S رو نگاه کردی ببینی میتونی LCD N96 با 21 پین که 16 تاش باید پشت سر هم باشن ، MMC با 4 پایه منحصر به فرد و 4 تا پین برای تاچ رو روی یدونه پورت SAM7S جا بدی ؟ اگرم شد VS رو چیکار میکنی :mrgreen:

        دیدگاه


          پاسخ : فایل اکسپلورر mmc به وسیله arm

          سلام .میشه یکم راجب به قسمت bmp پروژه توضیح بدید که فکر کن این قسمت از برنامه میشه
          کد:
          while ((ch = fgetc (f)) != EOF) { 
          			index++;
          			if (index == 11) bmp_code_index = ch;
          			else if (index == 19) image_wi += ch;
          			else if (index == 20) image_wi |= (ch<<8);
          			else if (index == 23) image_hi += ch; 
          			else if (index == 24) image_hi |=(ch<<8);
          			else if (index == 29) image_color = ch;
          			else if (index == 30) {	// end reguire description . init LCD
          
          				if (image_wi>240 | image_hi>320 | (image_color !=24 && image_color !=16)){
          					tftlcd_gotoxy(0,1);	
          					sprintf(buffer,"%i * %i 0x%xbit",image_wi,image_hi,image_color);
          					tftlcd_puts(buffer,BLACK,RED,1);
          					tftlcd_gotoxy(0,2);
          					tftlcd_putsf("This Format Not Supported",BLACK,RED,1);
          					return 0;
          				}else {
          
          					tftlcd_init_hispeed(0,image_wi-1,0,image_hi-1);
          					TFTLCD_RS_HIGH;
          				}	
          			}else if (index>bmp_code_index){
          				lcd_data = 0;
          				if (image_color == 24) {
          					lcd_data = (ch&0xF1)<<8;
          					lcd_data |= (fgetc(f)&0xFC)<<4;
          					lcd_data |= (fgetc(f))>>3;
          				}else if (image_color == 16) {
          					lcd_data = ch << 8;
          					lcd_data |= fgetc(f);
          				}
          				TFTLCD_CS_LOW;
          				TFTLCD_WR_LOW;
          				TFTLCD_DATAPORT_CLEAR;
          				_TFTLCD_DATAPORT_SODR_ = (lcd_data << TFTLCD_DATAPORT_OFFSET);
          				TFTLCD_WR_HIGH;
          				TFTLCD_CS_HIGH;	
          			} 
          		}
          		sprintf(buffer,"%i * %i 0x%xbit",image_wi,image_hi,image_color);
          		tftlcd_gotoxy(0,19);
          		tftlcd_puts(buffer,BLACK,RED,1);	
          	}
           	fclose (f); /
          این فایل رو چجوری میشه پیکسل به پیکسل خوند و نشون داد .زیاد راجب به این فرمت اطلاعات ندارم.ممنون میشم راهنمایی کنید

          دیدگاه


            پاسخ : فایل اکسپلورر mmc به وسیله arm

            سلام.من کلی روی تغییر اندازه عکس کار کردم و با رجیستر های LCD ور رفتم یه جورایی جواب گرفتم ولی اصلا ایده آل نبود.
            با مطالبی که توی دیتا شیت LCD در صفحات 57و58و71و72و103و104و105 بود فهمیدم میشه عکس تا ابعاد 960*1440 رو نشون داد. :applause: ولی من وقتی این کارو کردم عکسو که 1/2 میکردم 2 با نشون میداد و خیلی کوچکتر از 1/2 هم بود :angry:
            کسی میتونه کمک کنه؟ :cry2: :sad:
            زندگی یعنی امید و حرکت
            کارهایتان را آغاز کنید، توانایی انجام دادنش را بدست خواهید آورد
            سؤالاتی که در انجمن قابل طرح شدن هستند در پیام خصوصی جواب داده نمی شود.
            برای تشکر از دکمه تشکر کنار هر پست استفاده کنید، پست هایی که فقط حاوی تشکر هستند پاک می شوند.
            به دلیل کار بر روی پایاننامه و دفاع، مدتی نیستم!

            دیدگاه


              پاسخ : فایل اکسپلورر mmc به وسیله arm

              سلام در مورد برنامه نویسی فایل bmp که دوستان توضیح خواسته بودم باید بگم که خیلی برنامه ساده است اگه فایل bmp با فرمت rgb24یا RGB16 را با برنامه ای مثل Hex Editor باز کنید میبینید که در خانه های 19 تا28 (if (index == 19تا if (index == 28)اطلاعات ابعاد تصویر ذخیره شده که نحوه ارتباط این اعداد با ابعاد تصویر در برنامه کاملا مشخصه که در نهایت image_wi و image_hi را تعیین میکنه. در خانه 29 نوع کد گذاری عکس قرار داره. توی برنامه وقتی به خونه 30فایل رسیدیم کل اطلاعات چک میشه و اگه ابعاد تصویر از lcd بزرگتر نباشه و فرمت ذخیره تصویر rgb24یاrgb16باشه تصویر اجازه پخش پیدا میکنه.بعد هم توی دو تا if عکس rgb24 و 16 از هم جدا میشوند بعد از خانه 30 دیگه اطلاعات تصویر قرار داره که برای نوع 24هر سه بایت برای یک پیکسل هست و به ترتیب بیان کننده مقدار RوGوB هر پیکسل هست که با محاسباتی که توی برنامه اومده در نهایت یک کد 16 بیتی تشکیل میشه که این کد در LCD_DATA قرار میگیره و به LCD فرستاده میشه برای نوع RGB16 هر دو بایت برای یک پیکسل هست و این دو بایت باهم OR شده و به LCD ارسال میشه.

              دیدگاه


                پاسخ : فایل اکسپلورر mmc به وسیله arm

                علی آقا میشه یه کم بیشتر راجع به تغییر ساز عکسها توضیح بدبد :agree: :agree: :agree:
                یا علی گفتیم و عشق آغاز شد.

                دیدگاه


                  پاسخ : فایل اکسپلورر mmc به وسیله arm

                  نوشته اصلی توسط ahmad2000
                  علی آقا میشه یه کم بیشتر راجع به تغییر ساز عکسها توضیح بدبد :agree: :agree: :agree:
                  سلام دوست عریز
                  توی دیتا شیت در صفحات ذکر شده گفته میشه عکس ها رو یک دوم ویا یک چهارم اندازه اصلیش کرد.با این حساب عکسی با عرض 240*4 و طول 320*4 را راحت با زووم یک چهارم میتوان در LCD قرار داد.
                  طبق راه حل پیشنهادی دیتا شیت با کد زیر این عمل باید اتفاق بیافته ولی یا نمیشه یا بد میشه :angry:
                  کد:
                  tftlcd_write_index_register(TS_INS_RESIZE_CTRL);
                  		tftlcd_write_wdr(0x0003);
                  
                  		tftlcd_write_index_register(TS_INS_HOR_START_AD);
                  		tftlcd_write_wdr(0x0000);
                  		tftlcd_write_index_register(TS_INS_HOR_END_AD);
                  		tftlcd_write_wdr(0x0077);
                  		tftlcd_write_index_register(TS_INS_VER_START_AD);
                  		tftlcd_write_wdr(0x0000);
                  		tftlcd_write_index_register(TS_INS_VER_END_AD);
                  		tftlcd_write_wdr(0x009F);
                  من یه مقدار توی تایپ کردن مشکل (کیبورد فارسی)دارم برا همین کم توضیح دادم.
                  زندگی یعنی امید و حرکت
                  کارهایتان را آغاز کنید، توانایی انجام دادنش را بدست خواهید آورد
                  سؤالاتی که در انجمن قابل طرح شدن هستند در پیام خصوصی جواب داده نمی شود.
                  برای تشکر از دکمه تشکر کنار هر پست استفاده کنید، پست هایی که فقط حاوی تشکر هستند پاک می شوند.
                  به دلیل کار بر روی پایاننامه و دفاع، مدتی نیستم!

                  دیدگاه


                    پاسخ : فایل اکسپلورر mmc به وسیله arm

                    نوشته اصلی توسط sajjad_b_ir
                    سلام در مورد برنامه نویسی فایل bmp که دوستان توضیح خواسته بودم باید بگم که خیلی برنامه ساده است اگه فایل bmp با فرمت rgb24یا RGB16 را با برنامه ای مثل Hex Editor باز کنید میبینید که در خانه های 19 تا28 (if (index == 19تا if (index == 28)اطلاعات ابعاد تصویر ذخیره شده که نحوه ارتباط این اعداد با ابعاد تصویر در برنامه کاملا مشخصه که در نهایت image_wi و image_hi را تعیین میکنه. در خانه 29 نوع کد گذاری عکس قرار داره. توی برنامه وقتی به خونه 30فایل رسیدیم کل اطلاعات چک میشه و اگه ابعاد تصویر از lcd بزرگتر نباشه و فرمت ذخیره تصویر rgb24یاrgb16باشه تصویر اجازه پخش پیدا میکنه.بعد هم توی دو تا if عکس rgb24 و 16 از هم جدا میشوند بعد از خانه 30 دیگه اطلاعات تصویر قرار داره که برای نوع 24هر سه بایت برای یک پیکسل هست و به ترتیب بیان کننده مقدار RوGوB هر پیکسل هست که با محاسباتی که توی برنامه اومده در نهایت یک کد 16 بیتی تشکیل میشه که این کد در LCD_DATA قرار میگیره و به LCD فرستاده میشه برای نوع RGB16 هر دو بایت برای یک پیکسل هست و این دو بایت باهم OR شده و به LCD ارسال میشه.
                    ممنون بابت راهنماییهاتون تقریبا با این راهنمایی تمام دل و روده BMP رو کشیدم بیرون.
                    شما میتونین با آرایه پویا و تابع fread عکس ها رو بخونید.این جوری سرعت میره بالا.من هر چه کردم جواب نداد :angry:
                    اگه میشه یه تستی کنید.
                    زندگی یعنی امید و حرکت
                    کارهایتان را آغاز کنید، توانایی انجام دادنش را بدست خواهید آورد
                    سؤالاتی که در انجمن قابل طرح شدن هستند در پیام خصوصی جواب داده نمی شود.
                    برای تشکر از دکمه تشکر کنار هر پست استفاده کنید، پست هایی که فقط حاوی تشکر هستند پاک می شوند.
                    به دلیل کار بر روی پایاننامه و دفاع، مدتی نیستم!

                    دیدگاه


                      پاسخ : فایل اکسپلورر mmc به وسیله arm

                      من تونستم از فایل BMP همه ی اطلاعاتشو بدست بیارم.ببینید
                      typedef struct BMIH { //declares BitMap Info Header structure
                      unsigned long biSize; //Length of bitmap information header (40 bytes for Windows V3 bitmaps)
                      unsigned long biWidth; //Width (pixels)
                      unsigned long biHeight; //Height (pixels)
                      unsigned short biPlanes; //Color planes, always 1
                      unsigned short biBitCount; //Color bits per pixel (1, 4, 8, 16, 24 and 32)
                      unsigned long biCompression; //Compression method, we only read uncompressed (type 0)
                      unsigned long biSizeImage; //Image data length
                      unsigned long biXPelsPerMeter; //Horizontal resolution (pixels per meter)
                      unsigned long biYPelsPerMeter; //Vertical resolution (pixel per meter)
                      unsigned long biClrUsed; //Number of colors, ignored.
                      unsigned long biClrImportant; //Number of important colors, ignored.
                      }BMP_INFO;

                      typedef struct BMFH { //declares BitMap File Header structure
                      unsigned short bfType; //Always 0x42 0x4D (hex for BM <-- indicating a bitmap)
                      unsigned long bfSize; //File size (bytes)
                      unsigned short bfReserved1; //Reserved, ignored
                      unsigned short bfReserved2; //Reserved, ignored
                      unsigned long bfOffBits; //Location in file of the first bitmap data
                      }BMP_HEADER;


                      fread (&BMPHeader.bfType,2,1,f);
                      fread (&BMPHeader.bfSize,4,1,f);
                      fread (&BMPHeader.bfReserved1,2,1,f);
                      fread (&BMPHeader.bfReserved2,2,1,f);
                      fread (&BMPHeader.bfOffBits,4,1,f);


                      fread (&BMPInfo.biSize,4,1,f);
                      fread (&BMPInfo.biWidth,4,1,f);
                      fread (&BMPInfo.biHeight,4,1,f);
                      fread (&BMPInfo.biPlanes,2,1,f);
                      fread (&BMPInfo.biBitCount,2,1,f);
                      fread (&BMPInfo.biCompression,4,1,f);
                      fread (&BMPInfo.biSizeImage,4,1,f);
                      fread (&BMPInfo.biXPelsPerMeter,4,1,f);
                      fread (&BMPInfo.biYPelsPerMeter,4,1,f);
                      fread (&BMPInfo.biClrUsed,4,1,f);
                      fread (&BMPInfo.biClrImportant,4,1,f);

                      مثلا BMPHeader.bfSize میگه حجم فایل بر حسب بایت چقدره :applause:
                      یا BMPHeader.bfOffBits میگه از چه بیتی به بعد اطلاعات تصویر ذکر شده :wow:
                      زندگی یعنی امید و حرکت
                      کارهایتان را آغاز کنید، توانایی انجام دادنش را بدست خواهید آورد
                      سؤالاتی که در انجمن قابل طرح شدن هستند در پیام خصوصی جواب داده نمی شود.
                      برای تشکر از دکمه تشکر کنار هر پست استفاده کنید، پست هایی که فقط حاوی تشکر هستند پاک می شوند.
                      به دلیل کار بر روی پایاننامه و دفاع، مدتی نیستم!

                      دیدگاه


                        پاسخ : فایل اکسپلورر mmc به وسیله arm

                        کسی نتونست سرعتو بازم افزایش بده ؟
                        اگه کسی این کارو کرد ما رو هم بی بهره نزاره
                        زندگی یعنی امید و حرکت
                        کارهایتان را آغاز کنید، توانایی انجام دادنش را بدست خواهید آورد
                        سؤالاتی که در انجمن قابل طرح شدن هستند در پیام خصوصی جواب داده نمی شود.
                        برای تشکر از دکمه تشکر کنار هر پست استفاده کنید، پست هایی که فقط حاوی تشکر هستند پاک می شوند.
                        به دلیل کار بر روی پایاننامه و دفاع، مدتی نیستم!

                        دیدگاه


                          پاسخ : فایل اکسپلورر mmc به وسیله arm

                          عکس های PCX به کارتون میاد؟
                          من قبلانا (در زمان DOS مرحوم) با C یه برنامه نوشته بودم که این فایل ها رو باز میکرد ، الگوریتمش پیچیدگی و محاسبات زیادی نداره بخاطر همین رمز گشاییش راحته و با سرعت خوبی انجام میشه

                          دیدگاه


                            پاسخ : فایل اکسپلورر mmc به وسیله arm

                            سلام.من بک برنامه نوتم که bmp رو پیکسل به پیسکل بخونه و روی lcd هم پیکسل به پیکسل نشون بده.ابتدا از fgetc استفاده کردم و بعد از تابع fread اما سرعتش زیاد تغییر نکردودر هر دو صورت نزدیک به 2 ثانیه برای باز شدن عکسی که کل lcd رو بپوشونه زمان نیاز هست :NO:
                            برنامم با تابع fread


                            while ((ch=fgetc (f)) != EOF) {
                            a++;
                            if (a == 11) shoro=ch ;
                            else if (a == 19) wi += ch;
                            else if (a == 20) wi |= (ch<<8);
                            else if (a == 23) hi += ch;
                            else if (a == 24) hi |=(ch<<8);
                            if(a>(shoro-1)){
                            fread (&bufer,1,3600,f);
                            d=0;
                            for(b=hi;b>0;b--){
                            for(i=0;i<wi;i++){
                            if (d==3600){
                            fread (&bufer,1,3600,f);
                            d=0;}
                            c = (bufer[d++]&0xF8)<<8;
                            c |= (bufer[d++]&0xFC)<<3;
                            c |= (bufer[d++])>>3;
                            tftlcd_write_pixel(i,b,c);

                            }

                            درست استفاده کردم؟
                            در ضمن با برنامه اقای جعفر پور هم میکرو هنگ میکنه.یعنی اگه یک ارایه بیشتر از 3600 تعریف کنم اصلا میکرو کار نمیکنه!!!!!!!!!!!

                            دیدگاه


                              پاسخ : فایل اکسپلورر mmc به وسیله arm

                              ا سلام
                              سرعت نمایش عکس در برنامه جناب آقای جعفرپور خیلی خوب شده که حدود 1ثانیه است ولی کماکان مشکل هنگ کردن رو داره ولی نسبت به قبل خیلی کمتر شده است
                              حضرت علی(ع):
                              أَشرَفُ الخَلاَئِقِ اَلوَفَا بِالعَهد.
                              شریفترین خصلتها وفاى به عهد است.

                              دیدگاه


                                پاسخ : فایل اکسپلورر mmc به وسیله arm

                                نوشته اصلی توسط gbg
                                عکس های PCX به کارتون میاد؟
                                من قبلانا (در زمان DOS مرحوم) با C یه برنامه نوشته بودم که این فایل ها رو باز میکرد ، الگوریتمش پیچیدگی و محاسبات زیادی نداره بخاطر همین رمز گشاییش راحته و با سرعت خوبی انجام میشه
                                سلام
                                این PCX که میگی چی هست؟
                                من تا حالا نشنیده بودم :eek:
                                کاربردش کجا هست؟
                                زندگی یعنی امید و حرکت
                                کارهایتان را آغاز کنید، توانایی انجام دادنش را بدست خواهید آورد
                                سؤالاتی که در انجمن قابل طرح شدن هستند در پیام خصوصی جواب داده نمی شود.
                                برای تشکر از دکمه تشکر کنار هر پست استفاده کنید، پست هایی که فقط حاوی تشکر هستند پاک می شوند.
                                به دلیل کار بر روی پایاننامه و دفاع، مدتی نیستم!

                                دیدگاه

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