اطلاعیه

Collapse
No announcement yet.

سوال در مورد متغیر در بسکام

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

    سوال در مورد متغیر در بسکام

    سلام..
    ببخشید میخواستم بدونم چجوری میشه حجم متغیر رو در بسکام محدود کرد؟؟؟
    مثلا بگم که یه متغیر دارم به اسم KM که از جنس باید هست...من میخوام بگم که این متغیر نباید عددش بیشتر از 8 و کمتر از 1 باشه یا مثلا هر وقت خواست از 8 به بالا بره ، یه کاری رو انجام بده؟؟چجوری میشه؟؟اصلا میشه همچین چیزی؟؟؟
    ------------------
    در ضمن چجوری میشه دستور incr یا decr رو در حلقه قرار داد؟؟به کد زیر نگاه کنید...
    کد:
    $regfile="m8def.dat"
    $crystal=1000000
    Config Portd=OUTPUT
    Dim X As Byte
    X=0
    set PORTD.X
    Do
    Incr X
    Waitms 500
    Loop
    End
    ولی هر وقت اینکارو انجام میدم ، عمل نمیکنه..نمیدونم چرا...همش X روی 0 میمونه...
    ممنون میشم جواب بدید./

    #2
    پاسخ : سوال در مورد متغیر در بسکام

    سلام
    خب برای اینکه داخل حلقه ننوشتی
    regfile="m8def.dat"
    $crystal=1000000
    Config Portd=OUTPUT
    Dim X As Byte
    X=0
    set PORTD.X
    Do
    Incr X
    Waitms 500
    if x > 8 then x=8
    if x < 1 then x=1
    set portd.x
    Loop
    امام مهدی(عج): اگر شیعیان ما ، که خداوند طاعتشان دهد. در عهد ما وفادار و همدل بودند، هرگز دیدار ما (ظهور) به تاخیر نمی افتاد.(کدام عهد ؟)

    دیدگاه


      #3
      پاسخ : سوال در مورد متغیر در بسکام

      ...........
      جدیدترین ویرایش توسط ssmq; ۲۳:۲۴ ۱۳۹۵/۰۷/۱۳.

      دیدگاه


        #4
        پاسخ : سوال در مورد متغیر در بسکام

        نوشته اصلی توسط amir4elec نمایش پست ها
        سلام..
        ببخشید میخواستم بدونم چجوری میشه حجم متغیر رو در بسکام محدود کرد؟؟؟
        مثلا بگم که یه متغیر دارم به اسم KM که از جنس باید هست...من میخوام بگم که این متغیر نباید عددش بیشتر از 8 و کمتر از 1 باشه یا مثلا هر وقت خواست از 8 به بالا بره ، یه کاری رو انجام بده؟؟چجوری میشه؟؟اصلا میشه همچین چیزی؟؟؟
        ------------------
        در ضمن چجوری میشه دستور incr یا decr رو در حلقه قرار داد؟؟به کد زیر نگاه کنید...
        کد:
        $regfile="m8def.dat"
        $crystal=1000000
        Config Portd=OUTPUT
        Dim X As Byte
        X=0
        set PORTD.X
        Do
        Incr X
        Waitms 500
        Loop
        End
        ولی هر وقت اینکارو انجام میدم ، عمل نمیکنه..نمیدونم چرا...همش X روی 0 میمونه...
        ممنون میشم جواب بدید./
        اگه می خوایی متغییر تو محدود به یه بازه کنی اینجوری عمل کن

        config portb.1=output
        dim km as byt

        km=2
        do
        incr km
        if km >8 then km=8
        if km<1 then km=1
        if km=8 then portb.1=1
        waitms 200
        loop
        .end


        دیدی که شدنیه
        هرگاه متغیرkm از1 کوچکتربشه دوباره یک میشه یعنی هیچ وقت صفررو تجربه نمی کنه
        وهرگاه از 8 بیشتر بشه دوباره 8 میشه
        فقط درلحظه اول که میکرو راه می افتد متغیر km برابر2 می شود تا دربین 1 و 8 قرارگیرد.با دستورincr افزایش ژیدا می کند تا به 8 برسد به محضی که 8 شد.portb.1 روشن می شود. وتا اخررروی هشت می ماند.
        جدیدترین ویرایش توسط Namvar14; ۲۳:۲۵ ۱۳۹۵/۰۷/۱۳.
        eshop-hodhod.ir

        دیدگاه

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