اطلاعیه

Collapse
No announcement yet.

صفحه کلید

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

    صفحه کلید

    سلام
    من یک کیبرد 4*4 نوشتم توی Proteus جواب میدهد ولی توی عمل نه :angry: :angry:
    مدار هم درست بستم
    لطف کنید ببینید کجاش ایراد دارد
    کلیات برنامه را برایتان می نویسم
    (راستش من زیاد توابع بلد نیستم :cry2: :cry2
    #include <mega32.h>
    char keypad (char);
    main()
    {
    char f[20],z,zz;
    zz=keypad(z);
    sprintf(f,"%c",zz);
    lcd_puts(f);

    }
    /************************************/


    char keypad (char z)
    {
    .
    .
    if(PINB.1==0)
    {
    z='0';
    goto kk;}

    .
    .
    .
    return z;
    {






    #2
    پاسخ : صفحه کلید

    در عمل نیاز به مقاومت pull up یا pull down داری(بستگی به برنامه ای که نوشتی و اینکه اگر کلیدی زده نشده پایه در چه منطقی قرار داشته باشه)
    www.tehranelec.com

    دیدگاه


      #3
      پاسخ : صفحه کلید

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

      تعدادی ماژول GPS GP5MX1513F1 با بالاتریت حساسیت -170db به قیمت خرید بفروش میرسد

      دیدگاه


        #4
        پاسخ : صفحه کلید

        خیلی ممنون
        نه نیازی به مقاومت نیست چون من این برنامه را با دستورgoto می نویسم جواب می دهد ولی من نیاز به یک تابع دارم که هر وقت خواستم از کیبرد استفاده کنم ایرادش این است وقتی به دستور zz=keypad(z) می رسد به تابع کیبرد می پره ولی دیگه بر نمی گرده البته فقط توی عمل وگرنه Proteus جواب میدهد oo: oo:
        ولی من با دستور goto نوشتم پرید دیتا را هم گرفت برگشت کلی هم حال داد :nice:
        ولی تابع را نمی دانم لطفا" کمکم کنید
        باز هم ممنونم :applause: :applause:

        دیدگاه


          #5
          پاسخ : صفحه کلید

          یه خورده تو نوشتن تابع دچار اشتباه شدی .
          این تابع واسه برگردوندن مقدار کلید نیازی به آرگومان نداره . پس متغیر z تو تابع به عنوان یک المان بیخودیه! با همون دستور return z مقدارش رو بر میگردونه و تو main هم فقط کافیه بنویسی zz=keypad();

          دیدگاه


            #6
            پاسخ : صفحه کلید

            نوشته اصلی توسط محمد ایجی
            یه خورده تو نوشتن تابع دچار اشتباه شدی .
            این تابع واسه برگردوندن مقدار کلید نیازی به آرگومان نداره . پس متغیر z تو تابع به عنوان یک المان بیخودیه! با همون دستور return z مقدارش رو بر میگردونه و تو main هم فقط کافیه بنویسی zz=keypad();
            ممنون :nice:
            این جوری که شما می گویدCodeVisionAVR ایراد می گیره
            نمی دونم مشکل کجاست :angry: :angry: :angry: :angry:

            دیدگاه


              #7
              پاسخ : صفحه کلید

              :angry: :angry: :angry: :angry:
              :cry2: :cry2: :cry2: :cry2: :cry2:

              دیدگاه

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