NOTICE توجه: این یک موضوع قدیمی است که آخرین پست ارسالی آن مربوط به 1336 روز قبل است . لطفا فقط پاسخ ها ، سوالات و درخواست های 100 درصد مرتبط را به آن ارسال کنید و برای درخواست ها و سوالات جدید موضوع جدیدی را ایجاد کنید
صفحه 24 از 56 نخستنخست ... 5678910111213141516171819202122232425262728293031323334353637383940414243 ... آخرینآخرین
نمایش نتایج: از 461 به 480 از 1104

موضوع: آموزش emWin

  1. #461
    عضو جدید
    تاریخ عضویت
    Oct 2013
    نوشته ها
    13
    تشکر
    53
    تشکر شده 2 بار در 2 پست

    پیش فرض

    فایل lcdconfig ام همینه
    راستش با این توضیحاتی که داده شد و اینکه جواب نمیگیرم الآن دیگه مطمئن نیستم ili9320باشه یا ssd1289
    ....
    با تشکر از توجه دوستان
    فايل هاي پيوست شده فايل هاي پيوست شده

  2. # ADS
    Circuit advertisement
    تاریخ عضویت
    Always
    نوشته ها
    Many
     

  3. #462
    مدیر انجمن
    تاریخ عضویت
    Dec 2009
    نام
    غلامحسن منصوری
    نوشته ها
    359
    تشکر
    408
    تشکر شده 819 بار در 248 پست

    پیش فرض

    نقل قول نوشته اصلی توسط elahe11556 نمایش پست ها
    فایل lcdconfig ام همینه
    راستش با این توضیحاتی که داده شد و اینکه جواب نمیگیرم الآن دیگه مطمئن نیستم ili9320باشه یا ssd1289
    ....
    با تشکر از توجه دوستان
    کاری که ازتون خواستم رو انجام ندادین که!
    این همون فایل اولی خودتونه.
    باید از پروژه multitasking فایل lcdconf.c رو بردارید و باتوجه به فایلهای glcd.c و glcd.h خودتون، تغییرش بدین
    موفق باشید

  4. تشکرها از این نوشته :


  5. #463
    عضو جدید
    تاریخ عضویت
    Oct 2013
    نوشته ها
    13
    تشکر
    53
    تشکر شده 2 بار در 2 پست

    پیش فرض

    متوجه شدم که کنترلر السیدیم SSD1298 بوده تا الآن!!!! حالا باز دارم روش کار میکنم، بهتر شده، اما جواب نداده هنوز!!
    ویرایش توسط elahe11556 : 03-02-2014 در ساعت 17:51

  6. #464
    کاربر علاقه مند
    تاریخ عضویت
    Feb 2013
    نوشته ها
    83
    تشکر
    26
    تشکر شده 25 بار در 21 پست

    پیش فرض

    نقل قول نوشته اصلی توسط mansoory نمایش پست ها
    من هم مثل بقیه یه برد خریدم که کار کنم. بردی که من از کویر خریدم LPC1768 Mini DK است که السیدی اون ili9320 و بطریق spi روی برد نصب بود. من السیدی دیگه ای ندارم.

    در انجمن دوتا السیدی دیگه هم پورت شده:
    1- درایور السیدی lpc1788
    2- ssd1963
    من حرفی ندارم. یکی از دوستان که وقت آزاد داره و میتونه آنلاین باشه و این السیدی رو هم داشته باشه، شروع کنه. من هم هستم.
    حالا این شد.من هستم و قول میدم تا ال سی دی رو راه نندازم اف نشم و دائم ان باشم.خیلی هم با هاش ور رفتم برای همین یکم راه افتادم تنظیمات و درایور GUIDRV_CompactColor_16 رو هم پیدا کردم.شما بفرماید تا من انجام بدم.اون درایور ssd1289 که یکی از دوستان بالا گذاشته خیلی کامله و تمام موارد که در کاتالوگ و سایت اصلی در مورد GUIDRV_CompactColor_16 گفته را لحاظ کرده ولی نمیشه راش انداخت.یک اقای دیگه هم ادعا داشت که ال سی دی رو راه انداخته و چند تا فیلم هم ازش گذاشت ولی فکر کنم برای گشف این دستاورد دزدیدنش چون خبری اش نیشت.طفلی فیلم میزاشت سرمون بود
    ویرایش توسط D.S : 03-02-2014 در ساعت 19:20

  7. #465
    کاربر علاقه مند
    تاریخ عضویت
    Feb 2013
    نوشته ها
    83
    تشکر
    26
    تشکر شده 25 بار در 21 پست

    پیش فرض

    سلام به همگی این فایلهای کانفیگ من هست لطفا نگاه کنید ببینید مشکل چیه.من تو LCDConf مجبور شدم این چند خط رو که مربوط به تاچ هست رو حذف کنم.
    نکته دیگه برد اموزشی که دارم پایه های دیتا ال سی دی پشت هم نیستن.هدرش رو ببینید متوجه میشید.مشکل من وقتی شبیح سازی میکنم روی gpi init گیر میکنه
    فايل هاي پيوست شده فايل هاي پيوست شده

  8. #466
    مدیر انجمن
    تاریخ عضویت
    Dec 2009
    نام
    غلامحسن منصوری
    نوشته ها
    359
    تشکر
    408
    تشکر شده 819 بار در 248 پست

    پیش فرض

    نقل قول نوشته اصلی توسط D.S نمایش پست ها
    سلام به همگی این فایلهای کانفیگ من هست لطفا نگاه کنید ببینید مشکل چیه.من تو LCDConf مجبور شدم این چند خط رو که مربوط به تاچ هست رو حذف کنم.
    نکته دیگه برد اموزشی که دارم پایه های دیتا ال سی دی پشت هم نیستن.هدرش رو ببینید متوجه میشید.مشکل من وقتی شبیح سازی میکنم روی gpi init گیر میکنه
    این فایلها رو دیدم. این راهش نیست!
    از این فایلها میشه فهمید که درایور این السیدی همونطور که گفتید GUI_Compact color هست. در راهنمای emwin 5.22 صفحه 964 هم درایور السیدی رو ذکر کرده که بصورت 16 بیتی ساپورت شده.
    می مونه تابع ست فانکشنش که اون هم در صفحه 989 گفته که از مود GUIDRV_FLEXCOLOR_F66702 باید استفاده بشه.

    همونطور که میدونید تنظیمات السیدی در فایل LCDConf.c انجام میشه. تابعی به نام LCD_X_Config در اون هست. در این تابع دوتا پارامتری که ذکر شد به emwin معرفی میشه.
    اولیGUI_COMPACT_COLOR هست که باید به این صورت معرفی بشه:
    GUI_DEVICE_CreateAndLink(DISPLAY_DRIVER, COLOR_CONVERSION, 0, 0);
    ماکروی DISPLAY_DRIVER رو در بالای فایل پیدا کنید و مقدارش رو GUIDRV_COMPACT_COLOR_16 قرار بدین.
    ماکروی COLOR_CONVERSION رو هم در بالای تابع پیدا کنید و مقدارش رو GUICC_M565 قرار بدین که به معنای 64k رنگ هست (16 بیت):
    /* Color conversion */
    #define COLOR_CONVERSION GUICC_M565

    /* Display driver */
    #define DISPLAY_DRIVER GUIDRV_COMPACT_COLOR_16

    حالا در تابع LCD_X_Config این دستور رو در انتهای اون بنویسید:
    PortAPI.pfWrite16_A0 = LCD_X_8080_16_Write00_16;
    PortAPI.pfWrite16_A1 = LCD_X_8080_16_Write01_16;
    PortAPI.pfWriteM16_A1 = LCD_X_8080_16_WriteM01_16;
    PortAPI.pfReadM16_A1 = LCD_X_8080_16_ReadM01_16;
    GUIDRV_FlexColor_SetFunc(pDevice, &PortAPI, GUIDRV_FLEXCOLOR_F66702, GUIDRV_FLEXCOLOR_M16C0B16);

    در تابع set function ماکروی GUIDRV_FLEXCOLOR_M16C0B16 رو با توجه به جدول صفحه 990 انتخاب کنید. من حدس میزنم که باس 16 بیتی استفاده شده باشه به همین دلیل از این گزینه استفاده کردم. ضمنا این السیدی به احتمال زیاد حافظه cache نداره. بعدها که السیدی راه افتاد میتونید این ماکرو رو عوض کنید و باجایگذاری GUIDRV_FLEXCOLOR_M16C1B16 تست کنید که السیدی cache داره یا نه.
    4 تا مقدار دهی هم بالای این تابع می بینید که برای اعلان اشاره گر توابع ارسال فرمان (A0)، داده (A1) و ارسال بلوکی فرمان و داده بکار میره. اینجا شما باید به درایور السیدی تون مراجعه کنید (فایلهای GLCD.H, GLCD.C) و این توابع رو پیدا کنید. درصفحه 991 گفته که آرگومانهای این توابع باید چطوری باشه. این توابع رو بجای LCD_X_8080_6... بنویسید.
    این کارها رو انجام بدین و هرجا سوالی بود بفرمایید
    من در خدمتتون هستم
    ویرایش توسط mansoory : 04-02-2014 در ساعت 00:36

  9. #467
    کاربر علاقه مند
    تاریخ عضویت
    Feb 2013
    نوشته ها
    83
    تشکر
    26
    تشکر شده 25 بار در 21 پست

    پیش فرض

    تا الان روش کار کردم نشد.بیشتر تنظیمات همین بود.دوستان که میخوان تست کنن فقط از ورژن 5.18 استفاده کنند که این السیدی رو ساپرت میکنه.من به دو قسمت شک دارم.اول توابعی هست که باید برای السیدی از روی هدر اصلی بنویسم و دوم به LCD_X_Config که من به این شکل نوشتم
    کد:
    void LCD_X_Config(void) 
    {
     GUI_DEVICE * pDevice;
      CONFIG_FLEXCOLOR Config = {0};
      GUI_PORT_API PortAPI = {0};
    //
      // Set display driver and color conversion
      //
      pDevice =GUI_DEVICE_CreateAndLink(DISPLAY_DRIVER, COLOR_CONVERSION, 0, 0);
      //
      // Display driver configuration
      //
     LCD_SetSizeEx    (0, XSIZE_PHYS,   YSIZE_PHYS);
     LCD_SetVSizeEx   (0, VXSIZE_PHYS,  VYSIZE_PHYS);
      
     PortAPI.pfWrite16_A0 = LCD_X_Write00_16;
     PortAPI.pfWrite16_A1 = LCD_X_Write01_16;
     PortAPI.pfWriteM16_A1 = LCD_X_WriteM01_16;
     PortAPI.pfReadM16_A1 = LCD_X_ReadM01_16;
     GUIDRV_FlexColor_SetFunc(pDevice, &PortAPI, GUIDRV_FLEXCOLOR_F66702, GUIDRV_FLEXCOLOR_M16C1B16);
     
     
     /*#if (USE_TOUCH == 1)
        //
        // Set orientation of touch screen
        //
        GUI_TOUCH_SetOrientation(DISPLAY_ORIENTATION);
        //
        // Calibrate touch screen
        //
        GUI_TOUCH_Calibrate(GUI_COORD_X, 0, WIDTH  - 1, TOUCH_LEFT, TOUCH_RIGHT);
        GUI_TOUCH_Calibrate(GUI_COORD_Y, 0, HEIGHT - 1, TOUCH_TOP,  TOUCH_BOTTOM);
      #endif */ 
    }
    در مورد کش هم این السی دی داره.فایلهای منو لطفا ببینید مخصوصا دستورات LCD_X_Write00_16 را.فایل هدر اصلی السیدی هم هست
    فايل هاي پيوست شده فايل هاي پيوست شده

  10. #468
    مدیر انجمن
    تاریخ عضویت
    Dec 2009
    نام
    غلامحسن منصوری
    نوشته ها
    359
    تشکر
    408
    تشکر شده 819 بار در 248 پست

    پیش فرض

    نقل قول نوشته اصلی توسط d.s نمایش پست ها
    تا الان روش کار کردم نشد.بیشتر تنظیمات همین بود.دوستان که میخوان تست کنن فقط از ورژن 5.18 استفاده کنند که این السیدی رو ساپرت میکنه.من به دو قسمت شک دارم.اول توابعی هست که باید برای السیدی از روی هدر اصلی بنویسم و دوم به lcd_x_config که من به این شکل نوشتم
    کد:
    void lcd_x_config(void) 
    {
     gui_device * pdevice;
      config_flexcolor config = {0};
      gui_port_api portapi = {0};
    //
      // set display driver and color conversion
      //
      pdevice =gui_device_createandlink(display_driver, color_conversion, 0, 0);
      //
      // display driver configuration
      //
     lcd_setsizeex    (0, xsize_phys,   ysize_phys);
     lcd_setvsizeex   (0, vxsize_phys,  vysize_phys);
      
     portapi.pfwrite16_a0 = lcd_x_write00_16;
     portapi.pfwrite16_a1 = lcd_x_write01_16;
     portapi.pfwritem16_a1 = lcd_x_writem01_16;
     portapi.pfreadm16_a1 = lcd_x_readm01_16;
     guidrv_flexcolor_setfunc(pdevice, &portapi, guidrv_flexcolor_f66702, guidrv_flexcolor_m16c1b16);
     
     
     /*#if (use_touch == 1)
        //
        // set orientation of touch screen
        //
        gui_touch_setorientation(display_orientation);
        //
        // calibrate touch screen
        //
        gui_touch_calibrate(gui_coord_x, 0, width  - 1, touch_left, touch_right);
        gui_touch_calibrate(gui_coord_y, 0, height - 1, touch_top,  touch_bottom);
      #endif */ 
    }
    در مورد کش هم این السی دی داره.فایلهای منو لطفا ببینید مخصوصا دستورات lcd_x_write00_16 را.فایل هدر اصلی السیدی هم هست
    SSD1963 هم به نظر میومد cache داشته باشه ولی توسط emwin ساپورت نمیشد. بهتره بجای guidrv_flexcolor_m16c1b16 باید از guidrv_flexcolor_m16c0b16 استفاده کنی.
    بیزحمت تست کن و نتیجه رو اعلام کن.
    مرسی

  11. #469
    کاربر علاقه مند
    تاریخ عضویت
    Feb 2013
    نوشته ها
    83
    تشکر
    26
    تشکر شده 25 بار در 21 پست

    پیش فرض

    سلام.نه جواب نمیده.guidrv_flexcolor_f66702 خیلی اذیتم کرد و ارور میداد برای همین با همه قسمتاش ور رفتم.

  12. #470
    عضو جدید
    تاریخ عضویت
    Jul 2011
    نوشته ها
    17
    تشکر
    0
    تشکر شده 2 بار در 2 پست

    پیش فرض ssd1298 + EMwin + lpc1768

    نقل قول نوشته اصلی توسط D.S نمایش پست ها
    امان از دست این ssd1289
    اقای منصوری من جای شما بودم برای محک خودم و نوشتهام حتما این ال سی دی رو که تو فروشگاه هم برای بردی که دارید هست رو میگرفتم و روش کار میکردم.من همه پستها رو خوندم فقط روی یک ال سی دی که تنظیماتش رو خود emwin درست کرده همه بوت کردن.ازجمله خود شما که از ال سی دی isp هم استفاده کردید که نخواید هیچ تغییری بدید.اصل کار emwin هم فکر کنم همین تنظیم ال سی دی هست باقیش رو توی pdf کامل توضیح داده.
    لینک چینی فایل http://download.csdn.net/detail/gongjian32/5254709 اسم فایل هم emwin518_stm32f4_ssd1289_keil

    اگه بشه دانلودش کرد احتمالا کمک بزرگیه.

  13. #471
    کاربر علاقه مند
    تاریخ عضویت
    Feb 2013
    نوشته ها
    83
    تشکر
    26
    تشکر شده 25 بار در 21 پست

    پیش فرض

    این فایل رو بالاتر اقای arvin گذاشته

  14. #472
    مدیر انجمن
    تاریخ عضویت
    Dec 2009
    نام
    غلامحسن منصوری
    نوشته ها
    359
    تشکر
    408
    تشکر شده 819 بار در 248 پست

    پیش فرض

    نقل قول نوشته اصلی توسط D.S نمایش پست ها
    سلام.نه جواب نمیده.guidrv_flexcolor_f66702 خیلی اذیتم کرد و ارور میداد برای همین با همه قسمتاش ور رفتم.
    شرمنده.
    الان بخش Compact Color رو مجدد خوندم. یه اشتباهی کرده بودم. نیازی به تابع ست فانکشن نیست.

    اونجا گفته که در فایل LCDConf.h این ماکرو باید ست تعریف بشه:
    [PHP]#define LCD_USE_COMPACT_COLOR_16[/PHP]
    با تعریف این ماکرو، emwin دنبال یه فایل به نام LCDConf_CompactColor_16.h میگرده. باقی ماکروها باید در این فایل تعریف بشه/
    البته این فایل رو من در فولدر emwin پیدا نکردم. ولی یکی از دوستان که السیدی رو برای stm پورت کرده این فایل رو پیداش کرده. من اینجا آپلودش کردم.

    همه کارها رو ایشون انجامش داده . فقط شماباید بجای فایل LCD_X_16BitIF_STM32.c، معادلش رو برای LPC1768 بنویسید که اونم کار سختی نیست.

    موفق باشید.
    فايل هاي پيوست شده فايل هاي پيوست شده

  15. #473
    کاربر علاقه مند
    تاریخ عضویت
    Feb 2013
    نوشته ها
    83
    تشکر
    26
    تشکر شده 25 بار در 21 پست

    پیش فرض

    بله تو این فایل همه تنظیمات درست هست ولی کار نمیکنه.تو lcd canf این توابع باید باشه یا نه چون تو اون درایور که اروین گداشته نیست.منکه دیگه دارم ناامید میشم.کسی نتونسته؟
    کد:
    PortAPI.pfWrite16_A0  = LCD_X_8080_16_Write00_16;
      PortAPI.pfWrite16_A1  = LCD_X_8080_16_Write01_16;
      PortAPI.pfWriteM16_A1 = LCD_X_8080_16_WriteM01_16;
      PortAPI.pfReadM16_A1  = LCD_X_8080_16_ReadM01_16;

  16. #474
    مدیر انجمن
    تاریخ عضویت
    Dec 2009
    نام
    غلامحسن منصوری
    نوشته ها
    359
    تشکر
    408
    تشکر شده 819 بار در 248 پست

    پیش فرض

    نقل قول نوشته اصلی توسط D.S نمایش پست ها
    بله تو این فایل همه تنظیمات درست هست ولی کار نمیکنه.تو lcd canf این توابع باید باشه یا نه چون تو اون درایور که اروین گداشته نیست.منکه دیگه دارم ناامید میشم.کسی نتونسته؟
    کد:
    PortAPI.pfWrite16_A0  = LCD_X_8080_16_Write00_16;
      PortAPI.pfWrite16_A1  = LCD_X_8080_16_Write01_16;
      PortAPI.pfWriteM16_A1 = LCD_X_8080_16_WriteM01_16;
      PortAPI.pfReadM16_A1  = LCD_X_8080_16_ReadM01_16;
    شما با اینا مشکل داری؟
    اینکه کاری نداره!
    این توابع توی فایل LCD_X_16BitIF_STM32.c قرار گرفته که به درد شما نمیخوره.
    اینجا شما باید از توابع موجود در GLCD.h , GLCD.C استفاده کنید.
    به این نمونه توجه کنید:
    در فایل GLCD.C این تابع برای ارسال فرمان (A0) السیدی SSD1963 استفاده شده:
    [PHP]void ssd1963_WriteIndex (usigned short c)[/PHP]
    شما باید ماکرویی به اینصورت در LCDConf.h تعریف کنید:
    [PHP]#define LCD_X_8080_16_Write00 ssd1963_WriteIndex[/PHP]
    و برای ارسال داده هم این تابع تعریف شده:
    [PHP]void ssd1963_WriteData (unsigned short c)[/PHP]

    که برای اون هم این ماکرو رو تعریف کنید:
    [PHP]#define LCD_X_8080_16_Write01 ssd1963_WriteData [/PHP]

    برای دوتای بعدی هم دوتا تابع درست کنید و در یک حلقه for دستورات ارسال write index و write data رو قرار بدین.
    موفق باشید

  17. #475
    کاربر علاقه مند
    تاریخ عضویت
    Feb 2013
    نوشته ها
    83
    تشکر
    26
    تشکر شده 25 بار در 21 پست

    پیش فرض

    اقای منصوری تو تابع lcd_x_config من اگه دو خط پاین رو حذف نکنم دونبال این تابع میگردم و ارور میده.این مهم هست برای اول کار که با تاچ کاری ندارم
    کد:
    .\Output\LPC1788_EA_LPC1788_KEIL_CMSIS\Debug_FLASH\Obj\Start_LPC1788_EA_LPC1788_KEIL_CMSIS.axf: Error: L6218E: Undefined symbol GUI_TOUCH_X_ActivateX (referred from GUI_TOUCH_DriverAnalog.o).
    .\Output\LPC1788_EA_LPC1788_KEIL_CMSIS\Debug_FLASH\Obj\Start_LPC1788_EA_LPC1788_KEIL_CMSIS.axf: Error: L6218E: Undefined symbol GUI_TOUCH_X_ActivateY (referred from GUI_TOUCH_DriverAnalog.o).
    .\Output\LPC1788_EA_LPC1788_KEIL_CMSIS\Debug_FLASH\Obj\Start_LPC1788_EA_LPC1788_KEIL_CMSIS.axf: Error: L6218E: Undefined symbol GUI_TOUCH_X_MeasureX (referred from GUI_TOUCH_DriverAnalog.o).
    .\Output\LPC1788_EA_LPC1788_KEIL_CMSIS\Debug_FLASH\Obj\Start_LPC1788_EA_LPC1788_KEIL_CMSIS.axf: Error: L6218E: Undefined symbol GUI_TOUCH_X_MeasureY (referred from GUI_TOUCH_DriverAnalog.o).
    Target not created
    اقای منصوری من این فایل glcd رو ندارم.فقط با بردم lcd.h هست که توبعی توش هست.لطفا یا این فایل و برام بفرستید یا اینکهاز روی اون کتابخانه بگید کدو توابع هست.هدر مورد نظر در فایلهایی که فرستادم هست
    ویرایش توسط mzarkoob : 01-04-2014 در ساعت 18:42 دلیل: ادغام

  18. #476
    مدیر انجمن
    تاریخ عضویت
    Dec 2009
    نام
    غلامحسن منصوری
    نوشته ها
    359
    تشکر
    408
    تشکر شده 819 بار در 248 پست

    پیش فرض

    نقل قول نوشته اصلی توسط D.S نمایش پست ها
    اقای منصوری تو تابع lcd_x_config من اگه دو خط پاین رو حذف نکنم دونبال این تابع میگردم و ارور میده.این مهم هست برای اول کار که با تاچ کاری ندارم
    کد:
    .\Output\LPC1788_EA_LPC1788_KEIL_CMSIS\Debug_FLASH\Obj\Start_LPC1788_EA_LPC1788_KEIL_CMSIS.axf: Error: L6218E: Undefined symbol GUI_TOUCH_X_ActivateX (referred from GUI_TOUCH_DriverAnalog.o).
    .\Output\LPC1788_EA_LPC1788_KEIL_CMSIS\Debug_FLASH\Obj\Start_LPC1788_EA_LPC1788_KEIL_CMSIS.axf: Error: L6218E: Undefined symbol GUI_TOUCH_X_ActivateY (referred from GUI_TOUCH_DriverAnalog.o).
    .\Output\LPC1788_EA_LPC1788_KEIL_CMSIS\Debug_FLASH\Obj\Start_LPC1788_EA_LPC1788_KEIL_CMSIS.axf: Error: L6218E: Undefined symbol GUI_TOUCH_X_MeasureX (referred from GUI_TOUCH_DriverAnalog.o).
    .\Output\LPC1788_EA_LPC1788_KEIL_CMSIS\Debug_FLASH\Obj\Start_LPC1788_EA_LPC1788_KEIL_CMSIS.axf: Error: L6218E: Undefined symbol GUI_TOUCH_X_MeasureY (referred from GUI_TOUCH_DriverAnalog.o).
    Target not created
    توی فایل LCDConf.c هرچی درباره تاچ گفته رو پاکش کنید. بعدها درستش می کنیم

    نقل قول نوشته اصلی توسط D.S نمایش پست ها
    اقای منصوری من این فایل glcd رو ندارم.فقط با بردم lcd.h هست که توبعی توش هست.لطفا یا این فایل و برام بفرستید یا اینکهاز روی اون کتابخانه بگید کدو توابع هست.هدر مورد نظر در فایلهایی که فرستادم هست
    به فایل نگاه بندازید.
    LCD_write_index و LCD_Write_Data و LCD_Read_Data رو ببینید. اینها بصورت inline تعریف شده که باید حذف بشه و نمونه تابع رو در هدرش قرار بدین
    فايل هاي پيوست شده فايل هاي پيوست شده
    • نوع فایل: rar GLCD.rar (11.1 کیلو بایت, 43 نمايش)
    ویرایش توسط mzarkoob : 01-04-2014 در ساعت 18:43 دلیل: ادغام

  19. #477
    کاربر علاقه مند
    تاریخ عضویت
    Feb 2013
    نوشته ها
    83
    تشکر
    26
    تشکر شده 25 بار در 21 پست

    پیش فرض

    خسته شدم نمیتونم.اصلا معلوم نیست مشکل از این توابع باشه.چون انواع اقسام درست کردم نشد.یک نقطه هم نمیاد رو السیدی دلم خوش باشه.من اینارو با هدر ال سی دی خودم نوشتم
    کد:
    /*********************************************************************
    *
    *       LCD_X_Write00_16
    *
    * Purpose:
    *   Write to controller, with A0 = 0
    */
    void LCD_X_Write00_16(U16 c) {
      LCD_RS(0)
      LCD_RD(1)
      lcd_send(c);
      LCD_WR(0)
      wait();
      LCD_WR(1)
    }
    /*********************************************************************
    *
    *       LCD_X_Write01_16
    *
    * Purpose:
    *   Write to controller, with A0 = 1
    */
    void LCD_X_Write01_16(U16 c) {
      LCD_RS(1)
      LCD_RD(1)
      lcd_send(c);
      LCD_WR(0)
      wait();
      LCD_WR(1)
    }
    /*********************************************************************
    *
    *       LCD_X_Read01_16
    *
    * Purpose:
    *   Read from controller, with A0 = 1
    */
    U16 LCD_X_Read01_16(void) {
     unsigned short val = 0;
      LCD_RS(1)
      LCD_WR(1)
      LCD_RD(0)
      val = lcd_read();
      LCD_RD(1)
      return val;
    }
    /*********************************************************************
    *
    *       LCD_X_WriteM01_16
    *
    * Purpose:
    *   Write multiple bytes to controller, with A0 = 1
    */
    void LCD_X_WriteM01_16(U16 * pData, int NumWords) {
      LCD_RS(1)
      for (; NumWords; NumWords--) {
        wr_dat(*pData);
        pData++;
      }
    }
    /*********************************************************************
    *
    *       LCD_X_WriteM00_16
    *
    * Purpose:
    *   Write multiple bytes to controller, with A0 = 0
    */
    void LCD_X_WriteM00_16(U16 * pData, int NumWords) {
      LCD_RS(0);
      for (; NumWords; NumWords--) {
        wr_cmd(*pData);
        pData++;
      }
    }
    /*********************************************************************
    *
    *       LCD_X_ReadM01_16
    *
    * Purpose:
    *   Read multiple bytes from controller, with A0 = 1
    */
    void LCD_X_ReadM01_16(U16 * pData, int NumWords) {
     LCD_RS(1);
      for (; NumWords; NumWords--) {
        rd_reg(*pData);
        pData++;
      }
    }

  20. #478
    مدیر انجمن
    تاریخ عضویت
    Dec 2009
    نام
    غلامحسن منصوری
    نوشته ها
    359
    تشکر
    408
    تشکر شده 819 بار در 248 پست

    پیش فرض

    نقل قول نوشته اصلی توسط D.S نمایش پست ها
    خسته شدم نمیتونم.اصلا معلوم نیست مشکل از این توابع باشه.چون انواع اقسام درست کردم نشد.یک نقطه هم نمیاد رو السیدی دلم خوش باشه.من اینارو با هدر ال سی دی خودم نوشتم
    کد:
    /*********************************************************************
    *
    *       LCD_X_Write00_16
    *
    * Purpose:
    *   Write to controller, with A0 = 0
    */
    void LCD_X_Write00_16(U16 c) {
      LCD_RS(0)
      LCD_RD(1)
      lcd_send(c);
      LCD_WR(0)
      wait();
      LCD_WR(1)
    }
    /*********************************************************************
    *
    *       LCD_X_Write01_16
    *
    * Purpose:
    *   Write to controller, with A0 = 1
    */
    void LCD_X_Write01_16(U16 c) {
      LCD_RS(1)
      LCD_RD(1)
      lcd_send(c);
      LCD_WR(0)
      wait();
      LCD_WR(1)
    }
    /*********************************************************************
    *
    *       LCD_X_Read01_16
    *
    * Purpose:
    *   Read from controller, with A0 = 1
    */
    U16 LCD_X_Read01_16(void) {
     unsigned short val = 0;
      LCD_RS(1)
      LCD_WR(1)
      LCD_RD(0)
      val = lcd_read();
      LCD_RD(1)
      return val;
    }
    /*********************************************************************
    *
    *       LCD_X_WriteM01_16
    *
    * Purpose:
    *   Write multiple bytes to controller, with A0 = 1
    */
    void LCD_X_WriteM01_16(U16 * pData, int NumWords) {
      LCD_RS(1)
      for (; NumWords; NumWords--) {
        wr_dat(*pData);
        pData++;
      }
    }
    /*********************************************************************
    *
    *       LCD_X_WriteM00_16
    *
    * Purpose:
    *   Write multiple bytes to controller, with A0 = 0
    */
    void LCD_X_WriteM00_16(U16 * pData, int NumWords) {
      LCD_RS(0);
      for (; NumWords; NumWords--) {
        wr_cmd(*pData);
        pData++;
      }
    }
    /*********************************************************************
    *
    *       LCD_X_ReadM01_16
    *
    * Purpose:
    *   Read multiple bytes from controller, with A0 = 1
    */
    void LCD_X_ReadM01_16(U16 * pData, int NumWords) {
     LCD_RS(1);
      for (; NumWords; NumWords--) {
        rd_reg(*pData);
        pData++;
      }
    }
    دوتا کار کوچیک مونده:
    1- فایلهای GLCD.H و GLCD.C که برات فرستادم رو خارج از emwin تست کن. اگه کار کرد برو توی فایل LCDConf.C توی تایع LCD_X_DisplayDriver در قسمت LCD_X_INITCONTROLLER: تابع پیکربندی السیدی رو فراخوانی کن. تابع خودش احتمالا مشکل داشته باشه.
    توی فایل GLCD.C این تابع اینطوری اومده:
    void LCD_Initializtion(void)

    2- پروژه رو دیباگ کن و ببین آیا در GUI_Init گیر میکنه یا نه؟ وقتی گیر کرد Pause کن و ببین آیا وارد HardFault Handler شده؟
    ضمنا کل پروژه ات رو آپ کن ببینم که اگه سیستم عامل استفاده کردی مشکلش کجاست

  21. تشکرها از این نوشته :


  22. #479
    کاربر علاقه مند
    تاریخ عضویت
    Feb 2013
    نوشته ها
    83
    تشکر
    26
    تشکر شده 25 بار در 21 پست

    پیش فرض

    منتمام فایلهای اینیت ال سیدی رو جدا گانه با پایه ها چک کردم کار میکنه.برنامه دقیقا روی HardFault Handler گیر میکنه.من از سیستم عامل استفاده نکردم.

  23. #480
    کاربر فعال sjafarim آواتار ها
    تاریخ عضویت
    Jan 2008
    نام
    جعفری
    نوشته ها
    225
    تشکر
    93
    تشکر شده 297 بار در 141 پست

    پیش فرض

    سلاااممم
    آقا من 2 روز نبودم چه کردین شونصد تا پست زدین، آفرین واقعا دمت گرم پیگیری...
    چند تا نکته:
    d.s :
    اول شما حواست باشه ولتاژی که داری به lcd ایت میدی از 2.8 بیشتر نباشه که کلا کار نکنه.
    ببینید،من همین درایور 1289 رو با emwin راه انداختم، دنبال compact color نرو که به این راحتیا نیست.
    بدبختا خودشون اومدن تو ورژن 5.22 درایور 1289 رو به flex color ها اضافه کردن که راحت باشی. دیگه مشکل چیه؟شما الان بدون emwin کامل lcd ایت رو راه انداختی؟
    اگر آره فایل کتابخانه lcd ایت رو که کاملا ازشش جواب گرفتی بفرست تا روی LCDConf.c تنظیمش کنم برات. خودتم کاملا تمام فایل های emwin 5.22 رو تو یه پروژه آماده emwin جایگزین کن. همشو، تمام هدرها، تمام سورس ها و تمام لایبرری ها.

    ** یه نکته هم بگم: درسته اکثر توابع سطح پایین emwin برای درایورهای 16 بیت نوشته شده ولی رو 8 بیت هم جواب میدن، شما لایبرری خودتو 8 بیت بنویس اینترفیسی که به emwin معرفی میکنی 16 بیت باشه، مشکلی پیش نمیاد. من با st همین 1289 رو تو 8 بیتو 16 بیت راه اندازی کردم، اصللا مهم نیست شما لایبرری lcd رو چجوری نوشته باشی...

    ** یک نکته دیگه: جناب منصوری عزیز، من دقیقا اون موقع که درگیر 1289 بودم رفتم از تو پروژه یه بنده خدایی که با emwin فول لایسنس آپ کرده بود فایلهای compact color ها رو دانلود کردم و
    گذاشتم تو پروژم، ولی جواب نداد. فکر میکنم داخل .lib اصلی emwin اطلاعات نوع لایسنس مورد استفاده نگه داری میشه و مانع کار کردن پروژه میشه...
    ویرایش توسط sjafarim : 04-02-2014 در ساعت 18:53

  24. کاربران : 3 تشکر کرده اند از شما sjafarim برای ارسال این پست سودمند:


صفحه 24 از 56 نخستنخست ... 5678910111213141516171819202122232425262728293031323334353637383940414243 ... آخرینآخرین

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

  1. [سوال] جزوه آموزشی برد آموزشی lpc1768
    توسط pooriya_nic18 در انجمن LPC series (NXP)
    پاسخ: 5
    آخرين نوشته: 07-12-2013, 14:49
  2. ثبت نام در مسابقات رباتیک وزارت آموزش و پرورش
    توسط elhghasemi در انجمن طراحی و ساخت و آزمایش مدارت الکترونیک
    پاسخ: 0
    آخرين نوشته: 03-08-2012, 21:14

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

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