اطلاعیه

Collapse
No announcement yet.

درمورد برنامه نویسی

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

    درمورد برنامه نویسی

    سلام خدمت مهندسین گرامی
    من میخوام هم زمان به یکی از پورتهای میکرو ۶ تا ولتاژ اعمال کنم، و به ازای بزرگتر بودن هر کدام نسبت ب بقیه ولتاژ ها پورت مربوط به اون توی خروجی فعال بشه، به عنوان مثال من این دستور رو وارد میکنم ولی کامپایل نمیشه لطفا راهنماییم کنید، ممنون...
    if PORTA.0 > PORTA.3 , PORTA.4 then
    PORTB.2 = 1

    #2
    پاسخ : درمورد برنامه نویسی

    سلام
    این کدو واسه بسکام نوشتین؟؟
    من بسکام کار نکردم ولی اگه قراره ولتاژی که میدین متغییر باشه مثلا 3.5 یا 2.5 یا....بهتره که به واحد adc بدید و مقدار adc رو مقایسه کنید و واسه ولتاژ دلخواهتون خروجی بنویسید
    موفق باشید
    Proudly @real_ahmadi
    #real_ahmadi

    واسه اسمت بجنگ

    دیدگاه


      #3
      پاسخ : درمورد برنامه نویسی

      اره بسکامه، حقیقتش اطلاعاتم از میکرو در حد مبتدیه
      لطفا اگه میشه واضح تر توضیح بدین.

      دیدگاه


        #4
        پاسخ : درمورد برنامه نویسی

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

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

        دیدگاه


          #5
          پاسخ : درمورد برنامه نویسی

          یه ضرب المثلی هست که میگه قبل از شروع قطع درخت، اول تبرت رو تیز کن، اینطوری وقت و انرژی کمتری ازت میگیره.
          بنظر میرسه شما اصلا تفاوتی بین سیگنال آنالوگ و دیجیتال قائل نیستید. اینطوری خیلی اذیت میشید تا کار رو انجام بدین. ابتدا کمی راجع به پورتهای دیجیتال و آنالوگ و واحد ADC میکرو مطالعه کنید.

          دیدگاه


            #6
            پاسخ : درمورد برنامه نویسی

            آقای عاشوری من در مورد adc مطالعه کردم و فهمیدم چطور کار میکنه، منتها توی برنامه وقتی تعریف میکنم مثلا پورت A.0 اگه از پورت A.4 بزرگتر باشه حالا خورجی دلخواهو نشون بده، و درسته کامپایل هم میشه، ولی وقتی تعریف میکنم پورت A.0 همزمان از A.4 و A.5 بزرگتر باشه خروجیمو نشون بده ارور میاد، لطفا خط برنامه ای ک توی تاپیک اولم نوشتم رو ببینید، اگه لطف کنید و دستور درست رو بهم بگید ممنونتون میشم

            دیدگاه


              #7
              پاسخ : درمورد برنامه نویسی

              درود ، از نظر اصول برنامه نویسی ، شروط باید مجزا بررسی بشه . باید در کمان شرط ، دو شرط «بزرگتر از» رو باهم and کنید . به اینصورت

              IF A>B AND A>C THEN
              بهتر هست مقادیر رو در متغیر بریزید و بعد شرط کنید ، مستقیما خود پین رو ذکر نکنید .

              دیدگاه


                #8
                پاسخ : درمورد برنامه نویسی

                کاش بهم دقیق بگید چیکار باید بکنم و از چه دستوراتی استفاده کنم، واقعا شرمندم اقای مهندس :(

                دیدگاه


                  #9
                  پاسخ : درمورد برنامه نویسی

                  من چند سالی میشه بسکام کار نکردم فراموش کردم . لطفاً بعد از توضیح من لینک مرجع رو حتما مطالعه کنید . چون نیاز به دستور تعریف adc داره
                  A=Getadc(0)
                  B=Getadc(1)
                  C=Getadc(2)

                  IF A>B and A>C THEN
                  ...

                  دیدگاه

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