اطلاعیه

Collapse
No announcement yet.

کنترل led

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

    #16
    پاسخ : کنترل led

    سلام،
    این روشی که دوستمون ahmadmn گفتند یک سبک خوب برنامه نویسیه. حتی اگر برنامه های کوچک هم به این روش بنویسید خوبه، چون عادت میکنید. ضمن اینکه برای برنامه های پیچیده تر حتما باید State diagram رسم کنید و به سبک State based کد برنامه تون پیاده سازی کنید.
    موفق باشید
    There is nothing so practical as a good theory. — Kurt Lewin, 1951

    دیدگاه


      #17
      پاسخ : کنترل led

      نوشته اصلی توسط رضا سپاس یار
      سلام،
      این روشی که دوستمون ahmadmn گفتند یک سبک خوب برنامه نویسیه. حتی اگر برنامه های کوچک هم به این روش بنویسید خوبه، چون عادت میکنید. ضمن اینکه برای برنامه های پیچیده تر حتما باید State diagram رسم کنید و به سبک State based کد برنامه تون پیاده سازی کنید.
      موفق باشید
      چطوری باید با این سبکی که میگید کار کنم؟ میشه یکم بیشتر راهنماییم کنید؟ ممنون
      The harder I work, the luckier I get

      دیدگاه


        #18
        پاسخ : کنترل led

        نوشته اصلی توسط ahmadmn


        زبان C آ‌متوجه میشی برات بزارم؟
        راستش بیسیک هم به زور میفهمیم :sad: :
        ولی شما بزارید برنامه را ,یکم ور برم شاید متوجه شم.
        ممنون :rolleyes:
        The harder I work, the luckier I get

        دیدگاه


          #19
          پاسخ : کنترل led

          سلام دوست عزیز.
          برنامه ای که نوشتی در تعیین اولویت led ها ،برای نمایش روی lcd درست عمل میکنه اما برای روشن کردن led ها چون در انتهای هر لیبلی که واسه led1 تا led4 نوشتی دستور go to main گذاشتی، این باعث میشه برنامه از main اصلی اجرا شه و متغییر b دوباره صفر شه در حالی که تغییر b نباید صفر بشه بلکه دوباره دستور getkbd اجرا شه و کد دریافتی رو چک کنه که اگر کد 15 بود بره سراغ روشن کردن led ها.

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

          دیدگاه


            #20
            پاسخ : کنترل led

            کد:
            while (1)
            {
            for(i=0;i<4;i++)
              {
               switch (led_num[i]) 
                {
                case 1:
                  led1=1;
                  delay_ms(led_time[i]);
                  led1=0;      
                break;
                case 2:
                  led2=1;
                  delay_ms(led_time[i]);
                  led2=0;      
                break;
                case 3:
                  led3=1;
                  delay_ms(led_time[i]);
                  led3=0;      
                break;
                case 4:
                  led4=1;
                  delay_ms(led_time[i]);
                  led4=0;      
                break;    
                ;{ 
              ;{
            ;{

            برنامه بسیار ساده نوشته شده. از تاخیر استفاده شده تا ساده تر بشه و شما به نتیجه برسید اما در برنامه نویسی اصولی تاخیر مجاز نیست و باید از تایمر میکرو استفاده کرد.
            ورودی برنامه تو آرایه ی چهارتاییه که یکی شماره led و دیگری زمان روشن بودن را در خود جای داده.
            پس کافیست این دو آرایه را با صفحه کلید پر کنید و به حلقه ی بالا بیایید.
            با عرض پوزش خدمت دایی های عزیزم تا اطلاع ثانوی به اینترنت دسترسی ندارم.

            دیدگاه

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