اطلاعیه

Collapse
No announcement yet.

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

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

    #16
    پاسخ : راهنمایی در نوشتن یه برنامه ساده

    سلام.نه
    من فقط بسکام بلدم
    البته دارم کدویژن را یاد می گیرم ولی هنوز در سطوح ابتدایی کدویژن هستم.
    هرچی می فهمم می فهمم که خیلی نفهمم!

    دیدگاه


      #17
      پاسخ : راهنمایی در نوشتن یه برنامه ساده

      نوشته اصلی توسط E.E.A
      سلام.نه
      من فقط بسکام بلدم
      البته دارم کدویژن را یاد می گیرم ولی هنوز در سطوح ابتدایی کدویژن هستم.
      نه نه سو تفاهم نشه منظورم مثال با توضیحش است نه مثل sample های بسکام
      منظور بنده هم همون مثال بسکامه اما توضیح کوچیک هم بدید چیکار باید بکنم؟؟ ^^
      I WORK HARDLY AND I HAVE BIG DREAMS

      دیدگاه


        #18
        پاسخ : راهنمایی در نوشتن یه برنامه ساده

        از دوستان و مهندسین کسی هست راهنمایی کنه؟؟
        I WORK HARDLY AND I HAVE BIG DREAMS

        دیدگاه


          #19
          پاسخ : راهنمایی در نوشتن یه برنامه ساده

          نوشته اصلی توسط meysamjet
          سلام و عرض ارادت خدمت مهندسین.

          بنده اطلاعات کمی راجع به زبان برنامه نویسی بسکام دارم (درحال یادگیری هستم) با کمک شما یه راهنمایی واسه یه برنامه ساده میخوام.

          شما دوشستی مثلا PD.0 و PD.1 (البته فرقی نداره) به عنوان ورودی و PC.0 و PC.1 هم به عنوان خروجی و متغیر A هم به عنوان مثلا Byte.

          اول کار من میام Aرو مقدارشو رو صفر میکنم یعنی A=0

          سپس میام با استفاده از PD.0 یه واحد به A اضافه میکنم. یعنی incr A
          وشستی PD.1 رو به عنوان کم کردن A قرار میدم یعنی decr A

          حالا میام یه شرط ساده میذارم و میگم اگر مثلا A از 10 بیشتر شد PC.0 رو 5ثانیه روشن کن و سپس خاموش شه.
          if A>10 then
          set portc.0
          wait 5
          reset portc.0
          endif

          و در ادامه میگم اگر A کوچتر از 5 شد PC.1 رو 5ثانیه روشن کن سپس خاموش کن.

          if A<5 then
          set portc.1
          wait 5
          reset portc.1
          endif

          تا اینجا در برنامه مشکلی نیست.

          مشکل از اینجاست که وقتی A>10 میشه PC.0همینطور پشت سر هم روشن و خاموش میشه در صورتی که یکبار میخوام روشن و خاموش بشه و اگر دوباره A کوچکتر از 10 شده خروجی غیر فعال و اگر دوباره افزایش پیدا کرد فقط یک بار روشن و خاموش بشه. اگر از راه DO و LOOP استفاده نکنم این پروسه فقط یکبار صورت میگیره. درصورتی که من دائما میخوام استفاده کنم دوستان هرچی بلدن لطفا به صورت برنامه نویسی قرار بدن. متشکرم
          این که کاری نداره مهندس بفرما
          تغییرات برنامه رو با رنگ قرمز مشخص کردم
          برای اینکار یه متغیر ایکس رو تعریف کردم و توسط اون به برنامه فهموندم که فقط یکبار ال ای دی رو روشن کنه تا وقتی که دوباره Aبرسه به 10 و کمتر

          dim x as integer

          do

          if A>10 and x=0 then
          set portc.0
          wait 5
          reset portc.0
          x=1
          endif

          if a<11 then x=0

          و در ادامه میگم اگر A کوچتر از 5 شد PC.1 رو 5ثانیه روشن کن سپس خاموش کن.

          در اینجا هم اگر A کوچکتر از 5 بشه ال ای دی چشمک میزنه و برای اینکه روشن و خاموش شدن ال ای دی یک بار انجام بشه متغیر Y رو میذارم

          if A<5 and y=0 then
          set portc.1
          wait 5
          reset portc.1
          y=1
          endif

          if a>4 then y=0
          loop

          دیدگاه


            #20
            پاسخ : راهنمایی در نوشتن یه برنامه ساده

            نوشته اصلی توسط saeedxs
            این که کاری نداره مهندس بفرما
            تغییرات برنامه رو با رنگ قرمز مشخص کردم
            برای اینکار یه متغیر ایکس رو تعریف کردم و توسط اون به برنامه فهموندم که فقط یکبار ال ای دی رو روشن کنه تا وقتی که دوباره Aبرسه به 10 و کمتر

            dim x as integer

            do

            if A>10 and x=0 then
            set portc.0
            wait 5
            reset portc.0
            x=1
            endif

            if a<11 then x=0

            و در ادامه میگم اگر A کوچتر از 5 شد PC.1 رو 5ثانیه روشن کن سپس خاموش کن.

            در اینجا هم اگر A کوچکتر از 5 بشه ال ای دی چشمک میزنه و برای اینکه روشن و خاموش شدن ال ای دی یک بار انجام بشه متغیر Y رو میذارم

            if A<5 and y=0 then
            set portc.1
            wait 5
            reset portc.1
            y=1
            endif

            if a>4 then y=0
            loop
            دمت گرم با این جواب کامل و بی نقصت. به این میگن جواب کامل و کوتاه و.... تشکر تشکر :-bd :-bd :-bd ^^ ^^ ^^ ^^
            I WORK HARDLY AND I HAVE BIG DREAMS

            دیدگاه


              #21
              پاسخ : راهنمایی در نوشتن یه برنامه ساده

              سلام
              Dim A As Byte
              A = 7
              B:
              Do
              If Pind.0 = 1 Then Incr A
              If Pind.1 = 1 Then Decr A
              If A > 10 Then Goto C
              If A < 5 Then Goto D
              Loop
              C:
              A = 7
              Portc.0 = 1
              Wait 5
              Portc.0 = 0
              Goto B

              D:
              A = 7
              Portc.1 = 1
              Wait 5
              Portc.1 = 0
              Goto B

              دیدگاه

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