اطلاعیه

Collapse
No announcement yet.

خواندن فقط 4بیت

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

    خواندن فقط 4بیت

    سلام

    دوستان من 4بیت دارم و به پایه های D0-D3 متصل شده ؛ حالا پایه های D5-D7 هم برای کارای دیگه هست ؛ می خوام فقط 4بیت اول(D0-D3) رو چک کنم که بصورت ده دهی چه عددی بهم میده و با دستوراتی مثل SELECT-CASE می خوام چک کنم ، حالا چطوری می تونم این کارو انجامش بدم .

    با تشکر...
    وقتی گریبان عدم با دست خلقت می درید/وقتی ابد چشم تو را پیش از ازل می آفرید/وقتی زمین ناز تو را در آسمانها می کشید/وقتی عطش طعم تو را با اشکهایم می چشید/من عاشق چشمت شدم ، نه عقل بود و نه دلی/چیزی نمی دانم از این دیوانگی و عاقلی/یک آن شد این عاشق شدن ، دنیا همان یک لحظه بود/آن دم که چشمانت مرا از عمق چشمانت ربود/وقتی که من عاشق شدم شیطان به نامم سجده کرد/آدم زمینی تر شد و عالم به آدم سجده کرد /بودم و چشمان تو ، نه آتشی و نه گلی/چیزی نمی دانم از این دیوانگی و عاقلی/.

    #2
    پاسخ : خواندن فقط 4بیت

    خوب فکر کنم مقدار پورت رو کامل بخونی و مثلا با یه 0xF0 یا برعکس (بستگی به پین هایی داره که می خواهید بخونید ) 0x0F اون رو and می کنید این طوری شما فقط 4 بیتی رو دارید که می خواستید سپس اگر نیاز بود یه شیفت 4 تایی به سمت راست هم می زنید به این ترتیب شما عدد مورد نظر رو دارید .
    - به دنبال فرصت عمری تباه کردم ! فرصت جوانی ام بود من اشتباه کردم .

    دیدگاه


      #3
      پاسخ : خواندن فقط 4بیت

      نوشته اصلی توسط mania59
      خوب فکر کنم مقدار پورت رو کامل بخونی و مثلا با یه 0xF0 یا برعکس (بستگی به پین هایی داره که می خواهید بخونید ) 0x0F اون رو and می کنید این طوری شما فقط 4 بیتی رو دارید که می خواستید سپس اگر نیاز بود یه شیفت 4 تایی به سمت راست هم می زنید به این ترتیب شما عدد مورد نظر رو دارید .
      مهندس گرام امکانش هست یه مثال با بسکام بزنی؟؟؟

      پورت D از 0تا 3 رو به عنوان 4بیت ورودی دارم
      D5 به عنوان DTMFOUT که تون های شماره گیری رو تولید میکنه
      D6 , D7 به عنوان خروجی و D4 به عنوان ورودی 1بیت هست ؛ حالا می خوام از D0 تا D4 رو بخونم و باهاشون به عنوان DTMF IN شماره ی مورد نظر رو بدست بیارم .
      وقتی گریبان عدم با دست خلقت می درید/وقتی ابد چشم تو را پیش از ازل می آفرید/وقتی زمین ناز تو را در آسمانها می کشید/وقتی عطش طعم تو را با اشکهایم می چشید/من عاشق چشمت شدم ، نه عقل بود و نه دلی/چیزی نمی دانم از این دیوانگی و عاقلی/یک آن شد این عاشق شدن ، دنیا همان یک لحظه بود/آن دم که چشمانت مرا از عمق چشمانت ربود/وقتی که من عاشق شدم شیطان به نامم سجده کرد/آدم زمینی تر شد و عالم به آدم سجده کرد /بودم و چشمان تو ، نه آتشی و نه گلی/چیزی نمی دانم از این دیوانگی و عاقلی/.

      دیدگاه


        #4
        پاسخ : خواندن فقط 4بیت

        با بسکام که نه .
        ولی با C :

        کد:
        	unsigned char Data = PORTD;
        	Data = Data & 0x0F;
        بعد از این دستور مقدار عددی Data میشه مقدار عددی گرفته شده از پین های 0 تا 3 پورت D

        - به دنبال فرصت عمری تباه کردم ! فرصت جوانی ام بود من اشتباه کردم .

        دیدگاه

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