اطلاعیه

Collapse
No announcement yet.

ذخیره کردن عدد خوانده شده از پورت ورودی

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

    ذخیره کردن عدد خوانده شده از پورت ورودی

    سلام دوستان من برای یه پروإ¾إ¾إ¾إ¾إ¾إ¾إ¾إ¾إ¾إ¾إ¾إ¾إ¾إ¾إ¾إ¾إ¾إ¾إ¾إ¾إ¾إ¾إ¾إ ¾إ¾إ¾إ¾إ¾إ¾إ¾إ¾إ¾إ¾إ¾إ¾إ¾إ¾إ¾إ¾إ¾إ¾إ¾إ¾إ¾إ¾إ¾إ¾إ¾إ ¾إ¾إ¾إ¾إ¾إ¾إ¾إ¾إ¾إ¾إ¾إ¾إ¾إ¾إ¾إ¾إ¾إ¾إ¾ز مجبور ام روی پورت a عدد fe , قرار بدم و بعد یه تاخیر گذاشتم تا کلید های که روی پورت گذاشتم رو بخونه ولی مشکلی که دارم اینه که فقط همونه عدد ای رو که گذاشتم میخونه و هر چی کلید رو بزنم فایده ای نداره ؟ فکر کنم اصلا سیکل برنامه اجازه خوندن تغییرات پورت رو نمی ده و خیلی سریع همون عدد روی پورت ریخته میشه ! :surprised:
    خوب برای خوندن تغییرات پورت باید چه کار کنم ؟
    بدون امضاء

    #2
    پاسخ : ذخیره کردن عدد خوانده شده از پورت ورودی

    امیدوارم منظورت رو درست فهمیده باشم. اگه هدفت خوندنه پورت باشه اینطوری عمل کن:
    مدام اون رو در حلقه بی نهایت بریز داخل یه متغیر.
    در بسکام : X=PIND
    در سی هم دقیقا چیزی مشابه همینه.
    اگه هدف دیگه ای داری توضیحاتت رو کامل تر کن تا بیشتر بتونم کمکت کنم.
    موفق باشی
    چرا ناراحتی پاتریک!
    + امروز ی بچه دیدم سرچهارراه گل میفروخت
    - از دیدنش ناراحت شدی؟
    + نه
    پس چی ناراحتت کرده
    + اینکه دیدن اینجور بچه ها انقدر واسم عادی شده که دیگه ناراحتم نمیکنه
    ------------------------------------------------------------------------------------------------------
    تاحالا فکر کردی بیسواد کیه؟- بی سواد یعنی کسی که نمیتونه ذهنیاتش رو عملی کنه!
    ------------------------------------------------------------------------------------------------------
    محصولات

    دیدگاه


      #3
      پاسخ : ذخیره کردن عدد خوانده شده از پورت ورودی

      خیلی ممنون از راهنماییتون !!!
      من پین اول میکرو رو بردم به سر مشترک 4 تا کلید و خروجی این 4 تا کلید رو دادم به پین های 4 تا 7 میکرو
      برای خوندن میکرو ابتدا عددfe رو روی پورت گذاشتم و بعد از یه تاخیر دوباره همون پورت رو خوندم ولی هر کاری میکنم همون عدد fe رو فقط از پورت میخونه انگار که کلید ها رو اصلا نمی خونه یا اینکه سیکل میکرو خیلی سریع و اجازه خوندن عدد دیگه رو نمی ده ؟؟؟ :sad:
      بدون امضاء

      دیدگاه


        #4
        پاسخ : ذخیره کردن عدد خوانده شده از پورت ورودی

        منظورتون رو درست متوجه نشدم این عدد fe رو برای چی روی پورت می فرستید
        اگر شماتیک رو بگذارید بهتر کمک می کنه
        ولی شما برای اینکه fe رو به پورت بفرستید اول باید پورت رو خروجی کنید و بعد دیتا رو بذارید و در موقع خوندن هم اول باید پورت رو ورودی کنید بعد بلافاصله می تونید بخونید فقط بانس کلیدها و ... و البته زمانی که دقیقا کلید زده می شود رو باید در نظر بگیرید ممکنه کلید زمانی زده می شود که شما پورتتون هنوز ورودی نشه !
        اگه منظورتون رو کامل بگید شاید بیشتر بشه کمک کرد .

        دیدگاه


          #5
          پاسخ : ذخیره کردن عدد خوانده شده از پورت ورودی

          با سلام و تشکر
          من پایه اول پورت a رو خروجی و بقیه رو ورودی تعریف کردم
          عدد fe رو هم برای صفر کردن سر مشترک کلید ها رو پورت گذاشتم
          بعد از زدن هر کلید با یه عدد متناظر با اون حالت ساخت بشه و بعد هم بخونم که فقط همون عدد fe v, ld fdkl
          بدون امضاء

          دیدگاه


            #6
            پاسخ : ذخیره کردن عدد خوانده شده از پورت ورودی

            شما می تونی سر مشترک کلیدها رو مستقیم به زمین وصل کنی و نیاز نباشه که مرتب پورت رو ورودی و خروجی کنی
            وقتی داری یک پین رو ورودی تعریف می کنی این یک کردن اون دیگه بی معنی است .
            دستور خوندن پورت رو از Pina استفاده می کنید نه؟

            احتمالا دیتا یه جایی موقع ورودی و خروجی شدن گم میشه

            دیدگاه


              #7
              پاسخ : ذخیره کردن عدد خوانده شده از پورت ورودی

              خب کد برنامه بزار تا راحت تر بشه مشکلت حل کرد
              [glow=red,2,300]تاپيک هاي ايجاد شده[/glow]

              دیدگاه


                #8
                پاسخ : ذخیره کردن عدد خوانده شده از پورت ورودی

                سلام این هم عکس

                http://persiandrive.com/866703



                کد:
                 void main(void){
                    DATAPORT=0X00;
                    DATADDR=0xff;
                    DDRD=0xFF;
                    PORTD=0X00;
                    DDRA=0x01;
                    RST=1; 
                    page1();                
                    while(1){
                         PORTA=0xfe;
                         delay_ms(2);
                         reg_key=PORTA;
                         sprintf(buffer,"%d",reg_key);
                         glcd_puts(buffer,25,35,0);
                بدون امضاء

                دیدگاه


                  #9
                  پاسخ : ذخیره کردن عدد خوانده شده از پورت ورودی

                  دوستان عزیز سلام !
                  برنامه بالا فقط قسمتی هست که مشکل دارم
                  من 4 عدد کلید تعریف کردم برای 4 جهت بالا و پایین و چپ و راست که می خوام هر بار که یه کلید زده شد یه عدد خونده بشه و در ادامه برنامه بره تو صفحه های تعریف شده خودش حالا مشکل من اینه که هر چی کلید ها رو میخونم عدد یکسانی تولید میشه ؟؟؟؟؟
                  بدون امضاء

                  دیدگاه


                    #10
                    پاسخ : ذخیره کردن عدد خوانده شده از پورت ورودی

                    دستور خواندن پورت reg_key =pina صحیح است نه porta

                    دیدگاه

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