اطلاعیه

Collapse
No announcement yet.

طریقه ساخت فونت فارسی برای lcd گرافیکی برای بیسکام

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

    #31
    پاسخ : طریقه ساخت فونت فارسی برای lcd گرافیکی برای بیسکام

    نوشته اصلی توسط زوار
    اینم برنامم font editor را پیدا کردم اما اگر بخوام خودم فونت بسازم فونتا خوب نمیشن و حالت شکسته داره جایی نیست که بشه فونتا را کپی کرد
    $regfile = "m16def.dat"
    $lib "ds1307clock.lib"
    $lib "glcdKS108.lib"

    'configure the scl and sda pins
    Config Graphlcd = 128 * 64sed , Dataport = Porta , Controlport = Portb , Ce = 2 , Ce2 = 3 , Cd = 0 , Rd = 6 , Reset = 7 , Enable = 1
    A As Byte
    Setfont Font8x8
    Do
    Lcd 1 , 1 , Chr(128)
    Loop
    End

    $include "font8x8.font"
    دستور lcd رو به صورت lcdat 1,1,chr(128) تغییر بده و به نظر من هیچ وقت داخل do/loop قرار نده.
    فایل فونت 8x8 رو هم باید کنار برنامه کپی کنی
    نتیجه رو اعلام کن

    چقدر این ندیدن ها و نشنیدن ها مردم را خوشبخت کرده (دکتر علی شریعتی)

    دیدگاه


      #32
      پاسخ : طریقه ساخت فونت فارسی برای lcd گرافیکی برای بیسکام

      بله درست شد و فارسیم نوشتم ممنون از شما وآقای طراح سعی میکنم فونتا را طراحی کنم ودر سایت قرار بدم

      دیدگاه


        #33
        پاسخ : طریقه ساخت فونت فارسی برای lcd گرافیکی برای بیسکام

        برای lcd های غیر sed از چه روشی باید استفاده کرد؟ :nerd:
        مواظب افکارت باش که گفتارت می شود
        مواظب گفتارت باش که رفتارت می شود
        مواظب رفتارت باش که عادتت می شود
        مواظب عادتت باش که شخصیتت می شود
        مواظب شخصیتت باش که سر نوشتت می شود

        دیدگاه


          #34
          پاسخ : طریقه ساخت فونت فارسی برای lcd گرافیکی برای بیسکام

          فایل اصلاح شده حاوی فونت های فارسی بسکام، در انتهای همین پست ضمیمه شده است. از کدهای زیر می توان برای کلیه فونت های فارسی استفاده کرد:
          _0 Alias Chr(128)

          _1 alias Chr(129)

          _2 alias Chr(130)

          _3 alias Chr(131)

          _4 alias Chr(132)

          _5 alias Chr(133)

          _6 alias Chr(134)

          _7 alias Chr(135)

          _8 alias Chr(136)

          _9 alias Chr(137)

          Virgool alias Chr(138)

          Khateh_chasban alias Chr(139)

          Alamat_soal alias Chr(140)

          A_ba_kolah alias Chr(141)

          Hamzeh_chasban alias Chr(142)

          Hamzeh_joda alias Chr(143)

          Alef alias Chr(144)

          Alef_chasbaan alias Chr(145)

          Be_bozorg alias Chr(146)

          Be_koochak alias Chr(147)

          Pe_bozorg alias Chr(148)

          Pe_koochak alias Chr(149)

          Te_bozorg alias Chr(150)

          Te_koochak Alias Chr(151)

          Se_bozorg alias Chr(152)

          Se_koochak alias Chr(153)

          Jim_bozorg alias Chr(154)

          Jim_koochak alias Chr(155)

          Che_bozorg alias Chr(156)

          Che Koochak alias Chr(157)

          He_jimi_bozorg alias Chr(158)

          He_jimi_koochak alias Chr(159)

          Khe_bozorg alias Chr(160)

          Khe_koochak alias Chr(161)

          Daal alias Chr(162)

          Zaal alias Chr(163)

          Re Alias Chr(164)

          Ze Alias Chr(165)

          Zhe alias Chr(166)

          Sin_bozorg alias Chr(167)

          Sin_koochak alias Chr(168)

          Shin_bozorg alias Chr(169)

          Shin_koochak alias Chr(170)

          Saad_bozorg alias Chr(171)

          Saad_koochak alias Chr(172)

          Zaad_bozorg alias Chr(173)

          Zaad_koochak alias Chr(174)

          Taa alias Chr(175)

          Zaa alias Chr(176)

          Ein_bozorg alias Chr(177)

          Ein_akhar_chasban alias Chr(178)

          Ein_vasat alias Chr(179)

          Ein_koochak alias Chr(180)

          Ghein_bozorg alias Chr(181)

          Ghein_akhar_chasban alias Chr(182)

          Ghein_vasat alias Chr(183)

          Ghein_koochak alias Chr(184)

          Fe_bozorg alias Chr(185)

          Fe_koochak alias Chr(186)

          Ghaaf_bozorg alias Chr(187)

          Ghaaf_koochak alias Chr(188)

          Kaaf_bozorg alias Chr(189)

          Kaaf_koochak alias Chr(190)

          Gaaf_bozorg alias Chr(191)

          Gaaf_koochak alias Chr(192)

          Laam_bozorg alias Chr(193)

          Laam_alef alias Chr(194)

          Laam_koochak alias Chr(195)

          Mim_bozorg alias Chr(196)

          Mim_koochak alias Chr(197)

          Noon_bozorg alias Chr(198)

          Noon_koochak alias Chr(199)

          Vav Alias Chr(200)

          He_koochak alias Chr(201)

          He_vasat alias Chr(202)

          He_chasbaan_avval alias Chr(203)

          Ye_chasbaan alias Chr(204)

          Ye_bozorg alias Chr(205)

          Ye_koochak alias Chr(206)


          چنانچه سوالی در این رابطه مطرح بود، در همین تاپیک قابل مطرح کردن است.

          نوشته اصلی توسط omidi2008
          برای lcd های غیر sed از چه روشی باید استفاده کرد؟ :nerd:
          در مورد LCD های بر مبنای کنترل کننده T6963c، در تاپیک زیر توضیح داده شده است:
          http://www.eca.ir/forum2/index.php?topic=44392.0
          فایل های پیوست شده
          اوژن: به معنای افکننده و شکست دهنده است
          دانایی، توانایی است-Knowledge is POWER
          برای حرفه ای شدن در الکترونیک باید با آن زندگی کرد
          وضعمان بهتر می شود، اگر همه نسبت به جامعه و اطراف خود مسوول باشیم و نگوئیم به ما چه
          قوی شدن و خوب ماندن - خوبی کردن به دیگران یک لذت ماندگار است
          اگر قرار باشد نفت و منابع خام را بدهیم و چرخ بگیریم، بهتر است چرخ را از نو اختراع کنیم
          ساعت کار بدن اکثر انسان ها کمتر از 800000 ساعت است و بعد از آن از کار می افتد

          دیدگاه


            #35
            پاسخ : طریقه ساخت فونت فارسی برای lcd گرافیکی برای بیسکام

            با سلام و احترام
            ضمن عرض تشکر فراوان از جناب طراح و بقیه عزیزان که کلمه طراح زیبنده نام ایشان است
            از زحمات شما کمال تشکر را دارم و فایل فوق را دانلود و حتما تست میزنم
            لازم بود که تشکری کوچک داشته باشم و تاکید کنم( بسکام یعنی اخر هلو در سرعت انجام پروژه-دقت-کارائی و قابلیت به شرطی که کرک شده و لایسنس تقلبی نباشه و IDE اون پدیت شده باشه)
            با سپاس فراوان :applause:

            دیدگاه


              #36
              پاسخ : طریقه ساخت فونت فارسی برای lcd گرافیکی برای بیسکام

              نوشته اصلی توسط طراح
              پیرو سوال دو نفر از دوستان، توضیح بیشتری در مورد شیوه فارسی نویسی در BASCOM داده می شود:
              منبع تامین فونت های دستور LCDAT، فایل font8x8.font است(برای فونت 8x8). مثلا وقتی دستور "LCDAT 1,1,"L اجرا می شود، 8 بایت در این فایل متناظر با کاراکتر L وجود دارند که شکل فونت را تشکیل می دهند. با مراجعه به متن فایل این 8 بایت بصورت زیر هستند:
              .db 0,127,64,64,64,64,0,0 ; L

              این 8 بایت معرف 8 ستون تشکیل دهنده فونت L از چپ به راست هستند که در هر بایت بیت با کمترین ارزش متناظر بالاترین و بیت با بیشترین ارزش متناظر پائین تر نقطه است.



              فونت های فارسی باید به همین ترتیب و بعد از کاراکترهای انگلیسی تعریف شوند. در مراجعه به فایل مذکور با 3 خط زیر مواجه می شویم:
              .db 0,2,1,2,1,0,0,0 ; ~
              .db 0,60,38,35,38,60,0,0 ;
              .db 0,30,161,225,33,18,0,0 ; ¤

              فونت های فارسی از محل همین خط سوم به بعد تعریف می شوند. مثلا اگر صفر فارسی در این محل تعریف شود، فایل به اینصورت تغییر می کند:
              .db 0,2,1,2,1,0,0,0 ; ~
              .db 0,60,38,35,38,60,0,0 ;
              .db 0,0,48,72,48,0,0,0 ;0 farsi

              برای احضار و نمایش این کاراکتر جدید باید از دستور( LCDAT 1,1,CHR(128 استفاده شود که مختصات 1,1 به عنوان مثال نوشته شده اند. بقیه فونت ها هم در ادامه فایل نوشته می شوند و برای فونت های بعدی هم آرگومان داخل CHR به همان ترتیب افزایش می یابد. مثلا فونت بعد از صفر فارسی با( CHR(129 احضار می شود و به همین ترتیب. از جمع عبارت های CHR هم برای نوشتن جمله می توان استفاده کرد. مثلا
              LCDAT 1,1,CHR(128)+CHR(129)+"TEST"
              سلام خدمت دوستان
              من مطالب کل تاپیکو مطالعه کردم و برنامه آزمایشی نوشتم که فایل برنامه و فونت و پروتئوسش تو ضمیمه هستش ولی پیغام خطا میده. از دوستان کسی میتونه کمکم کنه؟ :job:
              ضمنا فایل فونت آقای طراح رو استفاده میکنم.

              http://www.mediafire.com/download/0p...IP_archive.zip

              mirror link:
              http://black20.dl.rapidbaz.com/IwVSl...IP+archive.zip
              mirror link2:
              http://black20.s117.rapidbaz.com/pre...IP+archive.zip

              دیدگاه


                #37
                پاسخ : طریقه ساخت فونت فارسی برای lcd گرافیکی برای بیسکام

                تشکر میکنم از شما بخاطر این تاپیک.
                میشه یکم واضح تر بگید تا ما حالیمون شه باید چیکار کنیم؟به این نیاز داریم ولی هرچی میخونم و اجرا میکنم خطا میزنه.
                $lib "ds1307clock.lib"
                $lib "glcdKS108.lib"
                اینا یعنی چی
                این یعنی چی
                $include "font8x8.font"
                اصلا من برا نوشتن حرف ( ن ) رو ال سی دی باید چیکار کنم؟
                یخورده واضح تر بگید تا بفهمیم.
                لطفا بگید تا همه بفهمن .ممنون.
                اگه یه مثال هم باشه که خیلی خوبه.تا اینجاشو اومدین ادامه بدین تا کامل شه و همه بفهمن.ممنون از زحمات شما :applause:
                به سمت نور خورشید حرکت کن،تو میتونی تابش خورشید رو حس کنی ،حتی اگه کور باشی.
                (پیش به سوی هدف)

                دیدگاه


                  #38
                  پاسخ : طریقه ساخت فونت فارسی برای lcd گرافیکی برای بیسکام

                  نوشته اصلی توسط hosseinam1370
                  اصلا من برا نوشتن حرف ( ن ) رو ال سی دی باید چیکار کنم؟
                  یخورده واضح تر بگید تا بفهمیم.
                  صفحات 9 تا 13 مقاله زیر را مطالعه کنید:

                  knowledgeplus.ir/userfiles/BASCOMv1.pdf
                  اوژن: به معنای افکننده و شکست دهنده است
                  دانایی، توانایی است-Knowledge is POWER
                  برای حرفه ای شدن در الکترونیک باید با آن زندگی کرد
                  وضعمان بهتر می شود، اگر همه نسبت به جامعه و اطراف خود مسوول باشیم و نگوئیم به ما چه
                  قوی شدن و خوب ماندن - خوبی کردن به دیگران یک لذت ماندگار است
                  اگر قرار باشد نفت و منابع خام را بدهیم و چرخ بگیریم، بهتر است چرخ را از نو اختراع کنیم
                  ساعت کار بدن اکثر انسان ها کمتر از 800000 ساعت است و بعد از آن از کار می افتد

                  دیدگاه


                    #39
                    پاسخ : طریقه ساخت فونت فارسی برای lcd گرافیکی برای بیسکام

                    جناب طراح متشکرم از فونت بسیار عالیتون. زحمتتون قابل تقدیره. من به شخصه استفاده کردم. ضمنا مشکلم هم حل شد و فارسی رو رو lcd گرافیکی تونستم بنویسم. مونده طراحی الگوریتمی که متن بگیره و روی صفحه اتومات با تایم خاصی کارکترها رو روشن کنه. :applause:

                    دیدگاه


                      #40
                      پاسخ : پاسخ : طریقه ساخت فونت فارسی برای lcd گرافیکی ب

                      نوشته اصلی توسط مجتبی بهادر
                      1) برنامه بذار
                      2) font editor رو پیدا کزدی؟
                      3) کاراکتر تونستی بسازی؟
                      سلام دوست عزیز ...
                      این font editor کجاست ؟
                      تو plugin من که چیزی نیست ؟؟؟

                      دیدگاه


                        #41
                        پاسخ : طریقه ساخت فونت فارسی برای lcd گرافیکی برای بیسکام

                        نوشته اصلی توسط طراح
                        فایل اصلاح شده حاوی فونت های فارسی بسکام، در انتهای همین پست ضمیمه شده است. از کدهای زیر می توان برای کلیه فونت های فارسی استفاده کرد:
                        _0 Alias Chr(128)

                        _1 alias Chr(129)

                        _2 alias Chr(130)

                        _3 alias Chr(131)

                        _4 alias Chr(132)

                        _5 alias Chr(133)

                        _6 alias Chr(134)

                        _7 alias Chr(135)

                        _8 alias Chr(136)

                        _9 alias Chr(137)

                        Virgool alias Chr(138)

                        Khateh_chasban alias Chr(139)

                        Alamat_soal alias Chr(140)

                        A_ba_kolah alias Chr(141)

                        Hamzeh_chasban alias Chr(142)

                        Hamzeh_joda alias Chr(143)

                        Alef alias Chr(144)

                        Alef_chasbaan alias Chr(145)

                        Be_bozorg alias Chr(146)

                        Be_koochak alias Chr(147)

                        Pe_bozorg alias Chr(148)

                        Pe_koochak alias Chr(149)

                        Te_bozorg alias Chr(150)

                        Te_koochak Alias Chr(151)

                        Se_bozorg alias Chr(152)

                        Se_koochak alias Chr(153)

                        Jim_bozorg alias Chr(154)

                        Jim_koochak alias Chr(155)

                        Che_bozorg alias Chr(156)

                        Che Koochak alias Chr(157)

                        He_jimi_bozorg alias Chr(158)

                        He_jimi_koochak alias Chr(159)

                        Khe_bozorg alias Chr(160)

                        Khe_koochak alias Chr(161)

                        Daal alias Chr(162)

                        Zaal alias Chr(163)

                        Re Alias Chr(164)

                        Ze Alias Chr(165)

                        Zhe alias Chr(166)

                        Sin_bozorg alias Chr(167)

                        Sin_koochak alias Chr(168)

                        Shin_bozorg alias Chr(169)

                        Shin_koochak alias Chr(170)

                        Saad_bozorg alias Chr(171)

                        Saad_koochak alias Chr(172)

                        Zaad_bozorg alias Chr(173)

                        Zaad_koochak alias Chr(174)

                        Taa alias Chr(175)

                        Zaa alias Chr(176)

                        Ein_bozorg alias Chr(177)

                        Ein_akhar_chasban alias Chr(178)

                        Ein_vasat alias Chr(179)

                        Ein_koochak alias Chr(180)

                        Ghein_bozorg alias Chr(181)

                        Ghein_akhar_chasban alias Chr(182)

                        Ghein_vasat alias Chr(183)

                        Ghein_koochak alias Chr(184)

                        Fe_bozorg alias Chr(185)

                        Fe_koochak alias Chr(186)

                        Ghaaf_bozorg alias Chr(187)

                        Ghaaf_koochak alias Chr(188)

                        Kaaf_bozorg alias Chr(189)

                        Kaaf_koochak alias Chr(190)

                        Gaaf_bozorg alias Chr(191)

                        Gaaf_koochak alias Chr(192)

                        Laam_bozorg alias Chr(193)

                        Laam_alef alias Chr(194)

                        Laam_koochak alias Chr(195)

                        Mim_bozorg alias Chr(196)

                        Mim_koochak alias Chr(197)

                        Noon_bozorg alias Chr(198)

                        Noon_koochak alias Chr(199)

                        Vav Alias Chr(200)

                        He_koochak alias Chr(201)

                        He_vasat alias Chr(202)

                        He_chasbaan_avval alias Chr(203)

                        Ye_chasbaan alias Chr(204)

                        Ye_bozorg alias Chr(205)

                        Ye_koochak alias Chr(206)


                        چنانچه سوالی در این رابطه مطرح بود، در همین تاپیک قابل مطرح کردن است.

                        در مورد LCD های بر مبنای کنترل کننده T6963c، در تاپیک زیر توضیح داده شده است:
                        http://www.eca.ir/forum2/index.php?topic=44392.0
                        ببخشید آقای طراح.
                        من این فونت رو با font editor بسکام باز کردم.
                        ولی از کاراکتر 128 تا 206 (کاراکتر های فارسی) رو هیچی نشون نمی ده. :eek:
                        اما فونت درست کار می کنه (تست زدم).

                        وقتی هم که یکی از کاراکتر های فارسی رو دست کاری می کنم و بعد پروگرام می کنم اصلا فارسی نشون نمیده. :cry:
                        لطفا بگین چی کار کنم.
                        مشکل کار از کجاست؟
                        [glow=green,2,300][b]بشر ممکن الخطاست
                        درخت هرچه پربار تر سر به زیر تر[/glow]

                        دیدگاه


                          #42
                          پاسخ : طریقه ساخت فونت فارسی برای lcd گرافیکی برای بیسکام

                          اگر قصد تغییری در فونت را دارید، باید جزئیات عملکرد کد را تحلیل و بررسی کنید و کاملا به این دید برسید که هر بایت چه تاثیری روی فونت خروجی دارد و بر همین اساس نسبت به تغییر آن اقدام کنید. در مورد درست عمل نکردن font editor هم نظر خاصی ندارم و همانطور که توضیح داده اید، برنامه عملا درست کار می کند.
                          اوژن: به معنای افکننده و شکست دهنده است
                          دانایی، توانایی است-Knowledge is POWER
                          برای حرفه ای شدن در الکترونیک باید با آن زندگی کرد
                          وضعمان بهتر می شود، اگر همه نسبت به جامعه و اطراف خود مسوول باشیم و نگوئیم به ما چه
                          قوی شدن و خوب ماندن - خوبی کردن به دیگران یک لذت ماندگار است
                          اگر قرار باشد نفت و منابع خام را بدهیم و چرخ بگیریم، بهتر است چرخ را از نو اختراع کنیم
                          ساعت کار بدن اکثر انسان ها کمتر از 800000 ساعت است و بعد از آن از کار می افتد

                          دیدگاه


                            #43
                            پاسخ : طریقه ساخت فونت فارسی برای lcd گرافیکی برای بیسکام

                            برای فونت با طول متغییر و کلا سایز متغییر به نظر من بهترین را استفاده از جدول lookup واسط هست
                            یعنی کاراکترهای بالای 127 رو که میشه استفاده کرد برای فارسی یا ... با آدرسی دهی موقعیت فونت رو بدست بیاریم و بعد دیگه مثل بقیه هست
                            نمونه
                            Tb1 = Len(text)
                            For Tb2 = 1 To Tb1
                            Str1 = Mid(text , Tb2 , 1)
                            Tb3 = Asc(str1)
                            Tb3 = Tb3 - 32

                            If Tb3 > 95 Then
                            Tb3 = Tb3 - 96
                            Tb3 = Lookup(tb3 , Fontassign)

                            اینجا معادل اسکی کد رو هرطور که خواستین توی فونت اساین تعریف میکنین
                            یعنی میخواهین بجای کد 140 ، کد 130 قرار داده بشه
                            اینکار شما را در قسمت برنامه نویسی فونت کمک می کنه

                            بعد میرین آدرس کد بدست اومده رو تو حافظه بدست میارین از جدول مجددا

                            W1 = Lookup(tb3 , Fontpos)

                            بعد از اینجا به بعد دیگه فونت رو میخونین و ...
                            Tb5 = Lookup(w1 , Fontdata)
                            از آدرس w1 فونت شروع میشه

                            نمونه فونت assign

                            Fontassign:
                            Rem ASC= 96
                            Data 95
                            Rem ASC= 97
                            Data 154
                            Rem ASC= 98
                            Data 125
                            Rem ASC= 99


                            نمونه fontpos


                            Fontpos:

                            Data 0% , 24% , 42% , 69% , 112% , 152% , 211% , 257% , 272% , 296% , 317%
                            Data 344% , 384% , 405% , 429% , 444% , 471% , 508% , 535% , 575% , 615% , 655%
                            Data 695% , 735% , 775% , 812% , 852% , 867% , 882% , 922% , 962% , 1002% , 1042%


                            نمونه فونت دیتا
                            Fontdata:
                            Xxas:

                            Rem CHR= 1
                            Data 7 , 25 , 255 , 255 , 255 , 255 , 255 , 255 , 255 , 255
                            Data 255 , 255 , 255 , 255 , 255 , 255 , 255 , 255 , 255 , 255
                            Data 255 , 255 , 255 , 254


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

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










                            همیشه به یاد خدا باش !

                            دیدگاه


                              #44
                              پاسخ : طریقه ساخت فونت فارسی برای lcd گرافیکی برای بیسکام

                              با عرض سلام و خسته نباشید لطفا یک جمع بندی کلی در مورد بحث های اخیر بکنین تا بتونین از این بحث های شما استفاده کنیم ازتون ممنونم

                              دیدگاه


                                #45
                                پاسخ : طریقه ساخت فونت فارسی برای lcd گرافیکی برای بیسکام

                                سلام اقای طراح
                                منم فایل فونت رو با بسکام باز کردم ولی متاسفانه حروف فارسی رو نمایش نمیده
                                چکار کنم؟ :cry2:

                                دیدگاه

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