اطلاعیه

Collapse
No announcement yet.

برنامه یادگیری LPC 1768

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

    برنامه یادگیری LPC 1768

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

    #2
    پاسخ : برنامه یادگیری LPC 1768

    سلام من خودم arm زیاد یاد ندارم ولی فکر کنم این کارتونو راه بندازه:
    کد:
    #include "LPC17xx.H"
    
    
    void delay (unsigned long tick) {    /* Delay Function           */
    unsigned long dly = tick*300;
    	while(dly--);
    }
    int ontime = 10;
    int offtime = 9;
    int main()
    {
     	LPC_GPIO0->FIODIR = 0x1FF;    /* LEDs on PORT1 defined as Output  */
    	while (1) {
    		LPC_GPIO0->FIOSET = 0x1FF;
    		delay(ontime);
    		LPC_GPIO0->FIOCLR = 0x1FF;
    		delay(offtime);	
    	} 
    }
    فکر کنم شما LPC_[glow=red,2,300]GPIO1[/glow]->FIODIR استفاده کردید بعد اومدید از LPC_GPIO0 استفاده کردید.
    "زمان خط است نه دايره" چه ايده بدي بوده گرد ساختن ساعت. احساس ميکني هميشه فرصت تکرار است.
    ساعت دروغ ميگويد. دروغ. زمان بر گرد يک دايره نمي چرخد! زمان بر روي خطي مستقيم ميدود. و هيچگاه، هيچگاه، هيچگاه باز نميگردد.
    ساعت خوب، ساعت شني است! هر لحظه به تو يادآوري ميکند که دانه اي که افتاد ديگر باز نميگردد.
    پس بهتره يکم به ثانيه هايي که داريم فکر کنيم تا به راحتي از دستشون نديم....

    دیدگاه


      #3
      پاسخ : برنامه یادگیری LPC 1768

      ممنون کار کرد
      اما LEDیه سره روشنه
      مدت زمانی که صرف ایجاد تاپیک و منتظر پاسخ هستید را صرف سرچ کنید...

      دیدگاه


        #4
        پاسخ : برنامه یادگیری LPC 1768

        نوشته اصلی توسط NimaAryamehr
        ممنون کار کرد
        اما LEDیه سره روشنه
        خوب اف تایم رو زیاد کنید :job:
        "زمان خط است نه دايره" چه ايده بدي بوده گرد ساختن ساعت. احساس ميکني هميشه فرصت تکرار است.
        ساعت دروغ ميگويد. دروغ. زمان بر گرد يک دايره نمي چرخد! زمان بر روي خطي مستقيم ميدود. و هيچگاه، هيچگاه، هيچگاه باز نميگردد.
        ساعت خوب، ساعت شني است! هر لحظه به تو يادآوري ميکند که دانه اي که افتاد ديگر باز نميگردد.
        پس بهتره يکم به ثانيه هايي که داريم فکر کنيم تا به راحتي از دستشون نديم....

        دیدگاه


          #5
          پاسخ : برنامه یادگیری LPC 1768

          در ضمن اون اشکال هم ازون نبود چنتا برنامه نمونه هم از نت گرفتم همشون همون Voidرو مشکل میگیرن

          مقدار 9 و 10 رو هم هرچی بالا پایین کردم بازم ثابته LED فقط توی بعضی اعداد کم نور تره
          مدت زمانی که صرف ایجاد تاپیک و منتظر پاسخ هستید را صرف سرچ کنید...

          دیدگاه


            #6
            پاسخ : برنامه یادگیری LPC 1768

            نوشته اصلی توسط NimaAryamehr
            در ضمن اون اشکال هم ازون نبود چنتا برنامه نمونه هم از نت گرفتم همشون همون Voidرو مشکل میگیرن

            مقدار 9 و 10 رو هم هرچی بالا پایین کردم بازم ثابته LED فقط توی بعضی اعداد کم نور تره
            دقیقا همین void رو منم همیشه تو avr مشکل دارم نمیدونم چطوری باید ازش استفاده کرد. :angry:

            این برنامه فکر کنم برای Pwm بود
            "زمان خط است نه دايره" چه ايده بدي بوده گرد ساختن ساعت. احساس ميکني هميشه فرصت تکرار است.
            ساعت دروغ ميگويد. دروغ. زمان بر گرد يک دايره نمي چرخد! زمان بر روي خطي مستقيم ميدود. و هيچگاه، هيچگاه، هيچگاه باز نميگردد.
            ساعت خوب، ساعت شني است! هر لحظه به تو يادآوري ميکند که دانه اي که افتاد ديگر باز نميگردد.
            پس بهتره يکم به ثانيه هايي که داريم فکر کنيم تا به راحتي از دستشون نديم....

            دیدگاه


              #7
              پاسخ : برنامه یادگیری LPC 1768

              نوشته اصلی توسط NimaAryamehr
              در ضمن اون اشکال هم ازون نبود چنتا برنامه نمونه هم از نت گرفتم همشون همون Voidرو مشکل میگیرن

              مقدار 9 و 10 رو هم هرچی بالا پایین کردم بازم ثابته LED فقط توی بعضی اعداد کم نور تره
              این برنامه که دوستمون گذاشتن به نظر خیلی خلاصه هستش.
              شما پیکربندی هاتون رو واسه GPIOها انجام دادین؟ کلاک بهش دادین؟
              ولتاژ خروجی پین ها چقدره؟
              اون برنامه هایی که میگن جاهایی که کیل ایراد میگره رو بذار ببینیم چیه جریان

              نوشته اصلی توسط mo2_star
              دقیقا همین void رو منم همیشه تو avr مشکل دارم نمیدونم چطوری باید ازش استفاده کرد. :angry:

              این برنامه فکر کنم برای Pwm بود
              شما باید حداقل یه نگاه اجمالی به کتابها یا منابع آموزشی C بندازین.
              توی برنامه فوق الذکر چیزی از تایمر معلوم نیست که بخواد PWM باشه. فقط من می بینم که می خواد پینی رو high یا low کنه. مورد بعدی که من برام ابهامه اینه که پورت مورد نظر اسم لازم نداره؟ پورت A یا B یا...

              دیدگاه


                #8
                پاسخ : برنامه یادگیری LPC 1768

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

                دیدگاه


                  #9
                  پاسخ : برنامه یادگیری LPC 1768

                  هیچ وقت به تابع main دست نزنید. توی بعضی کامپایلرها این تابع یه مقدار رو برمیگردونه. شما به جای اون void که ازش ایراد گرفته همیشه باید int بذاری. پس پاکش کن و بجاش int بذار. توی پرانتز main شاید لازم باشه یه void بذارید.
                  منظور جمله دومتون رو نمی فهمم.

                  دیدگاه


                    #10
                    پاسخ : برنامه یادگیری LPC 1768

                    آقااااااااااا یک دنیا ممنون راه افتاد
                    حالا این قضیش چیه که اینطوری میشه
                    ینی همیشه به جای int,VOID بزارم؟
                    یکم ازین آموزش های ساده بزارین دیگه شما که بلدین
                    من یه هفته ست اینجارو گیر کرده بودم
                    مدت زمانی که صرف ایجاد تاپیک و منتظر پاسخ هستید را صرف سرچ کنید...

                    دیدگاه


                      #11
                      پاسخ : برنامه یادگیری LPC 1768

                      نوشته اصلی توسط NimaAryamehr
                      آقااااااااااا یک دنیا ممنون راه افتاد
                      حالا این قضیش چیه که اینطوری میشه
                      ینی همیشه به جای int,VOID بزارم؟
                      یکم ازین آموزش های ساده بزارین دیگه شما که بلدین
                      من یه هفته ست اینجارو گیر کرده بودم
                      خواهش میکنم.
                      قضیه این بود که به احتمال زیاد شما قبلا با یه کامپایلری کار میکردید که تابع main هیچی بر نمی گردونه و فکر کردید توی keil هم اینجوری. کامپایلر ها از این لحاظ با هم فرق میکنن. مثلا توی کدویژن ممکنه هیچی برنگردونه و شما همون void رو باید بذاری یکی دیگه مثل کیل باید int بذاری. اینکه چرا اینجوری مهم نیست. مهم اینه که همچین موضوعی وجود داره و شما باید رعایت کنید. توی کیل بله؛ همیشه int بذار. لزومی به آموزش نیست. شما اگه خودت هم توی نت یه برنامه ساده Blink گیر می آوردی و بررسیش میکردی متوجه این موضوع میشدی.

                      دیدگاه


                        #12
                        پاسخ : برنامه یادگیری LPC 1768

                        ممنون
                        در مورد پایه ها هم یه توضیحی بدید
                        این 0x00000001 چطوریه
                        مثلا من میخوام پین شماره 3 یا 2 یا تمام یک پورت رو یک کنم چطوریه؟
                        مدت زمانی که صرف ایجاد تاپیک و منتظر پاسخ هستید را صرف سرچ کنید...

                        دیدگاه


                          #13
                          پاسخ : برنامه یادگیری LPC 1768

                          نوشته اصلی توسط NimaAryamehr
                          ممنون
                          در مورد پایه ها هم یه توضیحی بدید
                          این 0x00000001 چطوریه
                          مثلا من میخوام پین شماره 3 یا 2 یا تمام یک پورت رو یک کنم چطوریه؟
                          با خودم فقط با ARM های محصول شرکت ST کار کردم و می کنم و با میکروی شما آشنایی ندارم ولی به نظر میرسه که دو رجیستر برای Set و Reset کردن پین ها وجود داره. یکی FIOSET که برای Set کردن پین مورد نظر استفاده میشه و یکی FIOCLR که برای پاک کردن یا Reset کردن پین مورد نظر استفاده میشه. برای جزئیات بیشتر باید به user manual مراجعه کنید. بخش GPIO
                          اگه FIOSET یا FIOCLR رو هم توی دفترچه دستی(یوزر مانوال) جستجو کنی پیداشون میکنی و دستت میاد که چطوریه.

                          دیدگاه

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