اطلاعیه

Collapse
No announcement yet.

پین خروجی ورودی

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

    پین خروجی ورودی

    با سلام
    یک سوال برام پیش اومده خواستم از شما کمک بگیرم (با تشکر)
    اگر یک پورت میکروکنترلر را در نظر بگیربم که بخشی از پین ها به صورت ورودی وخروجی (خروجی با مقدار صفر ویک) تعریف کنیم حال اگر کل پورت را با دستور X=PINX تعریف کنیم پین های که به صورت خروجی تعریف شده بودن در X چه چیز قرار می گیرد ؟
    ممنون

    #2
    پاسخ : پین خروجی ورودی

    سلام
    من که اصلا متوجه سوالت نشدم
    به صورت کلی
    با دستور pinxکه x شماره pin مورد نظر می باشد میتوانیم مقدار قرار گرفته در این رجیستر که توسط پایه وردوی در آن قرار گرفته در هر متغییر دلخواهی بریزیم
    مثلا:V=PINA.0
    که محتوایات پایه A.0 را در متغیر V قرار می دهد.(0 یا یک)
    نادانترين مردم کساني هستند که فکر مي کنند داناترين آنها هستند.

    دیدگاه


      #3
      پاسخ : پین خروجی ورودی

      دستور PINX برای پین استفاده میشه نه پورت
      و وقتی شما یک پین رو به عنوان ورودی تعریف میآ‌کنید ، مقدار اولیه اش صفر میشه.(ممکنه که حتی از مقاومت پول دان استفاده کرده باشید)

      دیدگاه


        #4
        پاسخ : پین خروجی ورودی

        ممنون از شما اما منظور من این نیست
        من میگم که اگر یه پروتی مثلا چهار پایه ان وروردی باشد وچهار پایه دیگر ان خروجی (0 یا 1) اگر کل پروت را با دستور x=PINA در کدویژن بنویسم (به عنوان دریافت ورودی) پین های خروجی در هشت بیت که در X قرار می گیرد چه چیز هست ؟
        در کل بگم که پایه ای از پورت که خروجی تعربف شود اگر کل پورت بخوانیم پایه های که خروجی تعریف شده اند با دستور ورودی چه چیزی در رجیستر ورودی ذخیره میشود.
        ممنون از وقتی که گذاتشتید.

        دیدگاه


          #5
          پاسخ : پین خروجی ورودی

          تو اون لحظه خروجی ها رو هم وردی فرض میکنه و میخونه
          شما میتونید به این روش بخونین
          کد:
          char a;
          a=0;
          if pina.0==1{a=1;}
          if pina.1==1{a=a+2;}
          if pina.2==1{a=a+4;}
          if pina.3==1{a=a+8;}
          if pina.4==1{a=a+16;}
          if pina.5==1{a=a+32;}
          if pina.6==1{a=a+64;}
          if pina.7==1{a=a+128;}
          حالا هر پین که خروجی هست رو از دستورات بالا ورش دار
          علم چندانکه بيشتر خواني چون عمل در تو نيست ناداني

          دیدگاه


            #6
            پاسخ : پین خروجی ورودی

            خیلی ممنون
            پس با توجه به گفته های شما این نتیجه رو می گیرم که پایه ای که خروجی هست با توجه به مقدارش (صفر یا یک بودنش)در رجیستر ورودی ذخیره می شه مثلا اگه خروجی با مقدار یک باشد در رجیستر ورودی این پین صفر ذخیره میشه یا یک باشه یک ذخیره میشه این طور هست ؟
            سپاس گذارم.

            دیدگاه


              #7
              پاسخ : پین خروجی ورودی

              درسته دوست من
              ادم تیطی هستی
              علم چندانکه بيشتر خواني چون عمل در تو نيست ناداني

              دیدگاه


                #8
                پاسخ : پین خروجی ورودی

                ممنون از وقتی که گذاشتید اما تیطی چیه ؟

                دیدگاه


                  #9
                  پاسخ : پین خروجی ورودی

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

                  دیدگاه

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