اطلاعیه

Collapse
No announcement yet.

سوال ساده در مورد atmel studio

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

    سوال ساده در مورد atmel studio

    با سلام.
    ببخشید در code vision برای اینکه مثلا پایه دوم پورت B را خروجی کنیم میتونیم بنویسیم DDRB.3=1 .
    ولی در atmel studio این جور نوشتن رو خطا میگیره.
    میخواستم ببینم کلا atmel studio این قابلیت رو نداره یا اینکه باید به شکل دیگه ای بنویسیم؟؟؟؟

    با تشکر.

    #2
    پاسخ : سوال ساده در مورد atmel studio

    نوشته اصلی توسط saati.sms نمایش پست ها
    با سلام.
    ببخشید در code vision برای اینکه مثلا پایه دوم پورت B را خروجی کنیم میتونیم بنویسیم DDRB.3=1 .
    ولی در atmel studio این جور نوشتن رو خطا میگیره.
    میخواستم ببینم کلا atmel studio این قابلیت رو نداره یا اینکه باید به شکل دیگه ای بنویسیم؟؟؟؟

    با تشکر.
    سلام
    اصولا به خاطر یه همچین امکاناتیه که یه عده دوست دارن از کدویژن استفاده کنن. برای اینکه مثلا پین 3 از پورت B رو خروجی کنیم، باید به شکل زیر این کار رو انجام بدیم:

    DDRB |= (1<<3);

    اگر منظورمون 2 یا تعداد بیشتری پین بود، به شکل زیر مینویسیم:

    DDRB |= (1<<3) | (1<<2) | (1<<1);

    برای اینکه بخواییم پینی مثل شماره 3 که قبلا خروجی بوده، ورودی کنیم، میتونیم از قطعه کد زیر استفاده کنیم:

    DDRB &= ~(1<<3);

    و برای چندتا پین:

    DDRB &= ~((1<<3) | (1<<2) | (1<<1));

    برای هر رجیستر دیگه ای هم میشه از این روش استفاده کرد

    دیدگاه


      #3
      پاسخ : سوال ساده در مورد atmel studio

      نوشته اصلی توسط saati.sms نمایش پست ها
      با سلام.
      ببخشید در code vision برای اینکه مثلا پایه دوم پورت B را خروجی کنیم میتونیم بنویسیم DDRB.3=1 .
      ولی در atmel studio این جور نوشتن رو خطا میگیره.
      میخواستم ببینم کلا atmel studio این قابلیت رو نداره یا اینکه باید به شکل دیگه ای بنویسیم؟؟؟؟

      با تشکر.
      بخشید که فضولی می کنم ولی فکر کنم اصولی ترش این باشه که اینطوری بنویسیم مثلا پایه ۱ پورت B رو میخوایم خروجی بشه :
      کد:
      DDRB=(1<<DDB0)
      اسامی این بیت ها تو دیتاشیت هست

      دیدگاه


        #4
        پاسخ : سوال ساده در مورد atmel studio

        نوشته اصلی توسط test001 نمایش پست ها
        بخشید که فضولی می کنم ولی فکر کنم اصولی ترش این باشه که اینطوری بنویسیم مثلا پایه ۱ پورت B رو میخوایم خروجی بشه :
        کد:
        DDRB=(1<<DDB0)
        اسامی این بیت ها تو دیتاشیت هست
        اصولی که نمیشه گفت ولی شما هرجور راحتی بنویس. اما از اونجایی که برای رجیسترهای واحد های دیگه، هربیت یه اسمی داره، سعی کنید حتما از اسم اون بیت استفاده کنید تا هم خوانایی بیشتر بشه، هم خطا کمتر. اما برای رجیسترهای پورت های ورودی خروجی، نظر شخصی من اینه که مستقیما عدد بذاریم خوانایی بهتره! البته نظر شخصیه و شما هر کاری دلت خواست میتونی بکنی

        دیدگاه


          #5
          پاسخ : سوال ساده در مورد atmel studio

          یا حتی میتونی باینری یا هگز بنویسی! DDRB = 0b00000001
          .






          امیرحسین ضیا

          دیدگاه

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