ورود به حساب ثبت نام جدید فراموشی کلمه عبور
برای ورود به حساب کاربری خود، نام کاربری و کلمه عبورتان را در زیر وارد کرده و روی «ورود به سایت» کلیک کنید.





اگر فرم ورود برای شما نمایش داده نمیشود، اینجا را کلیک کنید.









اگر فرم ثبت نام برای شما نمایش داده نمی‌شود، اینجا را کلیک کنید.









اگر فرم بازیابی کلمه عبور برای شما نمایش داده نمی‌شود، اینجا را کلیک کنید.





کاربران برچسب زده شده

نمایش نتایج: از 1 به 5 از 5
  1. #1
    2007/08/02
    1,297
    786

    سرعت کم در ssd1963

    درود
    من با stm32f103 با سرعت 73 مگ ال سی دی 4.3 اینج راه اندازی کردم
    مشکل این هست که چرا سرعت انقدر پایینه
    مثلا برای پاک کردم صفحه 1 تا 1.5 ثانیه طول میکشه
    باید چیکار کنم که توی مثلا 50 میلی ثانیه یه عکس نمایش بده ؟؟؟


    کد:
     
    کد:
    void LCD_Init(void) { SSD_RESET; //LCD_Configuration();lcd_write_command #define LCD_WriteCom LCD_WR_REG #define LCD_WriteRAM LCD_WR_DATA #define SSD1963_WriteCommand LCD_WriteCom #define SSD1963_WriteData LCD_WriteRAM #define TimeDelay(x) Delay_10ms(x/2) /*ssd1963?????*/ LCD_WriteCom(0x00E2); LCD_WriteRAM(0x0023); // Set PLL with OSC = 10MHz (hardware) // Multiplier N = 35, VCO (>250MHz)= OSC*(N+1), VCO = 360MHz LCD_WriteRAM(0x0001); // Divider M = 2, PLL = 360/(M+1) = 120MHz LCD_WriteRAM(0x0004); // Validate M and N values SSD1963_WriteCommand(SSD1963_SET_PLL_MN); SSD1963_WriteData(0x1D); // PLLclk = REFclk * 30 (300MHz) SSD1963_WriteData(0x02); // SYSclk = PLLclk / 3 (100MHz) SSD1963_WriteData(0x54); // dummy TimeDelay(1); LCD_WriteCom(0x00E0); // PLL enable LCD_WriteRAM(0x0001); TimeDelay(1); LCD_WriteCom(0x00E0); LCD_WriteRAM(0x0003); TimeDelay(1); LCD_WriteCom(0x0001); // software reset TimeDelay(1); LCD_WriteCom(0x00E6); LCD_WriteRAM(0x0004); LCD_WriteRAM(0x0093); LCD_WriteRAM(0x00e0); LCD_WriteCom(0x00B0); //LCD SPECIFICATION LCD_WriteRAM(0x0000); LCD_WriteRAM(0x0000); LCD_WriteRAM((HDP>>8)&0X00FF); //Set HDP LCD_WriteRAM(HDP&0X00FF); LCD_WriteRAM((VDP>>8)&0X00FF); //Set VDP LCD_WriteRAM(VDP&0X00FF); LCD_WriteRAM(0x0000); TimeDelay(1); LCD_WriteCom(0x00B4); //HSYNC LCD_WriteRAM((HT>>8)&0X00FF); //Set HT LCD_WriteRAM(HT&0X00FF); LCD_WriteRAM((HPS>>8)&0X00FF); //Set HPS LCD_WriteRAM(HPS&0X00FF); LCD_WriteRAM(HPW); //Set HPW LCD_WriteRAM((LPS>>8)&0X00FF); //Set HPS LCD_WriteRAM(LPS&0X00FF); LCD_WriteRAM(0x0000); TimeDelay(1); LCD_WriteCom(0x00B6); //VSYNC LCD_WriteRAM((VT>>8)&0X00FF); //Set VT LCD_WriteRAM(VT&0X00FF); LCD_WriteRAM((VPS>>8)&0X00FF); //Set VPS LCD_WriteRAM(VPS&0X00FF); LCD_WriteRAM(VPW); //Set VPW LCD_WriteRAM((FPS>>8)&0X00FF); //Set FPS LCD_WriteRAM(FPS&0X00FF); TimeDelay(1); LCD_WriteCom(0x00BA); LCD_WriteRAM(0x0005);//0x000F); //GPIO[3:0] out 1 TimeDelay(1); LCD_WriteCom(0x00B8); LCD_WriteRAM(0x0007); //GPIO3=input, GPIO[2:0]=output LCD_WriteRAM(0x0001); //GPIO0 normal TimeDelay(1); LCD_WriteCom(0x0036); //rotation LCD_WriteRAM(0x0008); TimeDelay(1); LCD_WriteCom(0x00F0); //pixel data interface LCD_WriteRAM(0x0003); TimeDelay(1); TimeDelay(1); LCD_WriteCom(0x0029); //display on TimeDelay(1); LCD_WriteCom(0x00BE); //set PWM for B/L LCD_WriteRAM(0x0006); LCD_WriteRAM(0x0080); TimeDelay(1); LCD_WriteRAM(0x0001); LCD_WriteRAM(0x00f0); LCD_WriteRAM(0x0000); LCD_WriteRAM(0x0000); TimeDelay(1); LCD_WriteCom(0x00d0);//?????????? LCD_WriteRAM(0x000d); TimeDelay(1);
    //LCD_Clear(BLACK); }

  2. #2
    2016/06/21
    232
    68

    پاسخ : سرعت کم در ssd1963

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

    مهمان عزیز شما حق دیدن لینک ها را ندارید

    عضویت

    ویرایش توسط MM320 : 2017/06/01 در ساعت 11:13
  3. #3
    2014/01/25
    شهرکرد
    247
    266

    پاسخ : سرعت کم در ssd1963

    نقل قول نوشته اصلی توسط sepehr63

    مهمان عزیز شما حق دیدن لینک ها را ندارید

    عضویت

    درود
    من با stm32f103 با سرعت 73 مگ ال سی دی 4.3 اینج راه اندازی کردم
    مشکل این هست که چرا سرعت انقدر پایینه
    مثلا برای پاک کردم صفحه 1 تا 1.5 ثانیه طول میکشه
    باید چیکار کنم که توی مثلا 50 میلی ثانیه یه عکس نمایش بده ؟؟؟
    برا کنترل نمایشگر از fsmc استفاده کنین، اینجوری بجای حداقل 4 کلاک ماشین از 1 کلاک ماشین استفاده میشه. اون 3 کلاک رو از یکیش برا جلو بردن پوینتر ، یکیش برا چک رسیدن به انتها بافر عکس و یکی برای کپی از حافظه دیگه به محل رجیستر fsmc استفاده کنین.
    تنظیمات کامپایلر تاثیر چندانی روی سرعت این تسک نداره، بستگی به کد نویسی کار بر داره.
    اگه عکس قراره از میکرو sd خونده بشه بهتره کل عکس روی sdram خارجی یا قسمتیش در sram میکرو ذخیره بشه و برای خوندن هر یه بایت به حافظه خارجی رجوع نشه.
  4. #4
    2007/08/02
    1,297
    786

    پاسخ : سرعت کم در ssd1963

    نقل قول نوشته اصلی توسط MM320

    مهمان عزیز شما حق دیدن لینک ها را ندارید

    عضویت

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

    مهمان عزیز شما حق دیدن لینک ها را ندارید

    عضویت

    ممنون . این کارو کردم یکم تغییر داشت ولی یه مشکلی داره
    وقتی این گزینه هارو فعال میکنیم با هر بار کامپایل نرم افزار کل پروژه کامپایل میکنه . 2 دقیقه طول میکشه تا کامپایل کنه ؟؟؟

    دلیل: ادغام دو پست برای جلوگیری از اسپم

    نقل قول نوشته اصلی توسط محمد پورخلیلی

    مهمان عزیز شما حق دیدن لینک ها را ندارید

    عضویت

    برا کنترل نمایشگر از fsmc استفاده کنین، اینجوری بجای حداقل 4 کلاک ماشین از 1 کلاک ماشین استفاده میشه. اون 3 کلاک رو از یکیش برا جلو بردن پوینتر ، یکیش برا چک رسیدن به انتها بافر عکس و یکی برای کپی از حافظه دیگه به محل رجیستر fsmc استفاده کنین.
    تنظیمات کامپایلر تاثیر چندانی روی سرعت این تسک نداره، بستگی به کد نویسی کار بر داره.
    اگه عکس قراره از میکرو sd خونده بشه بهتره کل عکس روی sdram خارجی یا قسمتیش در sram میکرو ذخیره بشه و برای خوندن هر یه بایت به حافظه خارجی رجوع نشه.
    ممنون که جواب دادی . من برای اینکه 50 تا آیکن دارم که نمیشه به صورت عکس کد کرد و داخل حافظه میکرو ریخت مجبور شدم آیکن هامو به صورت 32*32 تک رنگ در بیارم و توی خود میکرو آیکن بزرگ کنم که حجم کمتری بگیره . علت اصلی هم همینه که سرعت میکرو گرفته ؟؟؟
    اندازه آیکن هم میشه بزرگ و کوچیک کرد .


    const unsigned char ICON_DAFTAR[128]=
    {
    0x00,0x00,0x00,0x00, // 0004 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
    0x00,0x00,0x00,0x00, // 0008 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
    0x00,0x00,0x00,0x00, // 000C . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
    0x0F,0xFF,0xFF,0x00, // 0010 . . . . # # # # # # # # # # # # # # # # # # # # . . . . . . . .
    0x08,0x00,0x02,0x80, // 0014 . . . . # . . . . . . . . . . . . . . . . . # . # . . . . . . .
    0x08,0x00,0x02,0x40, // 0018 . . . . # . . . . . . . . . . . . . . . . . # . . # . . . . . .
    0x08,0x00,0x02,0x20, // 001C . . . . # . . . . . . . . . . . . . . . . . # . . . # . . . . .
    0x08,0x00,0x02,0x10, // 0020 . . . . # . . . . . . . . . . . . . . . . . # . . . . # . . . .
    0x08,0x00,0x03,0xF0, // 0024 . . . . # . . . . . . . . . . . . . . . . . # # # # # # . . . .
    0x08,0x7F,0xFE,0x10, // 0028 . . . . # . . . . # # # # # # # # # # # # # # . . . . # . . . .
    0x08,0x00,0x00,0x10, // 002C . . . . # . . . . . . . . . . . . . . . . . . . . . . # . . . .
    0x08,0x00,0x00,0x10, // 0030 . . . . # . . . . . . . . . . . . . . . . . . . . . . # . . . .
    0x08,0x7F,0xFE,0x10, // 0034 . . . . # . . . . # # # # # # # # # # # # # # . . . . # . . . .
    0x08,0x00,0x00,0x10, // 0038 . . . . # . . . . . . . . . . . . . . . . . . . . . . # . . . .
    0x08,0x00,0x00,0x10, // 003C . . . . # . . . . . . . . . . . . . . . . . . . . . . # . . . .
    0x08,0x7F,0xFE,0x10, // 0040 . . . . # . . . . # # # # # # # # # # # # # # . . . . # . . . .
    0x08,0x00,0x00,0x10, // 0044 . . . . # . . . . . . . . . . . . . . . . . . . . . . # . . . .
    0x08,0x00,0x00,0x10, // 0048 . . . . # . . . . . . . . . . . . . . . . . . . . . . # . . . .
    0x08,0x7F,0xFE,0x10, // 004C . . . . # . . . . # # # # # # # # # # # # # # . . . . # . . . .
    0x08,0x00,0x00,0x10, // 0050 . . . . # . . . . . . . . . . . . . . . . . . . . . . # . . . .
    0x08,0x00,0x00,0x10, // 0054 . . . . # . . . . . . . . . . . . . . . . . . . . . . # . . . .
    0x08,0x7F,0xFE,0x10, // 0058 . . . . # . . . . # # # # # # # # # # # # # # . . . . # . . . .
    0x08,0x00,0x00,0x10, // 005C . . . . # . . . . . . . . . . . . . . . . . . . . . . # . . . .
    0x08,0x00,0x00,0x10, // 0060 . . . . # . . . . . . . . . . . . . . . . . . . . . . # . . . .
    0x08,0x7F,0xFE,0x10, // 0064 . . . . # . . . . # # # # # # # # # # # # # # . . . . # . . . .
    0x08,0x00,0x00,0x10, // 0068 . . . . # . . . . . . . . . . . . . . . . . . . . . . # . . . .
    0x08,0x00,0x00,0x10, // 006C . . . . # . . . . . . . . . . . . . . . . . . . . . . # . . . .
    0x08,0x7F,0xFE,0x10, // 0070 . . . . # . . . . # # # # # # # # # # # # # # . . . . # . . . .
    0x08,0x00,0x00,0x10, // 0074 . . . . # . . . . . . . . . . . . . . . . . . . . . . # . . . .
    0x08,0x00,0x00,0x10, // 0078 . . . . # . . . . . . . . . . . . . . . . . . . . . . # . . . .
    0x0F,0xFF,0xFF,0xF0, // 007C . . . . # # # # # # # # # # # # # # # # # # # # # # # # . . . .
    0x00,0x00,0x00,0x00 // 0080 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
    };






    void LCD_WRITE_ICONE32(int Xi , int Yi , int COLOR,int BACKLIGHT,char SIZE ,const char *pic){


    int i,T=0;
    int i2;
    long x,y;
    char data;
    int s,c;


    y=Yi;
    for(i2=0 ; i2<128 ; i2+=4){
    data=pic[i2+3];
    x=Xi;
    for(i=0 ; i<32 ; i++){


    if(i==8)data=pic[i2+2];
    else if(i==16)data=pic[i2+1];
    else if(i==24)data=pic[i2];
    //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    if((data & 1)==0 ){
    for(c=0 ; c<SIZE; c++)
    {
    for(s=0 ; s<SIZE ; s++)lcd_write_pixel(x+s+i,y+c,BACKLIGHT);
    }
    }
    //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    else {
    for(c=0 ; c<SIZE; c++){
    for(s=0 ; s<SIZE ; s++)lcd_write_pixel(x+s+i,y+c,COLOR);
    }

    }
    data>>=1;
    x=(x+SIZE)-2;


    }
    y=y+(SIZE)-1;
    }

    }




    //++++++++++++++++++++++++++++++++++++++++++++++++++
    ویرایش توسط sepehr63 : 2017/06/05 در ساعت 15:18
  5. #5
    2012/06/21
    60
    15

    پاسخ : سرعت کم در ssd1963

    دوست عزیز اگه از fsmc استفاده نمیکنی ،واسه سرعت بیشتر اولا برای نمایش عکس از تابع استفاده نکن مثل همین تابع lcd_write_icon که نوشتی. یعنی برای انتقال تصویر به ssd1963 توی خود برنامه اصلی دستورات رو بنویس، چون که فراخوانی تابع و برگشتن اون به خط بعد از تابع، چند سیکل طول میکشه که این خودش سرعت برنامه رو کاهش میده . از for های تو در تو(یعنی دو تا for داخل هم) هم مثل این تابعlcd_write_icon استفاده نکن که این خودش سرعت رو کاهش میده بجاش از یه while استفاده کن .
    ویرایش توسط metalelec : 2017/06/05 در ساعت 15:52
نمایش نتایج: از 1 به 5 از 5

موضوعات مشابه

  1. ssd1963
    توسط masarigol در انجمن XMEGA
    پاسخ: 29
    آخرين نوشته: 2015/12/10, 02:42
  2. ssd1963
    توسط meysam_b در انجمن میکروکنترلرهای AVR
    پاسخ: 3
    آخرين نوشته: 2014/12/20, 22:47
  3. ssd1963
    توسط m_electronic در انجمن NXP
    پاسخ: 7
    آخرين نوشته: 2013/10/28, 14:41
  4. lcd ssd1963
    توسط reza13731 در انجمن میکروکنترلرهای AVR
    پاسخ: 1
    آخرين نوشته: 2013/02/04, 17:21
  5. ssd1963
    توسط masarigol در انجمن میکروکنترلرهای AVR
    پاسخ: 1
    آخرين نوشته: 2012/07/09, 23:26

کلمات کلیدی این موضوع

علاقه مندي ها (Bookmarks)

علاقه مندي ها (Bookmarks)

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •