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

موضوع: کمک در نوشتن یک برنامه

  1. #1
    عضو جدید
    تاریخ عضویت
    Jan 2009
    نوشته ها
    8
    تشکر
    0
    تشکر شده 0 بار در 0 پست

    پیش فرض کمک در نوشتن یک برنامه

    سلام باتشکر از جواب سریع شما به درخواستها ما

    در استفاده از key pad اگه بخام بگم اگه وقتی 1 رو با مربع زدم یک دستوری انجام بده و اگر 1 رو با ستاره زدم یک کاره دیگه انجام بده باید چکار کنم؟

    البته اصل موضوع اینه که می خوام ببینم چجوری میشه یک شرطی فقط با زدن دو تا کلید یا حتی بیشتر انجام بشه (توی کی پد) لطفا به زبان C

    اصل پروژه اینه:
    وقتی در 1 تا 9 رو با مربع زدم موتور پله ای به ازای 1 تا 9 دور بچرخه و تو ال سی دی بنویسه راست:1 تا 9همین کار رو با زدن ستاره به چپ دنبال کنه

    از همکاری صمیمانه شما متشکرم

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

  3. #2
    مدیرکل سایت kavir آواتار ها
    تاریخ عضویت
    Jun 2007
    نام
    زارعی
    نوشته ها
    3,547
    تشکر
    1,218
    تشکر شده 5,684 بار در 1,801 پست

    پیش فرض

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

    اگر چه دیر ولی برگشتم به جمع دوستان قدیمی....

  4. #3
    عضو جدید
    تاریخ عضویت
    Jan 2009
    نوشته ها
    8
    تشکر
    0
    تشکر شده 0 بار در 0 پست

    پیش فرض کمک در نوشتن برنامه

    سلام
    منظور من این بود که در همین قسمت یعنی

    در استفاده از key pad اگه بخام بگم اگه وقتی 1 رو با مربع زدم یک دستوری انجام بده و اگر 1 رو با ستاره زدم یک کاره دیگه انجام بده باید چکار کنم؟

    البته اصل موضوع اینه که می خوام ببینم چجوری میشه یک شرطی فقط با زدن دو تا کلید یا حتی بیشتر انجام بشه (توی کی پد) لطفا به زبان C

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

    لطفا به من کمک کنید

    متشکرم

  5. #4
    مدیرکل سایت kavir آواتار ها
    تاریخ عضویت
    Jun 2007
    نام
    زارعی
    نوشته ها
    3,547
    تشکر
    1,218
    تشکر شده 5,684 بار در 1,801 پست

    پیش فرض

    سلام
    این برنامه رو قبلا نوشته بودم برای نشان دادن اعداد به صورت فارسی روی یک ماتریس 8*8
    دانلود
    در داخل خود برنامه
    switch(old
    این متغییر old حاوی عددی که توسط شما فشار داده شده در روی کیبرد هست و برای پاسخ شما
    اینکه شما باید چک کنید محتوای old اگه یک بود در یک متغییر ذخیره کنید (فقط به عنوان اینکه یک فشار داده شده)و کلید بعدی که فشار داده شد اونم چک کنید اگر * یا # بود در یک تابع هر کاری خواستید انجام بدید در غیر اینصورت محتوای متغییر قبلی هم که old رو دخیره کرده بود پاک کنید
    نکته اینکه برای * و یا # می تونید اعداد 14 و 15 و.. در نظر بگیرید که دقیق توی پروژه یادم نیست چی بود و با فایل پروتئوس براتون فرستادم و این برنامه کیبرد استاندارد هست و از تاخیر برای رها شدن کلید استفاده نشده و یک روش بهتره و مطمئن تر که در خود سورس بررسی کنید
    موفق باشید
    کویر ویدئو راه اندازی شد

    اگر چه دیر ولی برگشتم به جمع دوستان قدیمی....

  6. #5
    مدیر باز نشسته
    تاریخ عضویت
    Dec 2008
    نوشته ها
    160
    تشکر
    10
    تشکر شده 39 بار در 15 پست

    پیش فرض

    سلام
    برای این کار ، در ابتدا بیاید ییه تابعی بنویسید که عدد فشرده شده روی صفحه کلید رو بخونه . برای مثال تابع زیر :
    unsigned char scan_keypad (void)
    این تابع باید مشخصات زیر رو داشته باشه :
    1-اعداد خوانده شد از 0 تا 15 برای یک کی پد 4*4 رو برکردونه .
    2-در صورت فشرده نشدن هیچ دکمه ای یک عدد ، برای مثال 255 یا هر عدد دیگری که در محدوده ی صفحه کلیدت نباشه رو برگردونه.

    بعد از نوشتن این تابع اون رو در یک حلقه قرار می دهیم و منتظر میشیم که یک دکمه ای فشار داده بشه ، بعد از اینکه یک عدد فشار داده شد و یا اجرای برنامه از داخل حلقه خارج شد شما می تونید پردازش لازم روی اعدادتون انجام بدید .
    در این موردی که شما می خواین ، به نظر من اول یک بار عدد رو از تابع بگیرید و توی یک متغیر ذخیره کنید و بعد باز هم یک عدد دیگه از این تابع بگیرید و توسط یک switch case مواردی که خودتون می خواین اتفاق بیفته رو شرط بندی کنید.
    این سورس که زیر هست شامل تابع بالا است و شما برنامتون و در تابع main بنویسید.
    گفتم شاید با codevision کار نکنید برنامه رو توی یک فایل متنی ذخیره کردم .
    http://www.4shared.com/file/82543593..._function.html
    در مورد این تابع هم بگم که تابع اسکن صفحه کلید scan_keypad() نام داره و در صورت فشرده نشدن هیچ دکمه ای مقدار 255 رو بر می گردونه.
    نحوه ی اتصال صفحه کلید به میکرو هم به صورت زیر هست .

    [img] [/img]
    در ضمن توی تابع هم یک آرایه ی دو بعدی هست که می تونی با صفحه کلیدت تطابق بدی(خوب به این ارایه و نحوه ی قرار گرفتن صفحه کلید عکس بالا نگاه کن) . اگه توجه کنی آرایه ی اول مربوط به سطر و ستون اول و آرایه ی چهارم مربوط به سطر اول و ستون چهارم است . همچنین آرایه ی پنجم مربوط به سطر دوم و ستون اول و الی اخر تا اینکه به ارایه ی آخر برسیم این ارایه هم مربوط به سطر و ستون اخر است.
    بعد از این تابع یه تاخیر 50 میلی ثانیه ای هم بذار.
    با تشکر.

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

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