اطلاعیه

Collapse
No announcement yet.

نمایش عکس روی ال سی ذی گرافیکی از mmc

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

    #16
    پاسخ : نمایش عکس روی ال سی ذی گرافیکی از mmc

    سلام
    من برای فرمتهای bitmap کار شما رو چک کردن اگر شما یه فایل بیت مپ داشته باشین و بخواین روی صفحه نمایش بدین
    1-حتما باید عکستون سیاه و سفید باشه که بتونین روی ال سی در گرافیکی سیاه و سفید نشونش بدین
    2-بعد از باز کردن فایل عکس باید هدر فایل رو از کل پیکسلهای عکس جدا کنین
    3-شروع کنین به 1 بایت یا دو بایت یا 3 بایت خوندن عکس که با توجه به چند بیتی بودن عکس این کار باید تکرار بشه و ارسال به صفحه نمایش

    یعنی برای داشتن یک تصویر حتما باید میکرو رو خیلی درگیر کنین تا عکس بعد از گذشت چندین هزار سیکل کاری عکس رو نمایش بده

    پیشنهادم این هست که از فرمت های خاص دیگه استفاده کنین.یه قابلیت bascom داره که عکس رو براتون تبدیل به bgf می کنه ببینین دقیقا خروجی bgf و نحو قرار گرفتن پیسکلها چه جوری تا اونها رو بریزین روی مموری و نمایش بدین(چون حتما از پیکسلهای اضافی و زیاد جلوگیری شده)
    هیچ دانش آموزی نیست که به در خانۀ دانشمندی آمد و شد کند, مگر این که خداوند برای هر گامی که برمی دارد عبادت یک سال را برایش رقم زند.

    دیدگاه


      #17
      پاسخ : نمایش عکس روی ال سی ذی گرافیکی از mmc

      1:عکسهام که سیاه وسفید هستن در این مشکلی نیست
      2: تبدیل عکسها به bgf یا فرمت دیگه برای من فرقی نداره اینکارم که با بیسکام فرمودید قبلا برای نمایش عکس ذخیره شده در حافظه خود میکرو ازش استفاده کردم و بلدم
      3:منظوراز هدر فایل چیه و چطور میشه جداش کرد
      4:بعد از باز کردن فایل عکس چطور بفهمم که یک یا دو یا سه بایتی هست
      5:چطور و با چه دستوری این فایل رو روی ال سی دی بفرستم
      روزی که درک کردیم همه چیز به خدا تعلق دارد . آن روز .روز طلوع دانش است

      دیدگاه


        #18
        پاسخ : نمایش عکس روی ال سی ذی گرافیکی از mmc

        عبارت bitmap file format رو سرچ کن / من همین امروز برا یه کاری نیاز شد و داشتم رو فرمت mono و 16bit کار میکردم
        اطلاعات کامل و مفیدی داره
        همیشه به یاد خدا باش !

        دیدگاه


          #19
          پاسخ : نمایش عکس روی ال سی ذی گرافیکی از mmc

          تو ویکی پدیا در مورد این فرمت اطلاعات کاملی هست که من با این اینگلیسی ناقصم فهمیدم که هدر فایل بخشی از اطلاعات مربوط به فایل bmp هست که اول فایل میاد و به سیستم اطلاعاتی در مورد فایل میده ولی به چه درد من میخوره . چطور جداش کنم چیزی نگرفتم .در ضمن من هنوز منتظر جوابم
          روزی که درک کردیم همه چیز به خدا تعلق دارد . آن روز .روز طلوع دانش است

          دیدگاه


            #20
            پاسخ : نمایش عکس روی ال سی ذی گرافیکی از mmc

            سلام
            آقای جعفری شما هرچی رو بقیه میگن میگی خوندم.و بلدم پس مشکلت چیه؟
            چطوری جداش کنم یعنی چی؟
            خوب با توجه به اطلاعات هدر فایل متوجه میشی که آدرس شروع اطلاعات عکس کجاست و چطوری ذخیره شده
            بعد باید به همین ترتیب بخونی
            همیشه به یاد خدا باش !

            دیدگاه


              #21
              پاسخ : نمایش عکس روی ال سی ذی گرافیکی از mmc

              من جایی نگفتم چیزی رو بلدم .فقط تو دوتا پست قبل تر گفتم نشون دادن عکس از حافظه میکرو رو بلدم
              در مورد اینم که میگید هرچی میگیم .میگی خوندم باید بگم من بدنبال فرمایش شما که گفتید این جمله رو جستوجو کن رفتم همین کارو کردم و اولین مورد هم همون ویکی پدیا بود که اطلاعاتش کامل بود ولی چون من زبانم ضعیفه فقط تا این حد سردر اوردن (همه مثل شما لیسانس نیستن که با وجود دیدن اسم طرف اونم به اون بزرگی بالای عکسش بازم دوبار اشتباه بنویسن حالا امدی یا غیر عمدی بودنش بماند)
              نوشته اصلی توسط پژمان اکبری
              سلام
              آقای جعفری شما هرچی رو بقیه میگن میگی خوندم
              پست قبلی تون نوشتین
              نوشته اصلی توسط پژمان اکبری
              عبارت bitmap file format رو سرچ کن / من همین امروز برا یه کاری نیاز شد و داشتم رو فرمت mono و 16bit کار میکردم
              اطلاعات کامل و مفیدی داره
              اخه mono چه ربطی به bmp داره؟

              روزی که درک کردیم همه چیز به خدا تعلق دارد . آن روز .روز طلوع دانش است

              دیدگاه


                #22
                پاسخ : نمایش عکس روی ال سی ذی گرافیکی از mmc

                سلام اسمت که شرمنده اشتباه شد.بعضی پستها زمانی که سر کار هستم ارسال میکنم و اونجا زیاد حواسم به نت جمع نیست
                در مورد دومی هم MONO COLOR منظورمه یعنی 2 رنگ(سیاه و سفید)
                شما بایت 11و12و13و14 هر عکس BMP رو که بخونی آدرس شروع اطلاعات عکس هست
                اگه عکس حالت نرمال باشه همون بایت 11 عدد آفست هست یعنی عدد شروع اطلاعات عکس BMP
                اون شماره بایتها (4 بایت) داده از نوع 32 بیت بدون علامت هست.و چون معمولا تو حالت عادی 54 هست می تونی همیشه بری از بایت 54 به بعد رو بخونی برا راحتی کار عکس را با حالت 24 بیت ذخیره کن که هر سه بایت بعد ازبایت 54 معرف رنگ یک پیکسل هست
                بایت اول آبی .سبز.قرمز فقط یادت باشه تعداد بایتهای هر سطر به عدد 4 بخش پذیر هست و مثلا اگه طول یک عکس 10 هست
                3*10=30
                پس دو بایت با مقدار صفر آخر سطر هست که اونارو نباید در نظر بگیری
                خداییش این اطلاعات دیگه کامله.جزئیاتی هم اگه مونده باشه دیگه خودت زحمتش رو بکش
                بعد هم اینجور بحث ها ربطی به لیسانس یا غیر لیسانس و ... اینها نداره
                الان خدا نکشه دیکشنری رو کامپوتر رو و تازه من رشتم برق قدرته و ربطی به این چیزا نداره و صرفا جهت علاقه شخصی و .. اینجور مطالب رو مطالعه میکنم.
                امیدوارم کارت راه افتاده باشه و موفق باشی
                همیشه به یاد خدا باش !

                دیدگاه


                  #23
                  پاسخ : نمایش عکس روی ال سی ذی گرافیکی از mmc

                  دوست عزیز به منم حق بده من اگه اسمم رو چند سال پیش از مستعار به اصلی تغییر دادم دلیلش این بود که این محط یک محیط فرهنگی هست و از یه جایی باید شروع میکردیم به عادت دادن خودمون و بغیه عزیزان به اعتماد کردن و تلاش برای جلب اعتماد ذیگران که استفاده از اسم اصلی برای نام کاربری خودش یک شروع هست برای این کار .علاو براون مثلا خود شما که از اسم اصلیت استفاده میکنی اگه یکی بیاد اسم شما رو تو پست ها تغییر بده و نه یک بار بلکه چند بار به این کارش ادامه بده شما پیش خودت میگی این طرف یا واقعا تعطیله یا میخاد مسخره کنه .ولی بحر حال بیخیالش اینجا محیط فرهنگیه
                  خداییش بهتر نبود این اطلاعات رو همون اولش میدادی و خودت و منو خسته نمیکردی ؟
                  فرمت bgf هم اینطوری هست یا اون جور دیگس ؟چون با این توضیحات شما و با توجه به این که تو پرژه من در هر صفحه حداقل 20 تصویر با سایزهای متفاوت نشون داده میشه .میشه گفت میکرو باید کارشو ول کنه تا بتونه عکس نشون بده .فرمت دیگه ای هست که این سادتر باشه ؟
                  روزی که درک کردیم همه چیز به خدا تعلق دارد . آن روز .روز طلوع دانش است

                  دیدگاه


                    #24
                    پاسخ : نمایش عکس روی ال سی ذی گرافیکی از mmc

                    bitmap بنظرم راحترین فرمت هست و نوع mono هم از همه راحت تر اما من اطلاعات دقیقی از bgf ندارم ولی می تونی فایل رو با یه برنامه ای باز کنی ببینی چطوری هست تو بسکام کنترل زیادی رو این حالت نیست
                    همیشه به یاد خدا باش !

                    دیدگاه


                      #25
                      پاسخ : نمایش عکس روی ال سی ذی گرافیکی از mmc

                      شما برنامه ای رو که گفتین سراغ دارین؟
                      روزی که درک کردیم همه چیز به خدا تعلق دارد . آن روز .روز طلوع دانش است

                      دیدگاه


                        #26
                        پاسخ : نمایش عکس روی ال سی ذی گرافیکی از mmc

                        پاسکال و بیسیک و سی و .... هرکدوم که بلدی
                        همیشه به یاد خدا باش !

                        دیدگاه


                          #27
                          پاسخ : نمایش عکس روی ال سی ذی گرافیکی از mmc

                          ویژوال بیسیک نصب دارم ولی بلد نیستم تازه میخاستم شروع کنم به یادگیری.میدونی چطور میتونم با اون بازش کنم؟
                          روزی که درک کردیم همه چیز به خدا تعلق دارد . آن روز .روز طلوع دانش است

                          دیدگاه


                            #28
                            پاسخ : نمایش عکس روی ال سی ذی گرافیکی از mmc

                            اگه بیسیک رو زیاد وارد نیستی . که برو با winhex یا برنامه های شبیه اون بازش کن
                            hack man هم هست
                            همیشه به یاد خدا باش !

                            دیدگاه


                              #29
                              پاسخ : نمایش عکس روی ال سی ذی گرافیکی از mmc

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

                              بیا اینو خودم نوشتم و مدتیه ازش استفاده می کنم .اگه یکم تلاش میکردی خودتم می تونستی بنویسی.
                              فایل BGF رو فقط برای 128x64 نمایش میده .

                              با امکان X و Y
                              و invert color

                              باید بگم که به MMC زیاد اعتماد نکن . و سعی کن جنس مرغوب با حافظه کم پیدا کنی . چون تاجر ها بازار پر کردن با مموری های آشغال چینی. تو این مموری ها تعداد فایل ها که بالا میره سیستم درست کار نمیکنه .

                              کد:
                              Sub Show_sd(byval Yoffset As Byte , Byval Xoffset As Byte , Byval Filename$ As String , Byval Invert As Byte )
                              
                              
                              Local Tfname As String * 16
                              
                              Local Xof As Byte
                              Local Yof As Byte
                              Xof = Xoffset / 8
                              Yof = Yoffset
                              
                              Local Xsize As Byte : Xsize = 0
                              Local Ysize As Byte : Ysize = 0
                              Local Pagepos As Byte : Pagepos = 0
                              Local Ypos As Byte : Ypos = 0
                              Local Typos As Byte : Typos = 0
                              
                              Local Pixpos As Byte : Pixpos = 0
                              
                              Local Spiypos As Byte : Spiypos = 0
                              Local Piypos As Byte : Piypos = 0
                              Local Prep As Byte : Prep = 0
                              Local Tprep As Byte : Tprep = 0
                              Local Zval As Byte : Zval = 0
                              Local Ztemp As Byte : Ztemp = 0
                              
                              Local Norep As Byte : Norep = 0
                              
                              Piypos = &H40
                              Pixpos = &HB8
                              
                              Piypos = Piypos + Yof
                              Pixpos = Pixpos + Xof
                              
                              If Yof > 63 Then
                              Spiypos = Piypos - 64
                                Glcdcmd Spiypos , 2
                                Glcdcmd Pixpos , 2
                              Else
                                Glcdcmd Piypos , 1
                                Glcdcmd Pixpos , 1
                              End If
                              
                              Ypos = 0
                              
                              Tfname = Filename$
                              Tfname = Tfname + ".BGF"
                              
                                  Open Tfname For Binary As #5
                              
                                    Get #5 , Xsize
                                    Get #5 , Ysize
                              
                                  While Eof(#5) <> 255
                              
                                    Get #5 , Zval
                              
                                      If Ypos = Ysize Then
                                       Incr Pixpos
                                       If Yof > 63 Then
                                         Glcdcmd Spiypos , 2
                                       Else
                                         Glcdcmd Piypos , 1
                                       End If
                                       Ypos = 0
                                      End If
                              
                                      Typos = Ypos + Yof
                                      If Typos > 63 Then
                                       Glcdcmd Pixpos , 2
                                      Else
                                       Glcdcmd Pixpos , 1
                                      End If
                              
                                      If Typos = 64 Then
                                         Glcdcmd &H40 , 2
                                      End If
                              
                              
                                      If Zval = &HAA Then
                                       Get #5 , Prep
                              
                                          If Prep > 0 Then
                                            Prep = Prep - 1
                                            Norep = 0
                                          Else
                                            Prep = 1
                                            Norep = 1
                                          End If
                              
                                           For Tprep = 1 To Prep
                              
                                            If Ypos = Ysize Then
                                             Incr Pixpos
                                             If Yof > 63 Then
                                               Glcdcmd Spiypos , 2
                                             Else
                                               Glcdcmd Piypos , 1
                                             End If
                                             Ypos = 0
                                            End If
                              
                                             Typos = Ypos + Yof
                                             If Typos > 63 Then
                                               Glcdcmd Pixpos , 2
                                             Else
                                               Glcdcmd Pixpos , 1
                                             End If
                              
                              
                                             If Typos = 64 Then
                                                Glcdcmd &H40 , 2
                                             End If
                              
                                             If Norep = 1 Then
                              
                                             If Invert = 0 Then
                                               Ztemp = &HAA
                                               Else
                                               Ztemp = &H55
                                             End If
                              
                                             End If
                              
                              
                              
                                             Glcddata Ztemp
                              
                                             Incr Ypos
                                          Next Prep
                              
                              
                                      Else
                                             If Invert = 1 Then
                                               Zval = 255 - Zval
                                             End If
                              
                                          Glcddata Zval
                                          Incr Ypos
                                          Ztemp = Zval
                                      End If
                              
                                  Wend
                                  Close #5
                              End Sub

                              دیدگاه


                                #30
                                پاسخ : نمایش عکس روی ال سی ذی گرافیکی از mmc

                                نوشته اصلی توسط l3ai3ak
                                یا چیزی رو بلدی یا بلد نیستی.!!
                                اگه بلدی: جواب کامل میدی . اگه نه: چرا براش افسانه سر هم می کنین .

                                بیا اینو خودم نوشتم و مدتیه ازش استفاده می کنم .اگه یکم تلاش میکردی خودتم می تونستی بنویسی.
                                فایل BGF رو فقط برای 128x64 نمایش میده .

                                با امکان X و Y
                                و invert color

                                باید بگم که به MMC زیاد اعتماد نکن . و سعی کن جنس مرغوب با حافظه کم پیدا کنی . چون تاجر ها بازار پر کردن با مموری های آشغال چینی. تو این مموری ها تعداد فایل ها که بالا میره سیستم درست کار نمیکنه .

                                کد:
                                Sub Show_sd(byval Yoffset As Byte , Byval Xoffset As Byte , Byval Filename$ As String , Byval Invert As Byte )
                                
                                
                                Local Tfname As String * 16
                                
                                Local Xof As Byte
                                Local Yof As Byte
                                Xof = Xoffset / 8
                                Yof = Yoffset
                                
                                Local Xsize As Byte : Xsize = 0
                                Local Ysize As Byte : Ysize = 0
                                Local Pagepos As Byte : Pagepos = 0
                                Local Ypos As Byte : Ypos = 0
                                Local Typos As Byte : Typos = 0
                                
                                Local Pixpos As Byte : Pixpos = 0
                                
                                Local Spiypos As Byte : Spiypos = 0
                                Local Piypos As Byte : Piypos = 0
                                Local Prep As Byte : Prep = 0
                                Local Tprep As Byte : Tprep = 0
                                Local Zval As Byte : Zval = 0
                                Local Ztemp As Byte : Ztemp = 0
                                
                                Local Norep As Byte : Norep = 0
                                
                                Piypos = &H40
                                Pixpos = &HB8
                                
                                Piypos = Piypos + Yof
                                Pixpos = Pixpos + Xof
                                
                                If Yof > 63 Then
                                Spiypos = Piypos - 64
                                  Glcdcmd Spiypos , 2
                                  Glcdcmd Pixpos , 2
                                Else
                                  Glcdcmd Piypos , 1
                                  Glcdcmd Pixpos , 1
                                End If
                                
                                Ypos = 0
                                
                                Tfname = Filename$
                                Tfname = Tfname + ".BGF"
                                
                                    Open Tfname For Binary As #5
                                
                                      Get #5 , Xsize
                                      Get #5 , Ysize
                                
                                    While Eof(#5) <> 255
                                
                                      Get #5 , Zval
                                
                                        If Ypos = Ysize Then
                                         Incr Pixpos
                                         If Yof > 63 Then
                                           Glcdcmd Spiypos , 2
                                         Else
                                           Glcdcmd Piypos , 1
                                         End If
                                         Ypos = 0
                                        End If
                                
                                        Typos = Ypos + Yof
                                        If Typos > 63 Then
                                         Glcdcmd Pixpos , 2
                                        Else
                                         Glcdcmd Pixpos , 1
                                        End If
                                
                                        If Typos = 64 Then
                                           Glcdcmd &H40 , 2
                                        End If
                                
                                
                                        If Zval = &HAA Then
                                         Get #5 , Prep
                                
                                            If Prep > 0 Then
                                              Prep = Prep - 1
                                              Norep = 0
                                            Else
                                              Prep = 1
                                              Norep = 1
                                            End If
                                
                                             For Tprep = 1 To Prep
                                
                                              If Ypos = Ysize Then
                                               Incr Pixpos
                                               If Yof > 63 Then
                                                 Glcdcmd Spiypos , 2
                                               Else
                                                 Glcdcmd Piypos , 1
                                               End If
                                               Ypos = 0
                                              End If
                                
                                               Typos = Ypos + Yof
                                               If Typos > 63 Then
                                                 Glcdcmd Pixpos , 2
                                               Else
                                                 Glcdcmd Pixpos , 1
                                               End If
                                
                                
                                               If Typos = 64 Then
                                                  Glcdcmd &H40 , 2
                                               End If
                                
                                               If Norep = 1 Then
                                
                                               If Invert = 0 Then
                                                 Ztemp = &HAA
                                                 Else
                                                 Ztemp = &H55
                                               End If
                                
                                               End If
                                
                                
                                
                                               Glcddata Ztemp
                                
                                               Incr Ypos
                                            Next Prep
                                
                                
                                        Else
                                               If Invert = 1 Then
                                                 Zval = 255 - Zval
                                               End If
                                
                                            Glcddata Zval
                                            Incr Ypos
                                            Ztemp = Zval
                                        End If
                                
                                    Wend
                                    Close #5
                                End Sub
                                از اینکه لطف کردید و نتیجه زحمات خودتون رو در اختیار بنده گذاشتید ممنونم
                                راستش نفهمیدم منظورتون از دو سطر اول فرمایشاتتون بنده بودم یا کس دیگه ؟!
                                میخاستم خواهش کنم برنامه ای رو که گذاشتید کمی توضیح بدید تا بهتر بتونم ازش استفاده کنم چون بنده برای سایز 240*128 نیاز دارم و باید این برنامه رو با اجازتون کمی تغییر بدم
                                ممنون
                                روزی که درک کردیم همه چیز به خدا تعلق دارد . آن روز .روز طلوع دانش است

                                دیدگاه

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