NOTICE توجه: این یک موضوع قدیمی است که آخرین پست ارسالی آن مربوط به 3492 روز قبل است . لطفا فقط پاسخ ها ، سوالات و درخواست های 100 درصد مرتبط را به آن ارسال کنید و برای درخواست ها و سوالات جدید موضوع جدیدی را ایجاد کنید
نمایش نتایج: از 1 به 12 از 12

موضوع: اشکال در تاچ lpc 1768

  1. #1
    کاربر علاقه مند
    تاریخ عضویت
    Apr 2014
    نام
    جواد اسماعیلی
    نوشته ها
    51
    تشکر
    19
    تشکر شده 14 بار در 10 پست

    Exclamation اشکال در تاچ lpc 1768

    سلام مهندسین

    من برای تاچ از هدر آماده در سایت ها بود استفاده میکنم و تاچ را در تایمر میخونم و مشکلی که دارم مختصات های من قاطی می شوند یعنی کلیدی که در سمت راست گذاشته شده هم در جای خودش عمل میکند و هم در سمت دیگر (البته کمی بالا یا پایین تر)
    کد:
        else    if( ( (X > 2800)&&(X < 2900 ))&& ( (Y>2820)&&(Y<3000) ) )
    کد:
    if( ( (X > 2500)&&(X < 2700 ))&& ( (Y>2900)&&(Y<3260) ) )
    مخصات ها مربوط به گوشه سمت راست بالا و سمت چپ پایین میباشند
    جالب اینجا است که هر چند بار امتحان کنم دقیقا همان دو جا این اتفاق می افتد!!!

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

    باتشکر

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

  3. #2
    کاربر علاقه مند
    تاریخ عضویت
    Apr 2011
    نوشته ها
    20
    تشکر
    3
    تشکر شده 8 بار در 7 پست

    پیش فرض

    خدمت شما

    x- adc7
    x+ adc6
    y- adc0
    y+ adc1
    فايل هاي پيوست شده فايل هاي پيوست شده

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


  5. #3
    کاربر علاقه مند
    تاریخ عضویت
    Apr 2014
    نام
    جواد اسماعیلی
    نوشته ها
    51
    تشکر
    19
    تشکر شده 14 بار در 10 پست

    پیش فرض

    دستتون درد نکنه خیلی ممنون

    فقط چند تا نکته پایه هی مدار چاپی رو این طوری وصل کردم باید تغییرات زیادی بدم؟:
    کد:
    #define        XP        23
    #define        YP              24
    #define        XN                 25
    #define        YN                 26
    درباره فرمول خطی سازی هم اگر امکان داره توضیح بدین من تو این پروژه خطی سازی انجام ندادم .

    شما تو مقدار دهی یک علامت گذاشتین ولی تو کامنت یک عدد دیگه ؛ کومشون درست هستش؟

    با تشکر

    - - - Updated - - -

    دستتون درد نکنه خیلی ممنون

    فقط چند تا نکته پایه هی مدار چاپی رو این طوری وصل کردم باید تغییرات زیادی بدم؟:
    کد:
    #define        XP        23
    #define        YP              24
    #define        XN                 25
    #define        YN                 26
    درباره فرمول خطی سازی هم اگر امکان داره توضیح بدین من تو این پروژه خطی سازی انجام ندادم .

    شما تو مقدار دهی یک علامت گذاشتین ولی تو کامنت یک عدد دیگه ؛ کومشون درست هستش؟

    با تشکر

  6. #4
    کاربر علاقه مند
    تاریخ عضویت
    Apr 2011
    نوشته ها
    20
    تشکر
    3
    تشکر شده 8 بار در 7 پست

    پیش فرض

    مهم این هست
    char xp=3, xn=23, YP=24 , YN=2 ;
    بقیش الکیه!!!

    خطی سازی من نمیدونم چی هست!! اگه توضیح بدین منم بدونم خوشحال میشم!!!

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


  8. #5
    کاربر علاقه مند
    تاریخ عضویت
    Apr 2014
    نام
    جواد اسماعیلی
    نوشته ها
    51
    تشکر
    19
    تشکر شده 14 بار در 10 پست

    پیش فرض

    این طور که من شنیدم برای تبدیل اعداد به پیکسل وخطی سازی آنها از فورمول زیر استفاده می شود که تو برنامه شما هم هست ولی این ضرایب از کجا آمده اند رو نمیدانم:
    *x= (80*(a-820))/2500;

    راستی پایه هارو کجا و چه طوری تنظیم کنم؟
    char xp=3, xn=23, YP=24 , YN=2 اینا چی هستند؟

  9. #6
    کاربر علاقه مند
    تاریخ عضویت
    Apr 2011
    نوشته ها
    20
    تشکر
    3
    تشکر شده 8 بار در 7 پست

    پیش فرض

    اهان
    این خطی سازی بدرد نمیخوره اخه تاچ رو عوض کنید دیگه ممکنه بهم بخوره و نیاز به تنظیم دباره هست بهتره برید دنبال تنظیم 5 نقطه ای یعنی نقاطی که روی ال سی دی رو نشون میده شما تاچ میکنید و برنامه خودش تنظیم میکنه!!
    حال ان روش
    اول قلم رو میزای سمت راست(یا چپ) میشکی به سمت مخالف و کمترین عدد رو بدست میاری ( که مال من شده 820) حالا این عدد رو همیشه از عدد که ا تو دی هست کم میکنی تا رنج تغیراتت از صفر تا فلان بشه!!
    مرحله بعد بیشترین مقدار رو با کشیدن روی صفحه پیدا و تقسیم بر تعداد پیکسل صفحه میکنی و دیگه از این به بعد همیشه عدد بدست امده رو تقسیم بر این عدد میکنیم!!
    فکر میکنیم x بین 820 تا 3300 هست!
    ال سی دی 320 در 240 پیکسلی
    برای صفر کردن مقادیر
    کد:
    3300-820/320=7
    پس
    کد:
    x-=820;
    x/= 7;
    حالا رنج شده از 0 تا 320 همین!!!

    برای y هم همین طور!!!!

    این پایه ها میشن ورودی های ا تو دی که داخل میکرو شما برای این که بگی فلان ا تو دی باید بگی فلان پایه رو بزار روی فلان کاربرد حالا باید بری ریجستر اون کاربردت رو بخونی با بنویسی!!
    برای تغیر کارایی ها هم میتونی زیر برنامه adc رو بخونی و متوجه میشی!!!

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


  11. #7
    کاربر علاقه مند
    تاریخ عضویت
    Apr 2014
    نام
    جواد اسماعیلی
    نوشته ها
    51
    تشکر
    19
    تشکر شده 14 بار در 10 پست

    Exclamation

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

    این هدر همون هدریه که من استفاده میکردم

    من وقتی صفحه رو تست میکنم و در یک راستا حرکت میکنم هم xو هومy تغییر میکند! چرا؟
    راستی یک نکته احتمال این وجود داره که از برد برد باشه؟
    ویرایش توسط J_Esmaili : 04-10-2014 در ساعت 00:03

  12. #8
    کاربر علاقه مند
    تاریخ عضویت
    Apr 2011
    نوشته ها
    20
    تشکر
    3
    تشکر شده 8 بار در 7 پست

    پیش فرض

    برنامت رو بزار ی نگاهی بهش بندازیم!!!

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


  14. #9
    کاربر علاقه مند
    تاریخ عضویت
    Apr 2014
    نام
    جواد اسماعیلی
    نوشته ها
    51
    تشکر
    19
    تشکر شده 14 بار در 10 پست

    پیش فرض

    خیلی ممنون که جواب میدین
    این هم تابع تاچ من:
    کد:
    void touch(int *x , int *y){
        int a,b;
        LPC_GPIO0->FIODIR |= (1<<23)|(1<<25) ;
        LPC_PINCON->PINMODE1 |= (1UL<<17)|(1UL<<21);//17=P0.24MODE(YP),21=P0.26MODE= pin has repeater mode enabled
        
        LPC_GPIO0->FIOSET |= (1<<25) ;
        LPC_GPIO0->FIOCLR |= (1<<23) ;
        
        Del();
        b= ADC(1);
        
        *y=b;//(320*(3373-b))/2483;        //
        LPC_PINCON->PINSEL1 &= ~(1<<16) ;//pul up P0.24MODE(YP)
        LPC_PINCON->PINMODE1 &= ~((1UL<<17)|(1UL<<21));//HZ
        
        LPC_GPIO0->FIODIR &= ~((1<<23)|(1<<25)) ;
        LPC_GPIO0->FIOSET &= ~(1<<23) ;
        LPC_GPIO0->FIOCLR &= ~((1<<25)|(1<<26)) ;
        LPC_GPIO0->FIODIR |= (1<<24)|(1<<26) ;
        LPC_PINCON->PINMODE1 |= (1UL<<15)|(1UL<<19);
    
        LPC_GPIO0->FIOSET |= (1<<24) ;
        LPC_GPIO0->FIOCLR |= (1<<26) ;
        Del();
        a= ADC(2);
        
        *x=a;// (240*(3400-a))/2733;        //
        LPC_PINCON->PINSEL1 &= ~(1<<18) ;
        LPC_PINCON->PINMODE1 &= ~((1UL<<15)|(1UL<<19));
        
        
        LPC_GPIO0->FIODIR &= ~((1<<24)|(1<<26)) ;
        LPC_GPIO0->FIOSET &= ~(1<<26) ;
        LPC_GPIO0->FIOCLR &= ~((1<<24)|(1<<23)) ;
    }
    من وقتی پایه ها رو پشت سر هم وصل میکنم چرت میگه و وقتی جای پایه 26 و 27 را جاه جا میکنم اعداد نسبا تا منطقی هستند ولی وقتی در یک راستا حرکت میکنم هم X و هم Y تغییراتی در حد 1000 دارند.

  15. #10
    کاربر علاقه مند
    تاریخ عضویت
    Apr 2011
    نوشته ها
    20
    تشکر
    3
    تشکر شده 8 بار در 7 پست

    پیش فرض

    اوه چه تغیرات زیادی!! منم همین مشکل رو داشتم و یک خازن 104 روی دو پین سمت راست تاچ زدم تغیرات تقریبا صفر شد! شما هم بزار و روی پایه ها جابجا کن ببین چی میشه!!
    اگه نشد بگو برنامت رو دقیق تر نگاه کنم

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


  17. #11
    کاربر علاقه مند
    تاریخ عضویت
    Apr 2014
    نام
    جواد اسماعیلی
    نوشته ها
    51
    تشکر
    19
    تشکر شده 14 بار در 10 پست

    پیش فرض

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

  18. #12
    کاربر علاقه مند
    تاریخ عضویت
    Apr 2011
    نوشته ها
    20
    تشکر
    3
    تشکر شده 8 بار در 7 پست

    پیش فرض

    ببین دوست من
    شما قلم رو بزار سمت چپ و بکش به سمت راست باید عددت به کل منظم تغیر کنه یعنی مثلا از 100 تا 1000 بره و یا بر عکس
    حالا از پایین به بالا ....

    اگر تغیراتت منظم بود که مشکلی نداری!!
    و اگر هم قلم رو در یک نقطه نگه داشتی نیاید تغیرات انچنانی داشته باشی نهایتا باید 5 واحد تغیرات داشته باشه!!

    حالا کمترین عدد رو از کل کم کن در 128 (پیکسل) ضرب کن تقسیم بر بیشترین عدد کن!!

  19. کاربران : 2 تشکر کرده اند از شما mohsen.hex برای ارسال این پست سودمند:


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

  1. lcd بورد 1768
    توسط microprocesor_2002 در انجمن LPC series (NXP)
    پاسخ: 4
    آخرين نوشته: 11-11-2014, 20:32
  2. حاج بـــــــــافـــــــــــر در 1768
    توسط Amirkhan_0o0 در انجمن LPC series (NXP)
    پاسخ: 5
    آخرين نوشته: 31-10-2013, 00:25
  3. کلاک cpu در 1768
    توسط forumwork.net در انجمن LPC series (NXP)
    پاسخ: 13
    آخرين نوشته: 10-05-2013, 16:10
  4. برد برای lpc 1768
    توسط ramin.st در انجمن LPC series (NXP)
    پاسخ: 2
    آخرين نوشته: 24-03-2013, 21:03
  5. وقفه در lpc 1768
    توسط avr_rva در انجمن LPC series (NXP)
    پاسخ: 14
    آخرين نوشته: 15-03-2013, 00:51

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

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