اطلاعیه

Collapse
No announcement yet.

سوال درباره ارسال اطلاعات متغیر به GLCD با توابع کتابخانه ای KS0108 + عکس

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

    #16
    پاسخ : سوال درباره ارسال اطلاعات متغیر به GLCD با توابع کتابخانه ای KS0108 + عکس

    ممنون از لطف شما مشکلم حل شد بازم به کمک شما احتیاج دارم من میخوام این خط را مثلا های لایت کنم برای select کرد در منو باید از چه دستوری استفاده کنم ممنونم از شما مثلا این خط ها
    کد:
     
    [left]
    sprintf(Ctemp, "DIRECTION  :%u ",dire);
    DrawStringAt(0, 1, Ctemp, BLACK, WHITE);
    sprintf(Ctemp, "FREQ MOTOR  :%u",freq);
    DrawStringAt(2, 1, Ctemp, BLACK, WHITE);
    [/left]

    دیدگاه


      #17
      پاسخ : سوال درباره ارسال اطلاعات متغیر به GLCD با توابع کتابخانه ای KS0108 + عکس

      نوشته اصلی توسط زوار
      ممنون از لطف شما مشکلم حل شد بازم به کمک شما احتیاج دارم من میخوام این خط را مثلا های لایت کنم برای select کرد در منو باید از چه دستوری استفاده کنم ممنونم از شما مثلا این خط ها
      کد:
       
      [left]
      sprintf(Ctemp, "DIRECTION  :%u ",dire);
      DrawStringAt(0, 1, Ctemp, BLACK, WHITE);
      sprintf(Ctemp, "FREQ MOTOR  :%u",freq);
      DrawStringAt(2, 1, Ctemp, BLACK, WHITE);
      [/left]
      با سلام،

      شما با استفاده از دستورات زیر میتونید حالت های مختلف های لایت و اینا رو پیاده سازی کنید :
      کد:
      SetFgColor(c)	
      SetBkColor(c)	
      GetFgColor()	
      GetBkColor()	
       و 
      TextBox(unsigned short x1, unsigned short y1, unsigned short x2, unsigned short y2, char *str, unsigned char style);

      ولی با اینا، کد برنامه کمی سنگین و پیچیده میشه! فقط برای های لایت، بهتره که از دستورات مستقیم GLCD استفاده کنید. مثلا در کدهای کتابخونه GLCD من میشه این دستور :

      کد:
      KS108_InvertRect(unsigned char x, unsigned char y, unsigned char width, unsigned char height);
      مادامی که از شخصی یاد میشود، او و افکارش زنده اند ....

      Sh_Nourbakhsh@Yahoo.com

      http://s2.picofile.com/file/7170362468/_Wall_e_.jp

      دیدگاه


        #18
        پاسخ : سوال درباره ارسال اطلاعات متغیر به GLCD با توابع کتابخانه ای KS0108 + عکس

        نوشته اصلی توسط aivhl
        با سلام،

        شما با استفاده از دستورات زیر میتونید حالت های مختلف های لایت و اینا رو پیاده سازی کنید :
        کد:
        SetFgColor(c)	
        SetBkColor(c)	
        GetFgColor()	
        GetBkColor()	
         و 
        TextBox(unsigned short x1, unsigned short y1, unsigned short x2, unsigned short y2, char *str, unsigned char style);

        ولی با اینا، کد برنامه کمی سنگین و پیچیده میشه! فقط برای های لایت، بهتره که از دستورات مستقیم GLCD استفاده کنید. مثلا در کدهای کتابخونه GLCD من میشه این دستور :

        کد:
        KS108_InvertRect(unsigned char x, unsigned char y, unsigned char width, unsigned char height);
        با سلام و تشکر از شما من از دستوری که شما گفتید استفاده کردم اما مشکل اینجاست که چون دایم داره منو را اسکن میکنه هی های لایت چشمک میزنه چون این خط اجرا میشه
        DrawStringAt(0, 1, Ctemp, BLACK, WHITE);
        البته در این دستور جای BLACK و WHITE راهم عوض کردم اما باز هم نشد کاراکترها به هم میریزه من میخوام یک متن در حالت عادی نمایش داده بشه و وقتی انتخاب میکنم های لایت بشه و وقتی تنظیم تمام شد دوباره به حالت عادی برگرده ممنون از راهنمایی شما

        دیدگاه


          #19
          پاسخ : سوال درباره ارسال اطلاعات متغیر به GLCD با توابع کتابخانه ای KS0108 + عکس

          نوشته اصلی توسط زوار
          با سلام و تشکر از شما من از دستوری که شما گفتید استفاده کردم اما مشکل اینجاست که چون دایم داره منو را اسکن میکنه هی های لایت چشمک میزنه چون این خط اجرا میشه
          DrawStringAt(0, 1, Ctemp, BLACK, WHITE);
          البته در این دستور جای BLACK و WHITE راهم عوض کردم اما باز هم نشد کاراکترها به هم میریزه من میخوام یک متن در حالت عادی نمایش داده بشه و وقتی انتخاب میکنم های لایت بشه و وقتی تنظیم تمام شد دوباره به حالت عادی برگرده ممنون از راهنمایی شما
          با سلام،

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

          Sh_Nourbakhsh@Yahoo.com

          http://s2.picofile.com/file/7170362468/_Wall_e_.jp

          دیدگاه


            #20
            پاسخ : سوال درباره ارسال اطلاعات متغیر به GLCD با توابع کتابخانه ای KS0108 + عکس

            ممنون از پاسخت این کل برنامم اگر چیز دیگه ای هم لازمه بفرمایید باز هم از وقتی که گذاشتید ممنونم
            کد:
            [left]
            //-----------------------------------------------------------------------------
            // Copyright:   RAD Electronic Co. LTD,
            // Author:     Sh. Nourbakhsh Rad
            // Remarks:    
            // known Problems: none
            // Version:    20.03.2011
            // Description:  ATMEGA128 interface
            //-----------------------------------------------------------------------------
            
            //	Include Headers
            //*****************************************************************************
            #include "app_config.h"
            
            //------------------------
            #include "GLCD\ks0108.h"
            #include "Graphic\Graphic.h"
            
            #include "FONT\Font.h"
            #include "FONT\font\f5x7.h"
            #include "FONT\font\AF12x16.h"
            
            //------------------------
            #include "BMP\Pinguino.h"
            #include "BMP\Ptest.h"
            
            
            //	Constants and Varables
            //*****************************************************************************
            
            //Temp Const.
            bit       key_flag=0;
            char 			Ctemp[50];
            volatile unsigned char  key_buff,key_old,key_valu;
            unsigned char  set_count=0;
            unsigned char  s_menu=0;
            unsigned int  freq,acc,dec,run,dire;
            const char   set=0xe;
            const char   up=0xd;
            const char   down=0xb;
            const char   save=0x7;
            //void read_key(void);
            void setting(void);
            void menu_setting(void);
            void select_menu(void);
            void menu(void);
            void dir(void);
            
            //	Functions Prototype
            //*****************************************************************************
            
            // External Interrupt 7 service routine
            interrupt [EXT_INT7] void ext_int7_isr(void)
            {
            DDRE=0x80;
            PORTE=0x0;
            //delay_ms(20);
            key_buff=PINA;
            key_buff=key_buff&0x0f;
            if(key_buff!=key_old)
            {
            key_old=key_buff;
            switch(key_buff)
            {
            case 0xe:
                 key_valu=set;
                 key_flag=1;
                 break;
            case 0xd:
                 key_valu=up;
                 key_flag=1;
                 break; 
            case 0xb:
                 key_valu=down;
                 key_flag=1;
                 break;
            case 0x7:
                 key_valu=save;
                 key_flag=1;
                 break; 
            }
            }
            DDRE.7=0x0;
            PORTE.7=0x1;
            
            }
            //	<<< main function >>>
            //*****************************************************************************
            
            void main(void)
            {
            // External Interrupt(s) initialization
            // INT0: Off
            // INT1: Off
            // INT2: Off
            // INT3: Off
            // INT4: Off
            // INT5: Off
            // INT6: Off
            // INT7: On
            // INT7 Mode: Falling Edge
            EICRA=0x00;
            EICRB=0x80;
            EIMSK=0x80;
            EIFR=0x80;
            PORTC.6=1;
            DDRC.6=1;
            //PORTC.3=1;
            //DDRC.3=1;
            KS108_Init(NON_INVERTED);
            KS108_CLSx();
            LcdFontSpace(1);
            LcdNonTransparence(1);
            #asm("sei")
            //key_buff=PINA;
            //key_old=key_buff&0x0f;
            while(1)
            {
            setting();
            menu_setting();
            select_menu();
            menu();
            }
            }
            
            void setting(void)
             { 
              if(key_flag==1) 
              {   
               if(key_valu==set)
               {  
               key_flag=0; 
               set_count++;
               if(set_count>5)set_count=0;
               } 
              }
             }
            void menu_setting(void)
            {
            switch(s_menu)
              {
                case 1:
                dir();
                break;
                case 2:
                //freq_motor();
                break;
                case 3:
                //acc();
                break;
                case 4:
                //dec();
                break; 
                case 5:
                //run();
                break;
              } 
            }
            void select_menu(void)
            {
            static unsigned char x=2;
             if(key_flag==1) 
             {    
               if(key_valu==up&&set_count==1)
               { 
               Circle_Fill(2,x,1,40,WHITE);
               if(--s_menu<1)s_menu=1; 
               x=x-14; 
               if(x<1)x=2; 
               Circle_Fill(2,x,1,40,BLACK);
               key_flag=0;
               }
               if(key_valu==down&&set_count==1)
               { 
               Circle_Fill(2,x,1,40,WHITE);
               if(++s_menu>5)s_menu=1; 
               x=x+14;
               if(x>64)x=64; 
               Circle_Fill(2,x,1,40,BLACK);
               key_flag=0;
               }
             }
            }
            void dir(void)
            {
            if(key_valu==up&&set_count==2)
            {
            KS108_InvertRect(1,0,100,8);
            //sprintf(Ctemp, "DIRECTION  :%u ",dire);
            //DrawStringAt(0, 1, Ctemp, WHITE,BLACK );
            dire++;
            
            }
            }
            void menu(void)
            {
            LcdFont(f5x7);
            //LcdFont(AF12x16);
            sprintf(Ctemp, "DIRECTION  :%u ",dire);
            DrawStringAt(0, 1, Ctemp, BLACK, WHITE);
            sprintf(Ctemp, "FREQ MOTOR  :%u",set_count);
            DrawStringAt(2, 1, Ctemp, BLACK, WHITE);
            sprintf(Ctemp, "ACCELERATION:%u",s_menu);
            DrawStringAt(4, 1, Ctemp, BLACK, WHITE);
            sprintf(Ctemp, "DECELEWRATION:%u",key_valu);
            DrawStringAt(6, 1, Ctemp, BLACK, WHITE);
            sprintf(Ctemp, "MOTOR     :%u",run);
            DrawStringAt(8, 1, Ctemp, BLACK, WHITE);
            }
            [/left]

            دیدگاه


              #21
              پاسخ : سوال درباره ارسال اطلاعات متغیر به GLCD با توابع کتابخانه ای KS0108 + عکس

              نوشته اصلی توسط زوار
              ممنون از پاسخت این کل برنامم اگر چیز دیگه ای هم لازمه بفرمایید باز هم از وقتی که گذاشتید ممنونم
              کد:
              [left]
              //-----------------------------------------------------------------------------
              // Copyright:   RAD Electronic Co. LTD,
              // Author:     Sh. Nourbakhsh Rad
              // Remarks:    
              // known Problems: none
              // Version:    20.03.2011
              // Description:  ATMEGA128 interface
              //-----------------------------------------------------------------------------
              
              //	Include Headers
              //*****************************************************************************
              #include "app_config.h"
              
              //------------------------
              #include "GLCD\ks0108.h"
              #include "Graphic\Graphic.h"
              
              #include "FONT\Font.h"
              #include "FONT\font\f5x7.h"
              #include "FONT\font\AF12x16.h"
              
              //------------------------
              #include "BMP\Pinguino.h"
              #include "BMP\Ptest.h"
              
              
              //	Constants and Varables
              //*****************************************************************************
              
              //Temp Const.
              bit       key_flag=0;
              char 			Ctemp[50];
              volatile unsigned char  key_buff,key_old,key_valu;
              unsigned char  set_count=0;
              unsigned char  s_menu=0;
              unsigned int  freq,acc,dec,run,dire;
              const char   set=0xe;
              const char   up=0xd;
              const char   down=0xb;
              const char   save=0x7;
              //void read_key(void);
              void setting(void);
              void menu_setting(void);
              void select_menu(void);
              void menu(void);
              void dir(void);
              
              //	Functions Prototype
              //*****************************************************************************
              
              // External Interrupt 7 service routine
              interrupt [EXT_INT7] void ext_int7_isr(void)
              {
              DDRE=0x80;
              PORTE=0x0;
              //delay_ms(20);
              key_buff=PINA;
              key_buff=key_buff&0x0f;
              if(key_buff!=key_old)
              {
              key_old=key_buff;
              switch(key_buff)
              {
              case 0xe:
                   key_valu=set;
                   key_flag=1;
                   break;
              case 0xd:
                   key_valu=up;
                   key_flag=1;
                   break; 
              case 0xb:
                   key_valu=down;
                   key_flag=1;
                   break;
              case 0x7:
                   key_valu=save;
                   key_flag=1;
                   break; 
              }
              }
              DDRE.7=0x0;
              PORTE.7=0x1;
              
              }
              //	<<< main function >>>
              //*****************************************************************************
              
              void main(void)
              {
              // External Interrupt(s) initialization
              // INT0: Off
              // INT1: Off
              // INT2: Off
              // INT3: Off
              // INT4: Off
              // INT5: Off
              // INT6: Off
              // INT7: On
              // INT7 Mode: Falling Edge
              EICRA=0x00;
              EICRB=0x80;
              EIMSK=0x80;
              EIFR=0x80;
              PORTC.6=1;
              DDRC.6=1;
              //PORTC.3=1;
              //DDRC.3=1;
              KS108_Init(NON_INVERTED);
              KS108_CLSx();
              LcdFontSpace(1);
              LcdNonTransparence(1);
              #asm("sei")
              //key_buff=PINA;
              //key_old=key_buff&0x0f;
              while(1)
              {
              setting();
              menu_setting();
              select_menu();
              menu();
              }
              }
              
              void setting(void)
               { 
                if(key_flag==1) 
                {   
                 if(key_valu==set)
                 {  
                 key_flag=0; 
                 set_count++;
                 if(set_count>5)set_count=0;
                 } 
                }
               }
              void menu_setting(void)
              {
              switch(s_menu)
                {
                  case 1:
                  dir();
                  break;
                  case 2:
                  //freq_motor();
                  break;
                  case 3:
                  //acc();
                  break;
                  case 4:
                  //dec();
                  break; 
                  case 5:
                  //run();
                  break;
                } 
              }
              void select_menu(void)
              {
              static unsigned char x=2;
               if(key_flag==1) 
               {    
                 if(key_valu==up&&set_count==1)
                 { 
                 Circle_Fill(2,x,1,40,WHITE);
                 if(--s_menu<1)s_menu=1; 
                 x=x-14; 
                 if(x<1)x=2; 
                 Circle_Fill(2,x,1,40,BLACK);
                 key_flag=0;
                 }
                 if(key_valu==down&&set_count==1)
                 { 
                 Circle_Fill(2,x,1,40,WHITE);
                 if(++s_menu>5)s_menu=1; 
                 x=x+14;
                 if(x>64)x=64; 
                 Circle_Fill(2,x,1,40,BLACK);
                 key_flag=0;
                 }
               }
              }
              void dir(void)
              {
              if(key_valu==up&&set_count==2)
              {
              KS108_InvertRect(1,0,100,8);
              //sprintf(Ctemp, "DIRECTION  :%u ",dire);
              //DrawStringAt(0, 1, Ctemp, WHITE,BLACK );
              dire++;
              
              }
              }
              void menu(void)
              {
              LcdFont(f5x7);
              //LcdFont(AF12x16);
              sprintf(Ctemp, "DIRECTION  :%u ",dire);
              DrawStringAt(0, 1, Ctemp, BLACK, WHITE);
              sprintf(Ctemp, "FREQ MOTOR  :%u",set_count);
              DrawStringAt(2, 1, Ctemp, BLACK, WHITE);
              sprintf(Ctemp, "ACCELERATION:%u",s_menu);
              DrawStringAt(4, 1, Ctemp, BLACK, WHITE);
              sprintf(Ctemp, "DECELEWRATION:%u",key_valu);
              DrawStringAt(6, 1, Ctemp, BLACK, WHITE);
              sprintf(Ctemp, "MOTOR     :%u",run);
              DrawStringAt(8, 1, Ctemp, BLACK, WHITE);
              }
              [/left]
              برادر زوار عزیز، ببخشید که این رو میگم، همونطور که حدس میزدم، روشت اصلا خوب و اصولی نیست. نباید هی منو رو رسم کنی و یا تغییرش بدی، درحالی که نیازی نیست.

              راستش یه کمی زیاد سرم شلوغه، وقت کردم یه منو برات مینویسم....
              مادامی که از شخصی یاد میشود، او و افکارش زنده اند ....

              Sh_Nourbakhsh@Yahoo.com

              http://s2.picofile.com/file/7170362468/_Wall_e_.jp

              دیدگاه


                #22
                پاسخ : سوال درباره ارسال اطلاعات متغیر به GLCD با توابع کتابخانه ای KS0108 + عکس

                نوشته اصلی توسط aivhl
                برادر زوار عزیز، ببخشید که این رو میگم، همونطور که حدس میزدم، روشت اصلا خوب و اصولی نیست. نباید هی منو رو رسم کنی و یا تغییرش بدی، درحالی که نیازی نیست.

                راستش یه کمی زیاد سرم شلوغه، وقت کردم یه منو برات مینویسم....
                ممنون از پاسخت در حالت عادی حق با شماست اما در هنگام تنظیم باید منو را دایم اسکن کنم تا تغییرات اعداد را ببینم اما از شما ممنون میشم اگر یه نم.نه برنامه خوب برای منو بذارید

                دیدگاه


                  #23
                  پاسخ : سوال درباره ارسال اطلاعات متغیر به GLCD با توابع کتابخانه ای KS0108 + عکس

                  سلام جناب آقای مهندس aivhl
                  شرمنده که وقتتون رو می گیریم
                  خب ماییم دیگه
                  یه زره نفهمیم X_X X_X X_X X_X X_X X_X X_X X_X X_X X_X X_X
                  ببین داداش
                  من کلا میکرو رو از کتاب آقای بادامی نژاد یا گرفتم
                  داخل کتاب همه چیز رو خوب یاد داده الا ال سی دی گرافیکی
                  البته زبانش هم c هست
                  ازتون یه سوال کوچولو داشتم
                  داخل کتاب آقای بادامی نژاد اصلا هیچ تابعی برای ال سی دی نیست
                  و ال سی دی رو به روش دستی کنترل کرده
                  مثلا پایه اینیبل رو یک کرده و از اینجور چیزا
                  برا همین برنامه پیچیده شده
                  اما تو یه کتاب دیگه دیدم که اصلا این کارا رو نکرده بود و خیلی راحت و ساده در حد ال سی دی کارکتری با گرافیکی ارتباط بر قرار کرده بود
                  برنامش رو می زارم
                  شما بگید این برنامه کتاب دومی که بسیر کوتاه هست و اصلا روش آقای بادامی نژاد رو نداره درست هست یا نه


                  برنامه آسونه

                  برنامهآقای بادامی نژاد (سخت)

                  دیدگاه


                    #24
                    پاسخ : سوال درباره ارسال اطلاعات متغیر به GLCD با توابع کتابخانه ای KS0108 + عکس

                    با سلام،

                    نفرمائید برادر، شکسته نفسی میکنید .......

                    نکته اینه که شما برای استفاده از یک سخت افزار مثل LCD یه تعداد پین های سخت افزاری دارید که اونها رو به میکرو متصل میکنید و این پین ها هر کدوم وظیفه ای بعهده دارند که به تفصیل در مورد نحوه عملکرد اونها در دیتاشیت مربوطه بحث شده. بطور مثال، این پین ها شامل خطوط دیتا (که ممکنه موازی و یا سریال باشن )، چیپ سلکت، ریست و غیره هستند.
                    بطور خلاصه، برای ارسال اطلاعات به یک دیوایس و یا خوندن اطلاعات از اون، رعایت یک سری نکات و روالهای مشخص، مطابق دیتاشیت مربوطه، الزامیه .....

                    با توجه به توضیحات اخیر، آقای بادامی نژاد مطابق دیتاشیت برنامه رو نوشته که میشه گفت برنامه نویسی سطح پائین انجام داده ( یعنی اینکه بسیار به سخت افزار نزدیکه ) ولی در برنامه آسونه، برنامه نویسی سطح بالا انجام شده، یعنی اینکه یک نفر مطلع و متخصص قبلا مطابق دیتاشیت، درایور LCD رو نوشته ( همون چیپ سلکت و اینیبل و اینا .... ) و در فایل glcd.h قرار داده و یه نفر دیگه ( که ممکنه از جزئیات سخت افزار LCD هم خبر نداشته باشه! )، اومده و این فایل رو در پروژه خودش include کرده و از اون استفاده کرده.
                    حالا مثلا لزومی نداره که این استفاده کننده بدونه برای پاک کردن LCD ، چه دیتایی و با چه روشی باید به LCD ارسال بشه و فقط کافیه که از دستور glcd_clear استفاده کنه ولی توجه داشته باشید که در عمل، برنامه و میکرو با جزئیات و چیپ سلکت و اینیبل و اینا سرو کار داره......

                    معمولا برنامه نویس ها ( چه در سطح میکرو و یا کامپیوتره و غیره ) برنامه های خودشون رو به تکه های کوچکی تبدیل میکنند و اونها رو به شکل ماژول های کوچکی به اسم کتابخونه و یا هر اسم دیگه ای در برنامه های بزرگ استفاده میکنند. مزیت این کار، کوچک تر شدن کدهای برنامه، خلاصه شدن برنامه ها و مفهومی تر شدن اونهاست، مضاف بر اینکه، با تجربه تر ها و حرفه ای ها میتونن، اطلاعات خودشون رو مجانی و یا پولی در اختیار سایرین بگذارند.
                    برای نمونه، مثلا کتابخونه های بسیار متنوع برنامه نویسی در محیط های مختلفی مثل دلفی که در اینترنت بصورت مجانی و یا پولی وجود داره، بطور نمونه کتابخونه ارتباط پورت سریال در دلفی!

                    برادر، جوابت رو گرفتی؟! اگر مفهوم نبود، بگو تا بیشتر توضیح بدم ...
                    مادامی که از شخصی یاد میشود، او و افکارش زنده اند ....

                    Sh_Nourbakhsh@Yahoo.com

                    http://s2.picofile.com/file/7170362468/_Wall_e_.jp

                    دیدگاه


                      #25
                      پاسخ : سوال درباره ارسال اطلاعات متغیر به GLCD با توابع کتابخانه ای KS0108 + عکس

                      برادر، جوابت رو گرفتی؟! اگر مفهوم نبود، بگو تا بیشتر توضیح بدم ..
                      نه عالی بود
                      برای من که هیچ اطلاعاتی در زمینه این ال سی دی ها نداشتم عالی بود استاد
                      ولی یه سوال استاد
                      داخل سی دی این کتاب آسونه فایل آزمایش این برنامه در پروتئوس بود
                      خب ال سی دی روشن شد و خیلی هم خوب جواب می ده
                      حالا من می خوام یه دفتر نقاشی بسازم
                      می خوام ببینم از چه ال سی دی هایی می تونم استفاده کنم تا با این کتاب خونه کار کنند
                      منظورم اینه که مثلا تو فایل پروتئوس اومده از ال سی دی 64*128 استفاده شده
                      حالا من اگه بیام ال سی دی 128*256 وصل کنم بازم می تونم از همین توابع استفاده کنم
                      راستی چیپ ال سی دی ها باید چی باشند
                      من عکس فایل پروتئوس رو می زارم اینجا شما بگو من باید از چه ال سی دی استفاده کنم
                      آخه تو پروتئوس پایه بقیه ال سی دی ها با این ال سی دی هیچ مشابهتی نداره
                      و من نمی دونم اگه بخوام از ال سی دی دیگه ای استفاده کنم باید چی کار کنم استاد :angry:

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



                      اینم صفحه بعدش هست




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

                      دیدگاه


                        #26
                        پاسخ : سوال درباره ارسال اطلاعات متغیر به GLCD با توابع کتابخانه ای KS0108 + عکس

                        با سلام،

                        ال سی دی 128x64 پروتئوس مدل KS0108 هستش و معمولا پایه ها و عملکرد در پروتئوس با واقعیت کمی متفاوته.....

                        در کل شما باید اول LCD مورد نظر رو تهیه کنی و بعدش درایورش رو پیدا کرده و استفاده کنی، معمولا درایور LCD های موجود در بازار توی اینترنت و همین انجمن پیدا میشه. چیپ LCD با سایز بزرگتر که در بازار یافت میشه، معمولا T6963 هستش.

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

                        به اینجاها هم یه سری بزن، ضرر نداره :

                        http://www.eca.ir/forum2/index.php?topic=51530.0
                        http://www.eca.ir/forum2/index.php?topic=18025.msg286993#msg286993
                        مادامی که از شخصی یاد میشود، او و افکارش زنده اند ....

                        Sh_Nourbakhsh@Yahoo.com

                        http://s2.picofile.com/file/7170362468/_Wall_e_.jp

                        دیدگاه


                          #27
                          پاسخ : سوال درباره ارسال اطلاعات متغیر به GLCD با توابع کتابخانه ای KS0108 + عکس

                          اقا من یه ال سی دی ts12864a2 دارم هر چی گشتم نتونستم ترتیب و اسم پین هاشو دربیارم!
                          کسی دیتا شیتش رو داره؟

                          دیدگاه


                            #28
                            پاسخ : سوال درباره ارسال اطلاعات متغیر به GLCD با توابع کتابخانه ای KS0108 + عکس

                            نوشته اصلی توسط RAZORBACK
                            اقا من یه ال سی دی ts12864a2 دارم هر چی گشتم نتونستم ترتیب و اسم پین هاشو دربیارم!
                            کسی دیتا شیتش رو داره؟
                            با سلام،

                            به احتمال خیلی زیاد، دیتاشیتش اینه .....

                            http://s1.picofile.com/file/7338028381/LCD12864A.pdf.html
                            مادامی که از شخصی یاد میشود، او و افکارش زنده اند ....

                            Sh_Nourbakhsh@Yahoo.com

                            http://s2.picofile.com/file/7170362468/_Wall_e_.jp

                            دیدگاه


                              #29
                              پاسخ : سوال درباره ارسال اطلاعات متغیر به GLCD با توابع کتابخانه ای KS0108 + عکس

                              ممنون
                              برای این که تست کنم lcd سالمه چیکار باید بکنم؟

                              دیدگاه


                                #30
                                پاسخ : سوال درباره ارسال اطلاعات متغیر به GLCD با توابع کتابخانه ای KS0108 + عکس

                                نوشته اصلی توسط RAZORBACK
                                ممنون
                                برای این که تست کنم lcd سالمه چیکار باید بکنم؟
                                با سلام،

                                تنها راه، بستن یه مدار جهت تست و با یک میکرو و برنامه مطمئنه! به هیچ وجه هم از برد بورد برای تست استفاده نکن.

                                در ضمن، LCD من که از بازار تهران خریدم و رووش نوشته TS12864A2 رو با همین دیتاشیت راه انداختم و درایورش رو نوشتم!
                                مادامی که از شخصی یاد میشود، او و افکارش زنده اند ....

                                Sh_Nourbakhsh@Yahoo.com

                                http://s2.picofile.com/file/7170362468/_Wall_e_.jp

                                دیدگاه

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